Файл pkginfo представляет собой файл ASCII, в котором описаны характеристики пакета и даны сведения, которые помогают контролировать процесс установки.
Каждая запись в файле pkginfo представляет из себя строку, которая устанавливает значения параметра в формате PARAM=value. PARAM может быть любым стандартным параметром, описанным на справочной странице pkginfo(4) Не существует обязательного порядка, в котором следует указывать параметры.
Каждое значение value может быть заключено в одинарные или двойные кавычки, например: 'value' или “value”). Если значение value содержит символы, считающиеся специальными в интерпретаторе команд, необходимо использовать кавычки. В практических примерах, приведенных в данной книге, не используются кавычки. Пример использования двойных кавычек приведен на справочной странице pkginfo(4).
Можно также создавать свои собственные параметры пакета, присвоив им значение в файле pkginfo. Ваши собственные параметры должны начинаться с заглавной буквы. Дальнейшие буквы могут быть как заглавными, так и строчными. Заглавная буква означает, что параметр (переменная) будет определен во время установки, а не во время сборки. Для получения дополнительной информации о разнице между переменными установки и переменными сборки см. раздел Переменные среды пакета.
Конечные пробелы после любого значения параметра игнорируются.
Необходимо определить следующие пять параметров в файле pkginfo: PKG, NAME, ARCH, VERSION и CATEGORY. Параметры PATH, PKGINST и INSTDATE вставляются автоматически программным обеспечением во время сборки пакета. Не следует изменять эти восемь параметров. Для информации об остальных параметрах см. справочную страницу pkginfo(4).
Один и тот же пакет может иметь различные версии, быть совместимым с различными архитектурами или и то и другое одновременно. Каждая разновидность пакета называется экземпляр пакета. Экземпляр пакета определяется по сочетанию определений параметров PKG, ARCH и VERSION в файле pkginfo.
Команда pkgadd назначает идентификатор пакета каждому экземпляру пакета в процессе установки. Идентификатор пакета - это аббревиатура пакета с цифровым суффиксом, например SUNWadm.2. Данный идентификатор служит отличительным признаком экземпляра пакета, по которому его можно отличить от любых других пакетов, включая другие экземпляры этого же пакета.
Аббревиатура пакета - это краткое название пакета, которое определяется параметром PKG в файле pkginfo. Аббревиатура пакета должна иметь следующие характеристики:
Аббревиатура должна состоять из алфавитно-цифровых символов. Первый символ не может быть числом.
Аббревиатура не должна быть длиннее 32 символов.
Аббревиатура не должна совпадать с одной из зарезервированных аббревиатур: install, new или all.
Первые четыре символа должны быть уникальными для компании. Например у всех пакетов, созданных компанией Sun MicrosystemsTM, первые четыре символа аббревиатуры – “SUNW”.
В качестве примера сокращенной записи пакета в файле pkginfo можно привести PKG=SUNWcadap.
Параметр ARCH в файле pkginfo определяет, какие архитектуры связаны с данным пакетом. Имя архитектуры не должно превышать 16 алфавитно-цифровых символов. Если пакет связан с несколькими архитектурами, то все архитектуры необходимо перечислить в списке через запятую.
Пример спецификации архитектуры пакета в файле pkginfo :
ARCH=sparc |
Параметр SUNW_ISA в файле pkginfo указывает, какая архитектура системы команд связана с пакетом Sun Microsystems. Может принимать следующие значения:
sparcv9 для пакета, содержащего 64-разрядные объекты
sparcv для пакета, содержащего 32-разрядные объекты
Например, значение SUNW_ISA в файле pkginfo для пакета, содержащего 64-разрядные объекты, будет:
SUNW_ISA=sparcv9 |
Если параметр SUNW_ISA не установлен, то по умолчанию архитектура системы команд пакета устанавливается на значение параметра ARCH.
Параметр VERSION в файле pkginfo указывает версию пакета. Название версии не должно превышать 256 символов ASCII и не может начинаться с левой скобки.
Пример спецификации версии в файле pkginfo:
VERSION=release 1.0 |
Имя пакета - это полное название пакета, определяемое параметром NAME в файле pkginfo.
Поскольку системные администраторы часто используют имена пакетов для указания, следует ли устанавливать тот или иной пакет, написание четких и выразительных полных имен пакетов очень важно. Имена пакетов должны соответствовать следующим ниже критериям.
Укажите, для чего нужен этот пакет (например, для обеспечения определенных команд или функциональности или укажите, что пакет необходим для конкретного оборудования).
Укажите, для чего используется этот пакет (например, для разработки драйверов устройств).
Включите описание аббревиатуры пакета с помощью ключевых слов, кратко расшифровывающих аббревиатуру. Например, полное имя пакета для аббревиатуры SUNWbnuu – “Basic Networking UUCP Utilities, (Usr)” .
Укажите раздел диска, на который будет устанавливаться пакет.
Используйте термины в соответствии с их значением, принятым в отрасли.
Используйте возможность написания 256–символьного имени.
Пример имени пакета, определенного в файле pkginfo:
NAME=Chip designers need CAD application software to design abc chips. Runs only on xyz hardware and is installed in the usr partition. |
Параметр CATEGORY в файле pkginfo указывает, к какой категории принадлежит пакет. Пакет должен принадлежать как минимум к одной из следующих категорий: system (система) или application (приложение). Имена категорий обозначаются алфавитно-цифровыми символами. Имена категорий не зависят от регистра и не должны превышать 16 символов в длину.
Если пакет принадлежит к нескольким категориям, укажите эти категории в списке через запятую.
Пример спецификации CATEGORY в файле pkginfo :
CATEGORY=system |
С помощью своего любимого текстового редактора создайте файл с именем pkginfo.
Откройте файл для правки и определите пять обязательных параметров.
Этими пятью параметрами являются: PKG, NAME, ARCH, VERSION и CATEGORY. Для получения дополнительной информации об этих параметрах ознакомьтесь с разделом Создание файла pkginfo.
Добавьте к файлу любые необязательные параметры.
Создайте свои собственные параметры или прочтите справочную страницу pkginfo(4) для получения сведений о стандартных параметрах.
Сохраните изменения и выйдите из редактора.
В данном примере показано содержимое допустимого файла pkginfo с пятью обязательными параметрами, а также с параметром BASEDIR. Параметр BASEDIR более подробно обсуждается в разделе Поле path.
PKG=SUNWcadap NAME=Chip designers need CAD application software to design abc chips. Runs only on xyz hardware and is installed in the usr partition. ARCH=sparc VERSION=release 1.0 CATEGORY=system BASEDIR=/opt |
См. раздел Как упорядочить содержимое пакета.