LinuxRuLinux без лишней теории
Arch Linux

AUR в Arch Linux: как ставить пакеты и не поймать вредонос

Редакция LinuxRu8 мин чтенияИнструкции

AUR в Arch Linux - это пользовательский репозиторий сборочных скриптов: вы скачиваете PKGBUILD, собираете пакет у себя и ставите его через pacman. Делать это можно вручную командой makepkg или помощником вроде yay и paru, но в любом случае перед сборкой стоит заглянуть в PKGBUILD, потому что никто, кроме вас, его не проверял.

AUR в Arch Linux: как ставить пакеты и не поймать вредонос
Содержание
  1. Что такое AUR
  2. Сборка вручную
  3. Помощник yay
  4. Paru и другие
  5. Pamac
  6. Проверка пакета
  7. Ошибки сборки
  8. Откат
  9. Частые вопросы

Что такое AUR и чем он отличается от core и extra

Arch User Repository живёт на aur.archlinux.org. В нём лежат не готовые пакеты, а рецепты: файл PKGBUILD с описанием, откуда скачать исходники, как их собрать и куда разложить файлы. Пакет получается у вас на машине, а установка проходит через обычный pacman.

Официальные репозитории core, extra и multilib собирают и подписывают разработчики Arch. В AUR загружать PKGBUILD может любой зарегистрированный пользователь, поэтому там есть почти всё: проприетарные браузеры, драйверы для редкого железа, свежие сборки из git, шрифты, темы. Обратная сторона та же: формальной проверки нет.

Главная страница сайта AUR с поиском пакетов
Сайт AUR: поиск, голоса и комментарии к каждому пакету

По суффиксу в имени легко понять, что вы получите:

  • -bin - готовый бинарник от авторов программы, сборка занимает секунды;
  • -git, -hg - сборка из текущей ветки разработки, самая свежая и самая нестабильная версия;
  • без суффикса - сборка выпущенной версии из исходников.

Если вы только поставили систему, сначала освойтесь с командами pacman: помощники AUR повторяют его синтаксис, а ошибки обновления почти всегда удобнее разбирать на уровне pacman.

Ручная сборка через git и makepkg

Ручной способ полезно знать даже тем, кто пользуется помощником: так ставится сам помощник, и так проще всего понять, что происходит при сборке. Сначала нужны инструменты:

sudo pacman -Syu
sudo pacman -S --needed base-devel git
Установка пакетов base-devel и git в терминале Arch Linux
Группа base-devel и git нужны для любой сборки из AUR

Дальше клонируете репозиторий пакета, читаете PKGBUILD и собираете. Сборку запускают от обычного пользователя, makepkg сам попросит пароль, когда дойдёт до установки:

git clone https://aur.archlinux.org/имя-пакета.git
cd имя-пакета
less PKGBUILD
makepkg -si

Флаг -s доставит зависимости из официальных репозиториев, -i установит собранный пакет. Ещё два полезных: -r удалит зависимости, нужные только для сборки, -c почистит рабочие файлы после успешной сборки.

Как обновить пакет, собранный вручную

Pacman про AUR ничего не знает, поэтому pacman -Syu такие пакеты не обновит. Возвращаетесь в каталог, забираете изменения, смотрите разницу и пересобираете:

cd имя-пакета
git pull
git log -p -1
makepkg -si

Список всего, что установлено не из официальных репозиториев, покажет pacman -Qm. Его полезно просматривать раз в пару месяцев: там видно и забытые пакеты, и те, что давно переехали в extra.

Yay: установка помощника и повседневные команды

Yay в 2026 году остаётся самым распространённым помощником, ветка 12.x поддерживается. Он написан на Go, умеет искать сразу в репозиториях и AUR, сам разбирается с зависимостями и показывает PKGBUILD перед сборкой. Ставится тем же ручным способом:

git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

Если не хочется компилировать Go, клонируйте yay-bin вместо yay, это готовая сборка из GitHub Actions. В Manjaro и EndeavourOS yay обычно уже лежит в репозиториях дистрибутива.

Синтаксис почти полностью совпадает с pacman, только запускать yay нужно без sudo:

