archpack
Графический менеджер пакетов и обновлений для Arch Linux: проверяет
обновления, обновляет систему через pacman или yay, ищет и ставит пакеты —
без терминала.
Написан на C++ и Qt 6 Quick (QML, Qt Quick Controls Basic).
Возможности
- Проверка обновлений — через
checkupdatesизpacman-contrib: список пакетов с версиями «было → стало» и прогрессом скачивания и установки. - Обновление системы —
pacman -Syuилиyay -Syu; способ выбирается в меню (≡) в правом верхнем углу. - Поиск и установка —
yay -Ss/pacman -Ss, до 100 результатов; установка выбранного пакета одной кнопкой. - Пароль sudo — вводится в диалоге и не сохраняется: для
sudo -Aсоздаётся временный askpass-скрипт в приватном каталоге (0700), который удаляется после операции. - Тёмная тема в цветах Catppuccin Mocha, интерфейс на русском.
Требования
- Arch Linux (приложение рассчитано на pacman и на других дистрибутивах не работает);
- Qt 6.10 или новее (в репозиториях Arch — Qt 6.12);
pacman-contrib— дляcheckupdates;sudo— для обновления и установки;yay— необязательно: без него поиск и установка идут черезpacman, но AUR-пакеты недоступны.
Установка
Из AUR:
yay -S archpack
Запуск: apparchpack или «Archpack» в меню приложений.
Пакет ставит бинарник
apparchpack— так называется target вCMakeLists.txt, хотя сам пакет называетсяarchpack.
Сборка из исходников
sudo pacman -S --needed base-devel cmake qt6-declarative pacman-contrib
cmake -B build-release -S . -DCMAKE_BUILD_TYPE=Release
cmake --build build-release
./build-release/apparchpack
Проект открывается в Qt Creator как обычный CMake-проект.
Как это работает
Приложение не работает с pacman API напрямую: оно запускает штатные утилиты
через QProcess и разбирает их вывод.
| Действие | Команда |
|---|---|
| Проверка обновлений | checkupdates |
| Обновление через pacman | sudo -A env LC_ALL=C COLUMNS=300 pacman -Syu --noconfirm |
| Обновление через yay | yay --noconfirm -Syu |
| Поиск | yay -Ss или pacman -Ss |
| Установка | yay -S <пакет> или pacman -S <пакет> |
Команды в таблице упрощены: в коде дополнительно выставляются --answerclean,
--answerdiff, --answeredit и --answerupgrade в None для yay, а также
переменные окружения LC_ALL=C и COLUMNS=300 — чтобы разбирать стабильный
англоязычный вывод. Пароль передаётся только через временный SUDO_ASKPASS.
Ограничения
- Только Arch Linux и производные с pacman.
- Вкладка «Удаление» пока заглушка — удаление пакетов не реализовано.
- Своей базы пакетов и проверки подписей нет: всё делает pacman.
- Интерфейс на русском, тёмная тема без переключателя.
Лицензия
MIT — см. LICENSE.