Как использовать AUR

Вероятно, когда ты только начал использовать Arch Linux, или основанный на нем дистрибутив (Manjaro, EndeavourOS, ArcoLinux, и так далее) тебе повстречалось множество странных, незнакомых слов в статьях и инструкциях, например AUR. Возможно ты даже пытался разобраться с ними самостоятельно, но ничего хорошего из этого так и не вышло. А может быть просто, решил подтянуть свои звания в данном вопросе. Так что давай приступим к работе с AUR.

Вообще, что же такое этот ваш AUR?

AUR это аббревиатура от Arch User Repository. Вероятно ты уже сталкивался с утилитой pacman. Это одна из основных утилит твоей операционной системы — пакетный менеджер. Может быть, ты используешь какие либо графические утилиты, например pamac, для того чтобы достигнуть более «простого» и «интуитивного» взаимодействия со своей операционной системой, это не важно, они все равно являются лишь графической оболочкой к утилите pacman. Список репозиториев для pacman представлен в этом файле:

/etc/pacman.conf

В будущем я напишу ещё одну статью, где подробно расскажу о pacman (Чтобы не пропустить статью рекомендую подписаться на телеграмм канал, группу вконтакте, или же RSS ленту).

К сожалению, эти репозитории содержат лишь самое популярное программное обеспечение, и если, к примеру, тебе необходимо установить тот же DaVinci Resolve — придётся использовать сторонние репозитории.

И как можно было догадаться из аббревиатуры — AUR как раз и является таким репозиторием. Его ключевая особенность — что практически каждый может разместить там свой PKGBUILD файл, необходимый для ABS — Arch Build System, системе сборки программного обеспечения из исходных кодов. Благодаря этому, в AUR можно найти практически любое программное обеспечение, которое только захочешь использовать. Но также из этого следует, что никто не будет гарантировать тебе безопасность и стабильность работы программного обеспечения из AUR — а следовательно, если безопасность и стабильности работы операционной системы для тебя в приоритете, стоит воздержаться от использования данного репозитория.

Хорошо, но как же тогда им всё-таки пользоваться?

Официальный путь — это вручную скачивать и собирать каждую программу что вам нужна из данного репозитория, однако мы сделаем это лишь единожды, поскольку данный путь небезопасен. Ты должен поддерживать свою операционную систему всегда в обновлённом состоянии, чтобы не быть уязвимым к уже известным и исправленным угрозам. Наиболее простой для этого путь — использовать так называемые AUR-помощники. По моему мнению, наиболее совершенным и удобным в работе является yay.

И так, для начала открой свой терминал и смени свою текущую директорию на временную (чтобы не засорять операционную систему исходными кодами). Для этого можно воспользоваться командой представленной ниже:

cd /tmp/

Теперь проверь, установлен ли в твоей операционной системе git, и если нет — ты можешь установить его с помощью команды приведённой ниже:

sudo pacman -S git

Пожалуйста внимательно следи за использованием заглавных и строчных букв, поскольку все команды в Linux — чувствительны к регистру.

Теперь, давай склонируем репозиторий yay. Вероятно ты хочешь использовать уже заранее скомпилированную версию, если это не так, просто используй «yay» вместо «yay-bin».

git clone https://aur.archlinux.org/yay-bin.git

После того как ты загрузил PKGBUILD файл, перейди в склонированную директорию. Для этого используй следующую команду. (Соответственно, если ты решил собрать yay из исходных кодов, просто перейди в директорию yay)

cd yay-bin

Теперь используй данную команду, для того чтобы установить yay:

makepkg -si

Если все было выполнено правильно, ты должен получить установленное приложение.

Как этим пользоваться?

yay имеет абсолютно такие же аргументы, как и pacman. То есть, если ты уже умеешь пользоваться pacman'ом, ты уже знаешь как использовать yay. Однако yay куда более функциональный инструмент, чем может показаться на первый взгляд. Для тебя он может полностью заменить pacman, поскольку может работать не только с AUR, но и с официальными репозиториями.

Некоторые примеры использования:

Как обновить базу данных пакетов:

yay -Sy

*Маленькая заметка. Тебе вероятно стоит использовать «yay -Syy», чтобы избежать некоторых нетривиальных проблем.

Как полностью обновить свою операционную систему (AUR и официальные репозитории):

yay -Syu

*Маленькая заметка. Тебе вероятно стоит использовать «yay -Syyu», чтобы избежать некоторых нетривиальных проблем.

Как найти программу в AUR:

yay -Ss packagename

Как установить пакет из AUR:

yay -S packagename

Как удалить только пакет, не трогая зависимости:

yay -R packagename

Как удалить пакет и все его зависимости:

yay -Rs packagename

Как вывести список установленных вручную (не в качестве зависимостей) пакетов:

yay -Qe

Как вывести список всех пакетов, которые больше не требуются в качестве зависимостей в системе (пакетов-сирот):

yay -Qdt

Как удалить все пакеты-сироты включая их зависимости:

yay -Qtdq | yay -Rns -

Некоторые хитрости использования

Вероятно ты не хочешь видеть «Show difference», «Make a clean build», «Edit a PKGBUILD», «Remove make dependencies» диалоги при каждом обновлении системы или установке нового пакета.

Вот маленькая хитрость, которая позволит отключить эти столько раздражающие функции:

yay --nodiffmenu --nocleanmenu --noeditmenu --noremovemake --save

Решение проблем

Если ты получил ошибку подобную этой:

One or more files did not pass the validity check!

Тебе необходимо воспользоваться командой:

yay -S --mflags --skipinteg packagename

Если же ты сталкиваешься с ошибкой, в которой говорится про какие-то PGP/GPG ключи или же keyring во время установки пакета — воспользуйся следующей командой:

sudo pacman-key --populate archlinux

А также

yay -S archlinux-keyring

Проблема должна быть устранена.