# найти пакет в репозиториях и AUR
yay -Ss google-chrome
# установить
yay -S google-chrome
# обновить систему вместе с AUR
yay
Результаты поиска yay -Ss google-chrome в терминале
Поиск в yay показывает пакеты из репозиториев и из AUR вместе
ЗадачаКоманда yayЧто делает
Обновить всёyayто же, что yay -Syu: репозитории и AUR
Обновить и пакеты -gityay -Syu --develпроверяет новые коммиты в пакетах из git
База для -gityay -Y --gendbсоздаёт базу версий, запускается один раз
Скачать PKGBUILDyay -G пакеткладёт файлы сборки в текущий каталог
Удалить с зависимостямиyay -Rns пакетудаляет пакет, его ненужные зависимости и конфиги
Убрать сиротyay -Ycудаляет зависимости, которые больше никому не нужны
Статистикаyay -Psобщее число пакетов и самые большие из них
Команда yay -Yc удаляет ненужные зависимости
yay -Yc находит и удаляет осиротевшие зависимости

Если yay перестал показывать PKGBUILD перед сборкой, включите меню правки и сохраните настройку: yay --editmenu --diffmenu=false --save. Обратную настройку делают тем же флагом с --editmenu=false. Кэш сборок yay хранит в ~/.cache/yay, со временем там набираются гигабайты.

Paru, pikaur и другие помощники

Yay не единственный вариант. Второй по популярности помощник сейчас paru, он написан на Rust и по умолчанию сразу показывает PKGBUILD и diff изменений, что приучает их читать. Установка такая же: клонируете paru или paru-bin и запускаете makepkg -si. Команды похожи: paru обновляет систему, paru -S пакет ставит, paru -Sua обновляет только AUR.

Из остальных живы pikaur (Python, похож на pacman по поведению) и aurutils (набор скриптов для своего локального репозитория, удобен тем, кто держит несколько машин). Старые yaourt и packer давно заброшены, инструкции с ними можно пропускать, даже если они попадаются в поиске первыми. Pacaur и trizen обновляются редко, новым пользователям лучше их не брать.

Помощник ставьте один. Два разных помощника с разными кэшами и настройками только путают, а пользы от второго почти нет.

Pamac: AUR в графическом центре приложений

Тем, кто не любит терминал, подойдёт Pamac из Manjaro. В Manjaro он стоит из коробки, в чистом Arch его собирают из AUR. Пакет pamac-aur в 2026 году обновляется, а основная разработка Pamac переехала на GitHub в организацию manjaro.

yay -S pamac-aur

После установки в меню появится "Добавить/удалить программы". Поддержку AUR включают в настройках: меню с тремя полосками, затем "Настройки", вкладка "Сторонние" или "AUR" в зависимости от версии, переключатель "Включить поддержку AUR".

Главное окно менеджера пакетов Pamac
Pamac: поиск, установка и обновления в одном окне
Включение поддержки AUR в настройках Pamac
Переключатель поддержки AUR в настройках Pamac

Сборка pamac-aur иногда ломается после крупного обновления pacman: libpamac привязан к версии libalpm. Если после обновления системы Pamac перестал запускаться, пересоберите его через yay или временно пользуйтесь терминалом.

Как проверить пакет из AUR перед установкой

В июле 2025 года в AUR загрузили пакеты librewolf-fix-bin, firefox-patch-bin и zen-browser-patched-bin. Под видом исправленных браузеров они скачивали троян удалённого доступа CHAOS RAT. Пакеты удалили через пару дней после жалоб, но история показательная: всё было видно в PKGBUILD, поле source указывало на репозиторий самого злоумышленника на GitHub.

Перед установкой незнакомого пакета пройдитесь по странице на сайте AUR и по самому PKGBUILD:

  1. Посмотрите голоса, популярность, дату первой загрузки и последнего обновления. Пакет "исправленного Firefox" недельной давности без голосов должен насторожить.
  2. Прочитайте комментарии. О сломанной сборке или подозрительных изменениях там обычно пишут первыми.
  3. Проверьте массив source: исходники должны идти с официального сайта или репозитория проекта, а не с чужого аккаунта.
  4. Найдите функции prepare(), build(), package() и файл .install. В них не должно быть curl ... | sh, загрузки скриптов во время сборки и правки файлов вне каталога пакета.
  5. Суммы sha256sums=('SKIP') нормальны для пакетов -git, но для релизного -bin это повод присмотреться.

