Antergos и управление пакетами: репозитории

Antergos и управление пакетами: репозитории

Кастомизация Antergos’а ради превращения его в Cinant — в значительной мере установка необходимых утилиты и приложений, и удаление ненужных. То есть первый шаг на пути кастомизации — освоение системы пакетного менеджмента, свойственного Arch’у и всем Arch’оидам. А поскольку пакеты эти, как и во всех современных дистрибутивах, хранятся в репозиториях, надо начать с нескольких слов о них.

Во всех Arch’оидах используются репозитории двух ветвей — официальной и «пользовательской» (так называемый AUR — Arch User Repository). Первая включает несколько разделов — core (базовая система), extra (Иксы, распространённые WM’ы и DE, офисные пакеты etc.), community (пакеты, востребованные сообществом и поддерживаемые доверенным его участниками), multilib (библиотеки совместимости с 32-битным софтом) и несколько тестовых.

В Antergos’е к репозиториям, общим для всего семейства Arch’оидов, присоединяется ещё и собственный одноимённый раздел, хотя и небольшой. В основном он содержит дистро-специфические утилиты (например, инсталлятор Chchi), собственные модификации обще-Arch’евских (таких, как пакетный менджер Pamac) или общеизвестных пакетов (вроде средств поддержки файловой системы ZFS). Кроме того, немало внимания в нём уделяется темам оформления, в том числе связанных с проектом Numix.

Все пакеты официальной ветки, общим числом (на данный момент) почти 11 тысяч — бинарные, распространяются в виде архивов tar.xz. Для работы с ними предназначена утилита pacman, о которой будет говориться в следующем очерке.

Номенклатура AUR’а включает более 53 тысяч пакетов, сваленных в «одну кучу», рез разбиения на разделы. Это не бинарники, а скорее порты (так называемые PKGBUILD‘ы) — сценарии для сборки бинарников из исходных текстов с последующей их установкой, подобные портам FreeBSD или CRUX’а, ebuild‘ам Gentoo и прочим портообразным системам. Кроме того, среди PKGBUILD‘ов есть сценарии для скачивания и установки бесплатных, но не свободных программ, распространяемых только в бинарном виде, таких, как браузеры Opera и Vivaldi, текстовый редактор Sublime Text, «картографический браузер» Google Earth etc.

Для эффективного использования AUR’а важно понимать принципы его комплектации. Пакеты официальной ветки собираются, тестируются и сопровождаются участниками проекта и так называемыми «доверенными пользователями» (Trusted Users). Сценарии же для AUR может сочинить любой желающий «с улицы» — и немедленно разместить его в репозитории. Роль «доверенного сообщника» (а число их едва превышает полсотни) сводится к проверкам — соответствия PKGBUILD‘а стандартам пакетов Arch’а, отсутствия всякого рода «вреднятины», правильности собирания, установки и запуска пакета. После чего пакет помечается как «безопасный» (Safe) и становится доступным для «третьих лиц» (то есть нас, любимых).

В связи с этим в AUR’е можно обнаружить, во-первых, последние версии популярных пакетов, во-вторых — пакеты, только что созданные их разработчиками, в-третьих — пакеты редкие, востребованные применителями со специальными (например, научными) запросами.

Это — одна сторона медали. Сторона же другая — любой пакет из AUR’а гарантированно был собран, установлен и запущен, в пределе, на двух машинах — создателя PKGBUILD‘а и его «проверяющего». Так что успех этого предприятия ни в коем случае не гарантирован даже страховым полисом. Что и указано на соответствующей странице

Пакеты в AUR содержат предоставленный пользователями контент. Любое использование предоставляемых файлов выполняйте на свой риск.

Кроме того, авторы PKGBUILD‘ов не давали клятву сопровождать свои пакеты по гроб жизни — в результате среди них немало брошенных или тех, что не обновлялись никогда. Некоторые пакеты оказываются «сломанными» из-за того, что изменились их зависимости. Наконец, для некоторых PKGBUILD‘ов могут оказаться недоступными используемые в них исходники.

Наконец, некоторые PKGBUILD‘ы, успешно собранные и работающие после первой установки, могут отказаться делать это при тотальном обновлении системы. Как с этим бороться — будет рассказано в одном из ближайших очерков.

Все перечисленные случаи сбоев при работе с пакетами из AUR’а могут иметь место быть — однако в последние годы они достаточно редки. И встречаются не чаще, чем в любых других дистрибутивах, даже в тех, которые следуют модели фиксированных релиз-циклов. А потому отказываться от использования AUR’а нет никаких резонов. В Antergos’е поддержка AUR’а может быть включена на стадии инсталляции системы. Но это можно сделать и в любой момент времени после оной.

