- Установка ПО из ebuild для Calculate/Gentoo
- Введение
- Установка дополнительного ПО
- По ошибкам
- Подытожим
- Поставить NVIDIA драйвер на Calculate
- Ivan Bulychev: блог с буквой Ё.
- Шпаргалка: что делать после установки Calculate Linux (CLDX 14.16.2)
- Удаление неиспользуемых языков
- Как в Calculate Linux размаскировать и установить свежайшую версию Firefox (как пример)
- Как удалить программу и почистить систему от её зависимостей
- Как заставить работать Broadcom Wifi BCM4311 в Dell Inspiron 1525 на Calculate Linux (Gentoo)
- Как обновить/изменить состав дистрибутива Calculate Linux на флешке, используя режим Builder
Установка ПО из 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. Не ознакомлялся.
Поставить NVIDIA драйвер на Calculate
При перезагрузке черный экран. После этого пробовал еще так:
eselect opengl set nvidia eselect opencl set nvidia nvidia-xconfig
Вот Xorg.conf (который получился после запуска nvidia-xconfig):
# nvidia-xconfig: X configuration file generated by nvidia-xconfig # nvidia-xconfig: version 358.16 (buildmeister@swio-display-x64-rhel04-12) Mon Nov 16 19:59:11 PST 2015 #------------------------------------------------------------------------------ # Modified Calculate-core 3.4.5.22 # Processed template files: # /var/lib/layman/calculate/profiles/templates/3.3/3_ac_install_live/1-merge/x11-base/xorg-server/X11/xorg.conf # For modify this file, create /etc/X11/xorg.conf.clt template. #------------------------------------------------------------------------------ Section "ServerLayout" Identifier "Xorg Configured" Screen "Monitor" 0 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" EndSection Section "Files" FontPath "/usr/share/fonts/corefonts" FontPath "/usr/share/fonts/misc" FontPath "/usr/share/fonts/droid" EndSection Section "Module" Load "dbe" # Double buffer extension Load "glx" # OpenGL X protocol interface Load "extmod" # Misc. required extension EndSection Section "InputDevice" # generated from default Identifier "Keyboard0" Driver "keyboard" EndSection Section "InputDevice" # generated from data in "/etc/conf.d/gpm" Identifier "Mouse0" Driver "mouse" Option "Protocol" "IMPS/2" Option "Device" "/dev/psaux" Option "Emulate3Buttons" "no" Option "ZAxisMapping" "4 5" EndSection Section "Monitor" Identifier "StandardMonitor" HorizSync 31.5 - 60.0 VertRefresh 60.0 - 160.0 Option "DPMS" EndSection Section "Device" Identifier "nvidiaVGA" Driver "nvidia" EndSection Section "Screen" Identifier "Monitor" Device "nvidiaVGA" Monitor "StandardMonitor" DefaultDepth 24 Option "RenderAccel" "True" Option "AllowGLXWithComposite" "True" Option "NoLogo" "True" Option "NvAgp" "1" Option "DPI" "96x96" SubSection "Display" Viewport 0 0 Depth 24 Modes "3840x1080" EndSubSection EndSection Section "Extensions" Option "Composite" "On" EndSection
lspci -k | grep -A 2 -E "(VGA|3D)" 130 ↵ 01:00.0 VGA compatible controller: NVIDIA Corporation GF104 [GeForce GTX 460] (rev a1) Subsystem: ASUSTeK Computer Inc. Device 835d Kernel driver in use: nvidia
Последний вывод я взял из Arch, который стоит параллельно и в котором Nvidia драйвера работают.
Ivan Bulychev: блог с буквой Ё.
Шпаргалка:
что делать после установки Calculate Linux (CLDX 14.16.2)
Поскольку дистрибутив постоянно активно развивается, обязательно смотрите обновлённую документацию на сайте проекта calculate-linux.org!
- зайти в режим суперпользователя
$ su - конечно же обновить портежи и всё остальное
# eix-sync( # cl-update —sync-only
Если у вас подключены сторонние оверлеи, то нужно также указать опцию «—update-other» («-o»):
# cl-update —sync-only —update-other - для корректного обновления (из ISO образа, в частности) всегда используйте последнюю доступную версию пакета calculate-install. Чтобы обновить программу, выполните:
# cl-update -s && emerge calculate-utils - обновить все программы
# emerge -uDNa world - не понятно мне, почему это не делается автоматически, но обычно надо и настройки обновить («u» для подтверждения)
# dispatch-conf
Вы также можете использовать автозамену настроек конфигурационных файлов программ при установке значения переменной cl_autoupdate_set в файле /etc/calculate/calculate.env:
# nano /etc/calculate/calculate.env
Найти и изменить значение на «on»:
[main]
cl_autoupdate_set = on - установить тему оформления Xubuntu — greybird
# emerge -bk greybird
Параметры -bk создают локальный архив скомпилированного пакета, а при его наличии программа устанавливается из этого архива, минуя стадию компиляции. - настроить панели и тему оформления (оформление окон сменить, значки оставить)
Удаление неиспользуемых языков
Calculate Linux собирается с поддержкой нескольких языков. Тем не менее после установки системы в переменной LINGUAS файла /etc/make.conf можно оставить только нужный язык или языки.
# nano /etc/make.conf
раскомментировать или добавить строку
LINGUAS=»en ru»
Для удаления из системы неиспользуемых языковых файлов потребуется обновление, которое будет заключаться в пересборке большого количества пакетов. Обратите внимание, что, если вы переопределите данную переменную в /etc/make.conf, все затронутые бинарные пакеты отныне всегда будут компилироваться.
Как в Calculate Linux размаскировать и установить свежайшую версию Firefox (как пример)
Обновляем дерево портежей и оверлей:
# eix-sync
Поиск программ (если надо найти имя программы) и всех доступных версий:
# eix firefox
Удостоверьтесь, что директория /etc/portage/package.keywords/ не пустая, иначе выполните:
# touch /etc/portage/package./custom
Выполните размаскировку:
Вариант первый, конкретную версию (7.0.1) Firefox из исходников:
# emerge —autounmask-write =www-client/firefox-7.0.1-r1
Вариант второй, все нестабильные версии (читай актуальные релизы) Firefox (бинарную версию) для x86:
# echo www-client/firefox-bin ~x86 >>/etc/portage/package.keywords/custom
. или для x64:
# echo www-client/firefox-bin ~amd64 >>/etc/portage/package.keywords/custom
Обновите настройки («u» для подтверждения):
# dispatch-conf
Установите программу:
# emerge firefox-bin
Как удалить программу и почистить систему от её зависимостей
# emerge -C gnumeric
При этом все зависимые пакеты останутся в системе. Для удаления зависимостей, выполните:
# emerge -ac
При выполнении этой команды сформируется дерево пакетов исходя из списка в world-файле, с включением зависимостей и, в случае наличия в системе установленных и не связанных пакетов, будет предложено их удалить
Как заставить работать Broadcom Wifi BCM4311 в Dell Inspiron 1525 на Calculate Linux (Gentoo)
Всё работает по-дефолту. Проверил 23.07.2015 (stage образ от 20.07.2015). Эта команда размаскирует нужный ~x86 пакет # emerge —autounmask-write b43-firmware
Как обновить/изменить состав дистрибутива Calculate Linux на флешке, используя режим Builder
1. Загрузите компьютер, выбрав загрузку с флешки, и выберите в меню загрузки режим Builder
2. Выполните в терминале команду
# cl-builder
3. Убедившись, что курсор изменил цвет, обновите дерево портежей, выполнив
# cl-update —sync-only
или просто обновите систему
# cl-update
установите нужные программы
# emerge XXX
4. Выйдите из chroot, набрав exit или нажав Ctrl+D
5. Обновите livecd.squashfs файл, выполнив:
# cl-image squash
Если использовать команду # cl-image iso , то результат будет сохранён в ISO в директории /var/calculate/linux, которую можно предварительно примонтировать отдельно: mount /dev/sdaX /var/calculate
Возможно, не хватит оперативной памяти, тогда тоже надо сделать указаный выше совет.
Можно указать дефолтную локаль и таймзону:
# cl-image —lang=ru_RU —timezone=»Europe/Amsterdam» —keep-tree squash