Os componentes de um pacote se dividem em duas categorias.
Os objetos do pacote são arquivos de aplicativo que serão instalados.
Os arquivos de controle controlam como, onde e se o pacote está instalado.
Os arquivos de controle também estão divididos em duas categorias: arquivos de informação e scripts de instalação. Alguns arquivos de controle são obrigatórios. Alguns arquivos de controle são opcionais.
Para empacotar seus aplicativos, você deve primeiro criar os componentes obrigatórios e os componentes opcionais que farão parte do seu pacote. Você pode, então, construir o pacote usando o comando pkgmk.
Para construir um pacote, você deve fornecer:
Objetos de pacote (arquivos e diretórios do software de aplicativo)
Dois arquivos de informação (os arquivos pkginfo e prototype)
Arquivos de informação opcionais
Scripts de instalação opcionais
A ilustração seguinte descreve o conteúdo de um pacote.
Você deve criar os seguintes componentes antes de construir o pacote:
Objetos de pacote
Estes componentes fazem parte do aplicativo. Podem ser os seguintes itens:
Arquivos (arquivos executáveis ou arquivos de dados)
Diretórios
Pipes nomeados
Links
Dispositivos
O arquivo pkginfo
O pkginfo é um arquivo de informação do pacote necessário que define os valores de parâmetro. Os valores de parâmetro são a abreviação, o nome completo e a arquitetura do pacote. Para obter mais informações, consulte Criando um arquivo pkginfo e a página do manual pkginfo(4).
Há duas páginas do manual pkginfo(1) A primeira página do manual descreve um comando da seção 1 que exibe informações sobre os pacotes instalados. A segunda página do manual descreve um arquivo da seção 4 que descreve as características de um pacote. Ao acessar as páginas do manual, certifique-se de especificar a seção de página do manual aplicável. Por exemplo: man -s 4 pkginfo.
O arquivo prototype
O arquivo prototype é um arquivo de informação do pacote necessário que lista os componentes do pacote. Existe uma entrada para cada objeto de pacote, arquivo de informação e script de instalação. Uma entrada consiste em vários campos de informação que descrevem cada componente, incluindo o local, os atributos e o tipo de arquivo. Para obter mais informações, consulte Criando um arquivo prototype e a página do manual prototype(4).
Você pode incluir quatro arquivos de informação de pacote opcionais no seu pacote:
Define as versões anteriores do pacote compatíveis com esta versão do pacote.
Indica outros pacotes que possuem relação especial com o seu pacote.
Define os requisitos de espaço em disco do ambiente de destino, além do que é necessário pelos objetos definidos no arquivo prototype. Por exemplo, poderia ser necessário espaço adicional para os arquivos criados dinamicamente no momento da instalação.
Define o texto da mensagem de copyright exibida no momento da instalação do pacote.
Cada arquivo de informação do pacote deve ter uma entrada no arquivo prototype. Consulte Criando arquivos de informação para obter mais informações sobre a criação desses arquivos.
Os scripts de instalação não são necessários. No entanto, você pode fornecer scripts que realizem ações personalizadas durante a instalação do seu pacote. Um script de instalação tem as seguintes características:
O script está composto por comandos do shell Bourne.
As permissões do arquivo do script devem estar definidas como 0644.
O script não precisa conter o identificador do shell ( #! /bin/sh).
Os quatro tipos de script são os seguintes:
O script request
O script request solicita a entrada do administrador que estiver instalando o pacote.
O script checkinstall
O script checkinstall realiza verificação especial do sistema de arquivos.
O script checkinstall está disponível somente no SolarisTM 2.5 e em versões compatíveis.
Os scripts de procedimento definem as ações que ocorrem em determinados pontos durante a instalação e remoção do pacote. Você pode criar quatro scripts de procedimento com esses nomes predefinidos: preinstall, postinstall, preremove e postremove.
Os scripts de ação de classe definem um conjunto de ações que será realizado em um grupo de objetos.
Consulte Criando scripts de instalação para obter mais informações sobre os scripts de instalação.