Meta package and package group (Русский)

From ArchWiki
Состояние перевода: На этой странице представлен перевод статьи Package group. Дата последней синхронизации: 21 мая 2020. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Мета-пакет и группа пакетов могут определяться мейнтейнером для обозначения связанных пакетов. Оба подхода позволяют устанавливать и удалять набор пакетов используя название мета-пакета или группы вместо имени каждого пакета. Не смотря на то, что группа не является пакетом, её всё равно можно установить похожим способом, смотрите pacman (Русский)#Установка группы пакетов и PKGBUILD (Русский)#groups.

Разница между мета-пакетом и группой пакетов

Разница между мета-пакетом и обычным пакетом заключается в том, что мета-пакет является пустым и существует лишь для связывания пакетов при помощи зависимостей. Мета-пакет, часто (но не всегда) имеющий суффикс "-meta", имеет схожую функциональность с группой пакетов — он позволяет одновременно устанавливать или удалять несколько связанных пакетов.

У каждого подхода есть свои преимущества и недостатки:

Мета-пакет:

  • Мета-пакеты устанавливаются так же, как и другие пакеты (см. pacman (Русский)#Установка отдельных пакетов).
  • Мета-пакеты удаляются так же, как и другие пакеты (см. pacman (Русский)#Удаление пакетов).
  • Любой новый пакет будет автоматически установлен при обновлении самого мета-пакета с новым списком зависимостей.
  • Пользователи не могут выбирать отдельные зависимости для установки из мета-пакета.
  • Пользователи не могут удалять зависимости мета-пакета без удаления самого мета-пакета.

Группа:

  • Группы пакетов запрашивают выбор необходимых для установки пакетов (см. pacman (Русский)#Установка группы пакетов).
  • Пользователи не могут удалить группу, так как устанавливается список пакетов.
  • Новый пакет, добавленный в группу, не будет автоматически установлен в систему.
  • Пользователи могут выбирать пакеты для установки из определённой группы.
  • Пользователи могут удалять пакеты без необходимости удаления целой группы.

Мета-пакеты

Наиболее важный мета-пакет — base. Он содержит минимальный набор пакетов, определяющий базовую установку Arch, в том числе:

  • Основное ПО, например, glibc и bash
  • Специфические для дистрибутива пакеты, например, pacman и systemd
  • Некоторые POSIX-утилиты, например, базовые утилиты, утилиты для работы с процессами, файлами и сжатием файлов
  • Сетевой инструментарий, например, iproute2

Ядро относится к опциональным зависимостям. См. объявление изменения (англ.) и причины замены группы base на мета-пакет (англ.).

Группы

Наиболее важная группа пакетов — base-devel. Она содержит такие утилиты, как GCC и make, требующиеся для сборки многих пакетов. Смотрите также: makepkg (Русский)#Использование.

Смотрите также