Установка ПО из ebuild для Calculate/Gentoo
Продолжаю изучать Calculate. Одним из решений «проблемы» нехватки ПО в репозиториях являются сторонние ebuild’ы. Каких-либо инструкций по низкоуровневой компиляции пакетов я не видел. В сети разве что общая инструкция (ниже) и ветки на форумах, посвящённые ошибкам. Для меня это тема началась с видео по сборке из исходников для Gentoo, где автор и показал сей процесс, а дальше стал копать маленько.
Введение
Репозиторий ebuild-файлов, в просторечии известный как overlay, — это структура файлов и каталогов, используемая для добавления и дополнения пакетов программ в системах на основе Gentoo. Такие репозитории содержат ebuild-, eclasses и другие подобные описательные файлы. Эти файлы информируют пакетный менеджер о доступном для установки ПО. Репозиторий должен соответствовать одному или более EbuildAPI, как указано в спецификации пакетного менеджера Gentoo.
Overlays — это дополнительные репозитории, дающие возможность установки приложений, которых нет в родных репах. В сети находил сторонние, кто-то пишет для себя, а позже делится ссылками для всех. Насколько я понял, нет какого одного файла/папки, где хранится весь список подключенных. Общая справка с командами и ключами по LAYMAN — утилита для управления оверлеями Gentoo — находится тут. А по команде ниже выводится список подключенных репозиториев
В комментариях оставлял инструкцию, как собирать и устанавливать программы из ebuild, но кратко, вынесу в отдельный материал, тем более, что мне попалась статья с сайта old.calculate-linux.org (есть вариант современнее), где шаги расписаны подробнее и дополнительная информация.
Установка дополнительного ПО
Операции с файлами провожу по пути /usr/local/portage/app-editors/. Создал путь командой
sudo mkdir /usr/local/portage/app-editors/
Далее, перейти по этому пути командой cd, она целиком записана у меня в алиасах файла .bashrc, а директория выглядит так, для каждой программы своя папка.
Основные операции и команды
Потом та инструкция, про которую говорил в начале, описание ebuild с командами находится тут. Находясь в папке /usr/local/portage/app-editors/
sudo mkdir имя_программы cd имя_программы sudo wget (скачает ebuild-файл, командой ls убедится в успешной загрузке) sudo ebuild имя.ebuild digest (создаёт манифест в папке, проверить командой ls) sudo ebuild имя.ebuild unpack (распаковка исходных кодов) sudo ebuild имя.ebuild compile (компиляция исходных кодов) sudo ebuild имя.ebuild install (установка во временное хранилище) sudo ebuild имя.ebuild qmerge (перенос в рабочую ОС) sudo ebuild имя.ebuild clean (очищает временное хранилище)
Если нет красных текстов и сообщений об ошибках, операция прошла успешно, то после этого пакет будет установлен и программа появится в меню. Но сталкивался с тем, операция проходила успешно, но ПО всё равно отсутствует в меню … Найдётся в терминале командой (поиск происходит по частичному совпадению)_
emerge --search название программы
Удаляется он так же, как и другие (для точного наименования найти его командой выше)
По ошибкам
Не всегда программы устанавливаются успешно. Ключевыми этапами являются процессы распаковки и компиляции, именно компиляция вызывает ошибок больше других.
Как написано, тут помогает запрос с ключом clean (последняя команда в списке), но не всегда.
На форуме дистрибутива нашёл такую ветку, тут описано, где искать логи по ошибкам. Несмотря на все перечисленные выше сложности, всё-таки несколько программу меня установлены и вполне успешно функционируют. Был такой случай, что установил программу, а позже она была пострадала от автоматической очистки от мусора. К сожалению, установить повторно её не получилось пока. Если с каким-то ebuild не складывается, то качаю другой.
Подытожим
Сторонние сборочные сценарии не являются полноценным аналогом AUR или MPR, потому что установка оных — лотерея. Скорее всего, часть ошибок решаема, но для рядового пользователя проще накатить какие-нибудь flatpak’и или вовсе скачать архив. Лучше, конечно, устанавливать силами портежа, по возможности.
Сейчас есть несколько сайтов, которые занимаются распространением этих сборочных сценариев. Я использую gpo.zugaina.org, как самый известный, встречал его и на форуме кальки. Видел ещё парочку, но проблематично их найти в поисковиках. Нашёл подобные каталоги на сайте Gentoo, на github и на gitlab, видел ещё, но не сохранил ссылки тогда.
В поисковике встретил gpo-zugaina-dl и в репозитории автора есть gpo-zugaina-downloader. Не ознакомлялся.
Calculate Linux или Gentoo для новичков
Ни для кого не секрет, что моим любимым Linux-дистрибутивом является Linux Mint, основанный на Ubuntu. Тем не менее, просидев на нем год, я все же решил перейти на что-то более серьезное, с чем можно покопаться, ведь в Минте все работает «из коробки», и в основном без проблем, а если и появляются проблемы, то небольшие и легко решаемые. Мой выбор пал на Gentoo, но собирать ее вручную у меня не было ни времени, ни особого желания. Поэтому было решено установить отечественный дистрибутив Calculate Linux.
Calculate Linux — что же это?
Как я уже сказал, Calculate Linux — это отечественный Linux-дистрибутив, основанный на Gentoo. То есть это та же Gentoo, только уже собранная за вас. Подробнее о системе можно узнать на официальном сайте Calculate Linux. Имеется LiveDVD для возможности опробовать систему в действии, и при желании сразу же установить. Также в последних версиях присутствует GUI-установщик для установки системы через графический интерфейс, но лично мне было проще установить систему через консоль, с GUI-инсталлятором я как-то не подружился.
Предисловие
Если вы решили перейти на Gentoo, приготовьтесь к тому, что это не Ubuntu, в которой все делается в 2 клика. Gentoo — система, в которой упор делается на то, что система настраивается по своему вкусу, программы собираются под свои требования, ничего лишнего. Мышью здесь придется тыкать крайне редко, больше пользоваться консолью. Собирать программы придется из исходников, а не устанавливать готовые .deb или .rpm пакеты. Не удивляйтесь, если что-то будет изначально работать не так, как хотелось бы. Если же вы не готовы к тому, чтобы копаться в системе, и вам нужна кнопка «сделать все зашибись», Gentoo — это не то, что вам нужно, и на этом чтение статьи можно прекратить =) Если все это вас не пугает и не расстраивает, добро пожаловать в мир Gentoo, можете продолжить чтение =)
Установка
Для установки потребуется iso-образ дистрибутива, скачать который можно с официального сайта. Существует несколько способов его установки, для себя я выбрал привычный способ — установки с USB-Flash. Правда образ диска пришлось записать через виндовый Unetbootin, после линуксового он почему-то не не хотел загружаться. Систему я выбрал 32-битную (т.к. сначала поставив 64-битную, понял, что с 32-битной проблем меньше), GNOME-редакцию. Загрузившись с LiveDVD, принялся за установку системы, чем сейчас и займемся мы с вами. Открываем консоль, пишем:
Пароль по умолчанию «root».
Смотрим наши разделы:
Если хотите сделать переразметку, можете воспользоваться специальной утилитой (на рабочем столе). Я закрыл себе все пути к отступлению, поставив Gentoo поверх существующего Linux Mint, чтобы не было соблазна вернуться, если вдруг не справлюсь с новой для себя системой. Итак, установил я Gentoo на раздел /dev/sda5 , swap кинул на /dev/sda8 :
cl-install --disk=/dev/sda5 --swap=/dev/sda8 --lang=ru_RU --host=del-laptop
Очевидно, что параметр —lang задает локализацию системы, —host — устанавливает хост, по умолчанию (без указания в параметре) он будет «calculate».
Жмем Enter, соглашаемся на установку, задаем пароль рута при запросе, ждем окончания установки, затем пишем:
Первоначальная настройка
После перезагрузки вынимаем флешку/диск, загружаемся с установленной системы. Перед нами одна учетная запись — guest. Заходим в нее, пароль «guest». Открываем консоль, чтобы создать нового пользователя, пишем:
su
useradd --groups users,wheel,audio,cdrom,video,cdrw,usb,plugdev,games,lp,scanner,uucp login
Теперь о параметрах: мы добавляем пользователя в следующие группы:
users — доступ к Wicd network manager;
wheel — возможность получить привилегии суперпользователя используя команду su;
audio — предоставляет доступ к звуковой карте;
cdrom — доступ к CD/DVD приводу;
video — доступ к TV-тюнеру;
cdrw — запись на CD/DVD-диски;
usb — доступ к mp3-плеерам, флеш-накопителям, доступ к USB в VirtualBox;
plugdev — монтирование USB-устройств;
games — доступ к играм;
scanner — доступ к сканеру;
lp — доступ к сканеру, встроенному в МФУ;
uucp — доступ к модему.
Последний параметр — login — замените на логин создаваемого пользователя.
Теперь зададим этого пользователю пароль:
Где login — все тот же параметр, что был указан выше.
Завершаем сеанс, переходим в созданного пользователя, снова идем в консоль, удаляем учетную запись гостя, она нам больше не понадобится:
Первоначальные настройки мы произвели. Перейдем к более тонкой настройке системы.
Настройка системы
— Настройки времени
Для начала обратите внимание на системное время. Если часы показывают неверное время, щелкните по апплету «Часы» левой кнопкой мыши, раскройте пункт «Местности», нажмите «Изменить», выберите свой регион и часовой пояс. После чего ниже раздела «Местности» (под календарем), справа от региона нажмите правую кнопку мыши и нажмите «Установить».
— Настройки шрифтов
Шрифты в Calculate Linux по умолчанию лично мой глаз не порадовали, поэтому я решил установить шрифты Ubuntu Font Family. Шрифты нужно распаковать и поместить в директорию ~/.fonts , затем зайти в «Параметры внешнего вида» (правой кнопкой мыши по рабочему столу, пункт «Изменить фон рабочего стола»), перейти на вкладку «Шрифты», указать все шрифты Ubuntu, размер 10. Моноширинного (последнего в списке) шрифта нет, поэтому можно оставить по умолчанию — Droid Sans Mono. Далее выбираем «Подробнее» и указываем «Уточнение» — «Слабое». В программах шрифты изменятся после их перезапуска.
Теперь, когда нам приятно работать с системой, можно приступить к установке необходимых программ.
Установка программ
Программы в gentoo устанавливаются через систему портежей (portage). Перед установкой программ их следует обновить:
Утилита обновит дерево портежей, оверлей Calculate, а затем синхронизирует свой локальный кэш, используемый при поиске программ. Обновлять дерево портежей следует не чаще 1 раза в день (если будете синхронизироваться чаще, могут добавить во временный черный список).
Для поиска нужной программы можно воспользоваться утилитой emerge. Например, для поиска firefox наберите:
Но такой поиск производится медленно, поэтому можно воспользоваться утилитой eix:
В первом случае поиск идет по названию, во втором — по описанию.
Для установки программы можно воспользоваться утилитой emerge (подробнее об использовании emerge можно прочесть здесь):
USE=linguas_ru emerge firefox
USE=kde emerge krusader
В примере устанавливаются firefox и krusader. Для первого указываем USE-флаг локализации, для второго необходимо указать USE-флаг «kde», т.к. собираем мы его в среде GNOME, а krusader использует библиотеки kde. Для того, чтобы перед установкой программы выдавался запрос подтверждения, используется параметр -a , а для того, чтобы увидеть USE-флаги для программы, параметр -v . Таким образом команда примет вид:
Удалить приведенный в примере firefox можно так:
Найти какую-либо программу, а также посмотреть ее описание можно на сайте Calculate Linux, выбрав в области поиска «Пакеты».
Итак, нужные программы мы теперь собрать сможем.
На этом пока все =) Но на этом статьи про Gentoo, и в частности Calculate, не заканчиваются, так что если есть какие-то вопросы, задавайте, будем вместе разбираться, ведь я в Gentoo новичок 😉
Комментарии
# — pasha1112 , 01.03.2011 в 20:45
поставил на виртуалку, пока разбираюсь с системой, могу сказать одно — шустрая, работает быстрее убунты (хотя это субъективно). С системой портежей пока не удобно, но то привычка. а так все супер
Очень впечатляет работа с USB, быстро и легко работает на моем нетбуке и прикрутились к нему все драйвера.
Сама работа этой ОС впечатляет быстро и безукоризненно.
P.S. После долгих поисков, какой Linux дистрибутив лучше установить, я скорее всего нашел!!
Добавлю также еще один момент: если у вас в дуалбуте установлена еще и Windows, без которой вы жить не можете, то в загрузчике она по умолчанию отражаться не будет. Решается это довольно просто:
И в конце файла нужно раскомментировать 3 строчки:
# Uncomment if you have Windows on hard disk
title Microsoft Windows
rootnoverify (hd0,0)
chainloader +1
# — villy999 , 19.07.2011 в 14:18 , в ответ на комментарий
раскомментировать 3 строчки:- Это как?
# — villy999 , 19.07.2011 в 16:11 , в ответ на комментарий