Рассмотрим эту процедуру на примере подключения репозитория для пакетов флэш-плейера. Для этого заходим на официальный сайт Adobe, в пункте Download отыскиваем строку Get flash player, и из выпадающего списка Select version to download… выбираем YUM for Linux, какой (в виде файла adobe-release-i386-1.0-1.noarch.rpm) и скачиваем. Затем даём команду
# rpm -Uhv adobe-release-i386-1.0-1.noarch.rpm
По её успешном исполнении в каталоге с конфигами репозиториев можно будет увидеть новый файл adobe-linux-i386.repo. Одновременно он станет доступным для обновляющих манипуляций командой
# yum update
Подключить новый репозиторий можно и совсем вручную. Проделаем эту операцию для репозитория (почти) ежедневных сборок браузера Chromium от Тома Колловея: создадим в каталоге /etc/yum.repos.d файл chromium.repo и впишем в него такие строки:
[chromium] name=Google Chrome baseurl=http://spot.fedorapeople.org/chromium/F$releasever/ enabled=1 gpgcheck=0
Надеюсь, мне удалось показать, что yum делает употребление rpm-пакетов абсолютно безвредным. В случае же напряжённых отношений с командной строкой для управления rpm-пакетами можно обратиться к графической утилите PackageKit, речь о которой пойдёт в следующем разделе.
PackageKit – кит пакетного менеджмента
Если yum всегда оставался в тени Debian'овского APT'а, то о графической надстройке PackageKit говорят ещё меньше. Хотя она не является чем-то специфическим для rpm-based дистрибутивов: её можно прикрутить к пакетам любого формата в любых дистрибутивах, вплоть до Archlinux и Gentoo.
Система PackageKit распадается на серию бэк-эндов для работы с конкретными менеджерами пакетов и интерфейсные надстройки.
Бэк-энды PackageKit предполагают работу с такими системами, как yum, apt, smart и так далее, вплоть до pacman. Интерфейсом к ним служат
1. либо консольная утилита pkcon, одинаковая во всех дистрибутивах и в отношении синтаксиса команд не зависящая от нижележащего пакетного менеджера,
2. либо графические фронт-энды, каковых минимум два – gnome-packagekit и kpackagekit, ориентированные на работу в средах GNOME/Xfce/LXDE и KDE, соответственно.
При инсталляции в Fedora по умолчанию устанавливается бэк-энд для yum и фронт-энд gnome-packagekit (при выборе в качестве рабочей среды KDE он заменяется на kpackagekit). Но в репозиториях доступны пакеты поддержки apt и smart, а также консольный клиент pkcon.
Пакетные менеджеры, поддерживаемые системой PackageKit, имеют обычно собственный развитый инструментарий для управления пакетами из командной строки (не исключение и Fedora, как мы видели в заметке про yum). Поэтому консольная утилита pkcon представляет интерес только своей теоретической универсальностью – она одинакова в любых дистрибутивах, поддерживающих PackageKit, так что задерживаться на ней не будем.
Графическая ипостась PackageKit в виде субпакета gpk-application запускается из главного стартового меню, в зависимости от используемой среды, через пункты Приложения -> Установка и удаление программ (GNOME) или Администрирование -> Установка и удаление программ (Xfce). Причём сделать это можно от лица обычного пользователя – пароль администратора будет запрашиваться по ходу дела, при необходимости выполнения действий, требующих соответствующих полномочий. После запуска перед нами появляется окно следующего вида:
Рис. 2. PackageKit – общий вид
Переключаясь в левом фрейме окна на соответствующие пункты, в правом можно видеть список всех пакетов – как установленных, так и доступных в репозиториях. Списки пакетов и коллекций можно фильтровать по:
• статусу – установлен или доступен;
• назначению – для разработчиков или конечных пользователей;
• режиму – графическому или текстовому;
• «степени свободы» – free или non-free.
По умолчанию никакая фильтрация не проводится.
Свободное поле с кнопкой Find рядом прямо так и провоцирует выполнить поиск некоего пакета. Каковой осуществляется по совпадению (не чувствительно к регистру) не только в именах пакетов, но и в их описаниях. В результате в выводе будет список всех пакетов, имеющих хоть какое-то отношение к искомому.
Для выделенного пакета доступно его краткое описание и формальные данные – принадлежность к группе, лицензия, объем подлежащего скачиванию архива и репозиторий, из которого пакет будет получен.
Более подробную информацию о пакете можно получить через меню Selection. Так, пункт Get file lists выведет список файлов и путей к ним в том виде, в котором они будут установлены в системе. Пункт Depends on даст список его зависимостей. А пункт Required by – список пакетов, которые зависят от выбранного.