В результате я решил это исправить и написал свою консольную программу для управления пакетами - zrpm.
Преимущества
- Безопасно. Для опасных операции вроде установки, удаления пакетов, обновления репозиториев и.т.д. используются штатные urpm утилиты. Поэтому, если вы доверяете urpm, то можете быть спокойны, zrpm не сломает Вашу систему.
- Быстро. Поиск работает намного быстрее, например у меня `urpmq --fuzzy qt` думает 4 с лишним минуты, а `zrpm search qt` выдает результат за 3 секунды.
- Удобно. Хоть утилита и не покрывает все возможности urpm, но все ежедневные действия делаются с помощью одной утилиты и единообразными опциями командной строки. Поиск выдает информацию в цвете и сообщает статус пакета - установлен, не установлен, требует обновления.
Программа написана на Go и не требует для работы никаких зависимостей. Просто скачайте бинарник для Вашей архитектуры из репозитория, положите его в /usr/bin, /usr/local/bin или ~/bin и можете запускать. Никакой настройки программа не требует. Если будет интерес к программе я подготовлю нормальный пакет.
Использование
Как я уже говорил программа не имеет всех возможностей urpm утилит, но все "ежедневные" потребности она покрывает и даже чуть больше. Сейчас программа может делать следующее:
- Поиск пакетов
Для поиска пакетов используется команда `zrpm search строка_поиска` Пример:Сразу видно какие пакеты установлены, какие нет, а какие устарели.Код: Выделить всё
zrpm search qtcurve
Можно использовать щаблоны "*" и "?", только не забывайте брать их в кавычки. Например zrpm search "qt?-designer" найдет и qt4-designer и qt5-designer Программа показывает только последние версии и только пакеты подходящие для вашей архитектуры, но при желании можете использовать ключи `--showduplicates` и `--arch`
Если нужно узнать имя пакета в который содержит нужную программу, можно использовать `zrpm files имя_нужного_файла` Пример:Код: Выделить всё
zrpm files bin/boomaga
- Просмотр подробной информации о пакетах
Поиск выдает только минимум информации, если надо больше, то используйте команду `zrpm show строка_поиска` Пример:Программа показывает только последние версии и только пакеты подходящие для вашей архитектуры, но при желании можете использовать ключи `--showduplicates` и `--arch`Код: Выделить всё
zrpm show "qt?-designer"
- Установка, обновление и удаление пакетов
Для установки или обновления пакетов используйте `zrpm install пакет`, можно указать несколько пакетов. Программа спросит пароль и установит или обновит пакеты.
Для удаления используйте `zrpm remove пакет`. - Обновление списка пакетов из репозитория, и обновление системы
Для обновление списка пакетов используйте `zrpm update`.
Для обновления всех программ в системе используйте `zrpm upgrade`
Возможно я добавлю автоматическое обновление реп, если они устарели. Вопрос нужно это, и какое время считать устаревшим 30 минут, 1 час, пол дня. - Список репозиториев
Команда `zrpm repo` выводит список репозиториев и дату последнего обновления. Если нужна еще какая информация, пишите в комментах. - Прочее
Используя команды `zrpm download имя_пакета` и `zrpm source имя_пакета` можно скачать RPM или SRC.RPM файл соответственно.
Мне очень интересно, такая программа нужна еще кому кроме меня, пишите Ваши отзывы.