Antergos и управление пакетами: репозитории: 4 комментария

  1. Если вы не нашли требуемый пакет ни в одном из перечисленных выше репозиториев (что странно для AUR, поверьте), то и тут отчаиваться не стоит. Кроме упомянутых выше, как ни странно, существуют и такие репозитории, к которым давно привыкли пользователи контейнеров (а обсчёт пакета по PKGBUILD — это как раз создание контейнера с самой программой, описанием, путями установки, зависимостями в одном заархивированном файле. К чему мы давно привыкли: deb, rpm, apk — ну это уже для систем с зелёным роботом) совсем других систем, типа deb: в арче есть аналог ppa. Получить примерное представление о нём можно здесь. Спойлер: нужно владеть вражескими языками.
    К примеру, если пользователю вдруг захотелось впилить в систему dkms, ему он очень нужен, так как система будет работать с виртуальными машинами, предположим, то для этих целей отлично подходит репозиторий seblu. Для «инфицирования» им системы добросовестный арчевод (руками, с правами суперпользователя) открывает /etc/pacman.conf, и наивно вставляет в него следующее:

    [seblu]
    Server = http://al.seblu.net/$repo/$arch
    SigLevel = Required TrustedOnly

    После чего, сохранив файл, в качестве пережитка прошлого можно перезагрузиться, обновить пакетную базу, а затем (в графическом режиме или через командную строку — кому как нравится) установить и сам dkms.
    Прелесть в том же, в чём и в работе с ppa: система обновляется централизовано. Вам не нужно следить за тем, какие пакеты были установлены с помощь flatpak, какие развёрнуты из исходников, какие — с помощью snap (ничего этого я категорически бы не советовал делать в арче — ищите варианты установки через репозитории системы, они есть практически всегда), можно просто штатно обновить всю пакетную базу установленной на компьютере системы.

  2. В AUR, конечно, всякоразного специализированного софта больше, чем где-бы то ни было, больше, чем в PPA. Разве что в «левых» репах Slackware — сопоставимое количество.
    Но увы, и там есть не всё.
    Например, из геопространственного софта, включённого в дистрибутив OSGeoLive https://www.alv.me/osgeolive-otkrytoe-geoprostranstvo-eshhyo-para-vvodnyh/, в AUR’е нет примерно трети, как раз специально проверял.
    Кроме того, пакеты, которые геморройно устанавливаются из PPA — из AUR’а собираются с не менее трипперно 🙂 Примеры — Horus, Thot, а Shutter с поддержкой встроенного редактора нынче не собирается вообще.
    И кстати, такие пакеты, раз собрамши или установимши — обновлять нельзя ни в коем случае, рядом с ними даже чихать нельзя, не то что кашлять.
    Страничку со списком «левых» репозиториев Arch’а смотрел. Увы, искать среди них сложнее, не только чем в PPA, но даже чем в home-репах openSUSE. Так что разборка с ними очень времени требует…

  3. Например, из геопространственного софта, включённого в дистрибутив OSGeoLive https://www.alv.me/osgeolive-otkrytoe-geoprostranstvo-eshhyo-para-vvodnyh/, в AUR’е нет примерно трети, как раз специально проверял.

    Думаю, мало геологов в арчеводах. Не удивлён, хотя сейчас можно найти дистрибутив Linux под любую профессию. Вот только абсолютное большинство из них — на Debian или на его производных.

    Shutter с поддержкой встроенного редактора нынче не собирается вообще.

    Вот насколько мне этот вопрос близок! Нормальный скриншоттер с букетом возможностей (локальное сохранение, редактор, выгрузка в интеренет) я уже просто отчаялся найти/собрать. Вообще в итоге выяснилось, что разработчик Shutter детище своё забросил, отчего и все его проблемы в Арче, где его скоро, думаю, отметят, как устаревший. По версиям он даже до стабильного релиза, единички, не добрался. Так и остался на 0.94. Решение, кстати, нашёл: Flameshot, отличный скриншоттер, с текстом, редактором, выгрузкой, блэкджеком и домом с дамами нетяжёлого поведения.

  4. > абсолютное большинство из них — на Debian или на его производных.
    В deb based системах больше всего относительно простых кастомизаторов. Правда, они как возникают — так и дохнут. Но некоторые существуют уже достаточно долго, хотя авторы исходных версий на них забили.
    > Flameshot, отличный скриншоттер
    Да, неплохой. Но до Shutter’а не дотягивает — букововставлялка-рисовалка слабее.
    Я для себя нашёл другое решение, комбинированное: Spectacle для собственно скринов (удобная запись куда надо) + Hotshot для вставок текста и линий/фигур. Не блеск эргономики и эстетики — но по функционалу где-то выигрывает даже у Shutter’а. Кратко писал на Блогосайте. Сейчас закончу текучку про первоочередной кастомайзинг Cinnamon — и опишу подробнее.

Добавить комментарий