Самая частая ошибка в AUR - читать PKGBUILD только при первой установке. Злоумышленнику проще перехватить заброшенный пакет и выпустить "обновление". Поэтому при каждом обновлении смотрите diff, который показывают yay и paru. Это десять секунд, а не повод для паранойи.

Если что-то уже поставили и сомневаетесь, удаление пакета не гарантирует чистоту: вредонос мог прописаться в автозагрузку. Проверьте systemctl list-unit-files --state=enabled, ~/.config/autostart и пользовательские юниты systemd. Для общего понимания угроз пригодится статья о том, нужен ли антивирус в Linux.

Сборка упала: частые ошибки и что с ними делать

Неизвестный публичный ключ

Сообщение unknown public key значит, что makepkg проверяет подпись исходников, а ключа автора у вас нет. Номер ключа есть в выводе и в массиве validpgpkeys. Убедитесь, что он совпадает с ключом из документации проекта, и импортируйте его в связку своего пользователя:

gpg --recv-keys ОТПЕЧАТОК_КЛЮЧА

Сломалось после обновления системы

Пакеты из AUR собраны против конкретных версий библиотек. После обновления Python, Qt или Boost часть из них перестаёт запускаться. Помогает пересборка: yay -S --rebuild пакет или ручной makepkg -si в каталоге пакета. Обновлять систему через pacman -Sy пакет без полного -Syu нельзя: такие частичные обновления в Arch не поддерживаются.

Пакет помечен как устаревший

Пометка "Flagged out-of-date" значит, что вышла новая версия, а сопровождающий ещё не обновил PKGBUILD. Иногда достаточно поменять pkgver и суммы у себя, но проще подождать или поискать вариант -bin. Пакет без сопровождающего помечен как orphan, его может забрать любой желающий.

Нет места или память кончилась

Большие проекты вроде браузеров собираются часами и требуют десятки гигабайт. Для них почти всегда есть -bin. Старый кэш чистится командой yay -Sc, а про остальные способы вернуть место написано в статье как освободить место на диске.

Как откатиться, если пакет из AUR сломал систему

Pacman хранит предыдущие версии пакетов в /var/cache/pacman/pkg/, но собранные вами пакеты из AUR туда не попадают: они остаются в каталоге сборки или в ~/.cache/yay/имя-пакета/. Если сохранился файл предыдущей версии, вернуть его можно так:

sudo pacman -U ~/.cache/yay/имя-пакета/имя-пакета-1.2.3-1-x86_64.pkg.tar.zst

Если старого файла нет, переключитесь в клоне репозитория на прошлый коммит через git log и git checkout, затем соберите заново. Надёжнее всего иметь снимки корня: на Btrfs это делает Snapper, и он умеет делать снимок перед каждой транзакцией pacman.

Совсем ненужный пакет удаляется вместе с зависимостями командой yay -Rns имя или тем же sudo pacman -Rns имя: после установки пакет из AUR ничем не отличается от остальных. Подробная справка есть на странице Arch User Repository в ArchWiki.

Частые вопросы

Можно ли ставить yay через sudo?

Нет. Yay и makepkg запускают от обычного пользователя, пароль sudo они запросят сами на этапе установки. Сборка от root отключена в makepkg намеренно.

Чем yay отличается от paru?

По возможностям они близки. Paru написан на Rust и по умолчанию показывает PKGBUILD и diff перед сборкой, yay написан на Go и требует включить меню правки. Выбирайте один и не ставьте оба.

Почему pacman -Syu не обновляет пакеты из AUR?

Pacman работает только с подключёнными репозиториями. Пакеты из AUR обновляет помощник командой yay или paru, либо вы сами через git pull и makepkg -si.

Безопасно ли пользоваться AUR?

Настолько, насколько вы проверяете то, что ставите. Пакеты с историей, голосами и источниками с официального сайта проекта обычно в порядке. Новые пакеты от неизвестных авторов, особенно с пометкой fix или patched, стоит обходить.

Что выбрать: пакет -bin или обычный?

Вариант -bin быстрее ставится и подходит для тяжёлых программ вроде браузеров и IDE. Обычный пакет собирается из исходников и лучше подходит, если важна сборка под вашу систему или бинарника нет.

Документация и источники

Читайте также

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