Meta package and package group (Русский)
Мета-пакет и группа пакетов могут определяться мейнтейнером для обозначения набора связанных пакетов. Оба подхода позволяют устанавливать и удалять набор пакетов по названию мета-пакета или группы вместо того, чтобы вручную указывать имя каждого пакета. Несмотря на то, что группа не является пакетом, её всё равно можно установить похожим способом, смотрите pacman (Русский)#Установка группы пакетов и PKGBUILD (Русский)#groups.
Разница между мета-пакетом и группой пакетов
Разница между мета-пакетом и обычным пакетом заключается в том, что мета-пакет является пустым и существует лишь для связывания пакетов при помощи зависимостей. Мета-пакет, часто (но не всегда) имеющий суффикс "-meta", имеет схожую функциональность с группой пакетов — он позволяет одновременно устанавливать или удалять несколько связанных пакетов.
У каждого подхода есть свои преимущества и недостатки:
Мета-пакет:
- Мета-пакеты устанавливаются так же, как и другие пакеты (см. pacman (Русский)#Установка отдельных пакетов).
- Мета-пакеты удаляются так же, как и другие пакеты (см. pacman (Русский)#Удаление пакетов).
- Любой новый пакет будет автоматически установлен при обновлении самого мета-пакета с новым списком зависимостей.
- Пользователи не могут выбирать отдельные зависимости для установки из мета-пакета.
- Пользователи не могут удалять зависимости мета-пакета без удаления самого мета-пакета.
Группа:
- Группы пакетов запрашивают выбор необходимых для установки пакетов (см. pacman (Русский)#Установка группы пакетов).
- Пользователи не могут удалить группу, так как устанавливается список пакетов. Команда
pacman -R группа
попытается удалить все пакеты этой группы. - Новый пакет, добавленный в группу, не будет автоматически установлен в систему.
- Пользователи могут выбирать пакеты для установки из определённой группы.
- Пользователи могут удалять пакеты без необходимости удаления группы целиком.
Мета-пакеты
Наиболее важный мета-пакет — base. Он содержит минимальный набор пакетов, определяющий базовую установку Arch, в том числе:
- основное ПО, например, glibc и bash;
- специфические для дистрибутива пакеты, например, pacman и systemd;
- некоторые POSIX-утилиты, например, базовые утилиты, утилиты для работы с процессами, файлами и сжатием файлов;
- сетевые инструменты, например, iproute2.
Ядро относится к опциональным зависимостям. См. объявление изменения (англ.) и причины замены группы base на мета-пакет (англ.).
Ещё один часто используемый мета-пакет — base-devel. Он предоставляет сборочное окружение для makepkg. См. причины замены группы base-devel на мета-пакет (англ.).
Группы
Группы пакетов обычно используются для облегчения установки сред рабочего стола. Смотрите раздел Среда рабочего стола#Список сред рабочего стола.
Другой пример — группа pro-audio, содержащая доступные в официальных репозиториях программы для профессиональной работы с аудио.
Смотрите также список всех групп пакетов.