Управление пакетами Slackware
5.9.3 Создание пакетов
Создание Slackware пакетов может быть, как простым, так и сложным. Нет специфического метода создания пакетов. Единственное требование это то, что пакет должен быть tar gziped файл, и если нужен после-установочный скрипт, он должен быть в каталоге /install/doinst.sh.
Если вы заинтересованы в создании пакетов для вашей системы, или для сети, которую вы обслуживаете, вам следует посмотреть на различные build скрипты в дереве каталогов исходников Slackware. Есть несколько методов, которые мы используем для создания пакетов.
explodepkg
explodepkg (8) проделает то же, что installpkg делает при распаковке пакета, но на самом деле не установит сам пакет, и не произведЈт никаких изменений в базе данных пакетов. Она просто развернЈт содержимое пакета в текущий каталог.
Если вы посмотрите На дерево каталогов исходников Slackware, вы увидите, как мы используем эту команду для ”структурных” пакетов. Эти пакеты содержат скелет того, как конечный пакет будет выглядеть. Они хранят все необходимые имена файлов (нулевой длины), права доступа и принадлежности. build скрипт проделает cat с содержанием пакета из исходного каталога в build каталог пакета.
makepkg
makepkg(8) запакует текущий каталог в формат Slackware package. Она найдЈт все символьные ссылки в дереве и добавит блоки их создания в пост-установочный скрипт пакета. Так же программа выдаст сообщение, если обнаружит файлы нулевой длины в дереве пакета.
Эта программа обычно выполняется после того, как вы создали дерево вашего пакета.
5.9.4 Создание tags и tagfiles (для программы установки)
Программа установки Slackware производит установку пакетов программ в вашу систему. Существуют так же файлы, которые говорят программе установки, какие из файлов должны быть установлены, какие из них необязательны, и какие по умолчанию должны быть выбраны программой установки.
tagfile находится в каталоге первой серии программ и называется tagfile. Он перечисляет пакеты различных дисков и их статус. Статус может быть:
Опция Действие
ADD Пакет необходим для нормальной работы системы
SKP Пакет будет автоматически пропущен
REC Пакет не является необходимым, но рекомендован
OPT Пакет необязателен
Table 5.8: Опции статуса tagfile
Формат прост:
<package name>: <status>
Один пакет на строчку. Оригинальные tagfiles для каждого раздела программ хранятся в tagfile.org. Так что если вы запутались со своими, вы можете восстановить оригинальные.
Многие администраторы предпочитают писать свои собственные tagfiles и затем при установке просто нажимают ”full”. Программа установки прочтЈт tagfiles и произведЈт установку в соответствии с их содержанием.Если вы используете REC или OPT, то появится окно диалога, которое спросит, следует ли устанавливать этот отдельный пакет. Поэтому рекомендуется использовать ADD и SKP, если вы пишите tagfiles для автоматизированной установки.
Просто убедитесь, что ваши tagfiles будут расположены в тех же местах, что и оригинальные. Или вы можете так же выбрать ”указать специфический путь к пользовательскому tagfile”.
5.9.5 Итог
Теперь вы должны быть знакомы с идеей пакетов программ и как они используются в Slackware. Вы должны быть знакомы с различными утилитами управления пакетами и знать, как использовать их. Наиболее важные моменты этого раздела, это установка, удаление и обновление пакетов. Это и есть наиболее частое применение утилит пакетов. Так же вы должны иметь хоть общее представление о том, как создаются и проверяются пакеты.