En esta sección se tratan los archivos de información de paquetes optativos. Gracias a estos archivos puede definir dependencias de paquetes, ofrecer un mensaje de copyright y reservar espacio adicional en un sistema de destino.
Necesita determinar si el paquete tiene dependencias respecto a otros paquetes y si otros paquetes dependen del suyo. Es posible definir incompatibilidades y dependencias de paquetes con dos de los archivos de información de paquetes optativos, compver y depend.
La entrega de un archivo compver permite asignar nombres a versiones anteriores del paquete que sean compatibles con el paquete que se está instalando.
La entrega de un archivo depend permite definir tres tipos de dependencias asociadas al paquete. Estos tipos de dependencias son las siguientes:
Un paquete de prerrequisitos: su paquete depende de la existencia de otro paquete
Una dependencia inversa: otro paquete depende de la existencia de su paquete
Use el tipo de dependencia inversa sólo si un paquete que no puede entregar un archivo depend depende de su paquete.
Un paquete incompatible: su paquete es incompatible con el paquete nombrado
El archivo depend soluciona solamente dependencias muy básicas. Si su paquete depende de un archivo concreto, su contenido o su comportamiento, el archivo depend no ofrece la precisión adecuada. En este caso se debe usar una secuencia de comandos request o checkinstall para la comprobación detallada de dependencias. La secuencia de comandos checkinstall también es la única capaz de detener correctamente el proceso de instalación de los paquetes.
Compruebe que los archivos depend y compver tengan entradas en el archivo prototype. El tipo de archivo debe ser i (para el archivo de información de paquetes).
Consulte las páginas de comando man depend(4) y compver(4) para obtener más información.
Convierta el directorio que contenga sus archivos de información en el directorio actual de trabajo.
Si hay versiones anteriores del paquete y necesita especificar que el nuevo paquete es compatible con ellas, cree un archivo llamado compver con su editor de textos preferido.
Enumere las versiones con las que su paquete sea compatible. Use este formato:
string string . . . |
El valor de cadena es idéntico al valor asignado al parámetro VERSION en el archivo pkginfo, para cada paquete compatible.
Guarde los cambios y salga del editor.
Si su paquete depende de la existencia de otros paquetes, si otros paquetes dependen de la existencia de su paquete, o bien si su paquete es incompatible con otro paquete, cree un archivo llamado depend con su editor de textos preferido.
Agregue una entrada para cada dependencia. Use este formato:
type pkg-abbrev pkg-name (arch) version (arch) version . . . |
Define el tipo de dependencia. Debe ser uno de los caracteres siguientes: P (paquete de prerrequisito), I (paquete incompatible), o bien R (dependencia inversa).
Especifica la abreviatura del paquete, como SUNWcadap.
Especifica el nombre completo del paquete, como Chip designers need CAD application software to design abc chips. Runs only on xyz hardware and is installed in the usr partition.
Optativo. Especifica el tipo de hardware en el que se ejecuta el paquete. Por ejemplo, sparc o x86. Si especifica una arquitectura, debe usar paréntesis como delimitadores.
Optativo. Especifica el valor asignado al parámetro VERSION en el archivo pkginfo.
Para obtener más información, consulte depend(4).
Guarde los cambios y salga del editor.
Complete una de las tareas siguientes:
Si desea crear secuencias de comandos de instalación y archivos de información adicionales, vaya a la tarea siguiente, Cómo escribir un mensaje de copyright.
Si no ha creado su archivo prototype, complete el procedimiento Cómo crear un archivo prototype mediante el comando pkgproto. Vaya al Paso 7.
Si ya ha creado su archivo prototype, edítelo y agregue una entrada para cada archivo que acabe de crear.
Construya su paquete.
Consulte Cómo construir un paquete si fuera necesario.
En este ejemplo hay cuatro versiones de un paquete: 1.0, 1.1, 2.0, y el nuevo paquete, 3.0. El nuevo paquete es compatible con las tres versiones anteriores. El archivo compver para la versión más reciente podría tener el siguiente aspecto:
release 3.0 release 2.0 version 1.1 1.0 |
Las entradas no tienen por qué estar en un orden secuencial. Sin embargo, deben coincidir exactamente con la definición del parámetro VERSION en el archivo pkginfo de cada paquete. En este ejemplo, los diseñadores de paquetes han utilizado formatos diferentes en las tres primeros versiones.
En este ejemplo se da por supuesto que el paquete de ejemplo, SUNWcadap, requiere que los paquetes SUNWcsr y SUNWcsu ya estén instalados en un sistema de destino. El archivo depend para SUNWcadap tiene el aspecto siguiente:
P SUNWcsr Core Solaris, (Root) P SUNWcsu Core Solaris, (Usr) |
Después de construir el paquete, instálelo para confirmar que se instala correctamente y compruebe su integridad. En el Capítulo 4Verificación y transferencia de un paquete se explican estas tareas y se ofrecen instrucciones paso a paso para transferir su paquete verificado a un medio de distribución.
Es necesario decidir si su paquete debe mostrar un mensaje de copyright mientras se está instalando. Si es así, cree el archivo copyright.
Debe incluir un archivo copyright para ofrecer protección legal a su aplicación de software. Compruebe con el departamento legal de su empresa las palabras que se deben incluir en el mensaje.
Para entregar un mensaje de copyright, debe crear un archivo llamado copyright . Durante la instalación, el mensaje se muestra exactamente tal como aparece en el archivo (sin formato). Consulte la página de comando man copyright(4) para obtener más información.
Asegúrese de que el archivo copyright tenga una entrada en el archivo prototype. El tipo de archivo debe ser i (para el archivo de información de paquetes).
Convierta el directorio que contiene sus archivos de información en el directorio de trabajo actual.
Cree un archivo llamado copyright con su editor de textos preferido.
Escriba el texto del mensaje de copyright exactamente como desea que aparezca durante la instalación del paquete.
Guarde los cambios y salga del editor.
Complete una de las tareas siguientes:
Si desea crear secuencias de comandos de instalación y archivos de información adicionales, vaya a la tarea siguiente, Cómo reservar espacio adicional en un sistema de destino..
Si no ha creado su archivo prototype, complete el procedimiento Cómo crear un archivo prototype mediante el comando pkgproto. Vaya al Paso 5.
Si ya ha creado su archivo prototype, edítelo y agregue una entrada para el archivo de información que acaba de crear.
Construya su paquete.
Consulte Cómo construir un paquete si fuera necesario.
Por ejemplo, un mensaje de copyright parcial podría tener el aspecto siguiente:
Copyright (c) 2003 Company Name All Rights Reserved This product is protected by copyright and distributed under licenses restricting copying, distribution, and decompilation. |
Después de construir el paquete, instálelo para confirmar que se instala correctamente y compruebe su integridad. En el Capítulo 4Verificación y transferencia de un paquete se explican estas tareas y se ofrecen instrucciones paso a paso para transferir su paquete verificado a un medio de distribución.
Debe determinar si el paquete necesita espacio adicional de disco en el sistema de destino. Este espacio se suma al requerido por los objetos del paquete. Si es así, cree el archivo de información space. Esta tarea es diferente de crear archivos y directorios vacíos en el tiempo de la instalación, tal como se puede ver en Definición de objetos adicionales que se deben crear en el tiempo de la instalación.
El comando pkgadd asegura que haya suficiente espacio en el disco para instalar el paquete de acuerdo con las definiciones de objetos del archivo pkgmap. Sin embargo, puede que un paquete necesite espacio adicional en el disco más allá de lo que necesiten los objetos definidos en el archivo pkgmap. Por ejemplo, puede que el paquete cree un archivo después de la instalación que puede incluir una base de datos, archivos de registro u otro archivo creciente que consuma espacio del disco. Para asegurarse de que haya espacio reservado, debe incluir un archivo space que especifique los requisitos de espacio en el disco. El comando pkgadd comprueba que exista el espacio adicional especificado en un archivo space. Consulte la página de comando man space(4) para obtener más información.
Asegúrese de que el archivo space tenga una entrada en el archivo prototype. El tipo de archivo debe ser i (para el archivo de información de paquetes).
Convierta el directorio que contiene sus archivos de información en el directorio de trabajo actual.
Cree un archivo llamado space con su editor de textos preferido.
Especifique los requisitos adicionales para el espacio en el disco que su paquete necesita. Use este formato:
pathname blocks inodes |
Especifica un nombre de directorio que puede ser, aunque no necesariamente, el punto de montaje de un sistema de archivos.
Especifica el número de bloques de 512 bytes que desea reservar.
Especifica el número de inodos necesarios.
Para obtener más información, consulte la página de comando man space(4).
Guarde los cambios y salga del editor.
Complete una de las tareas siguientes.
Si desea crear secuencias de comandos de instalación, vaya a la tarea siguiente, Cómo escribir una secuencia de comandos request.
Si no ha creado su archivo prototype, complete el procedimiento que se indica en Cómo crear un archivo prototype mediante el comando pkgproto. Vaya al Paso 5.
Si ya ha creado su archivo prototype, edítelo y agregue una entrada para el archivo de información que acaba de crear.
Construya su paquete.
Consulte Cómo construir un paquete si fuera necesario.
Este archivo space de ejemplo especifica que se reserven 1000 bloques de 512 bytes y 1 inodo en el directorio /opt del sistema de destino.
/opt 1000 1 |
Después de construir el paquete, instálelo para confirmar que se instala correctamente y compruebe su integridad. En el Capítulo 4Verificación y transferencia de un paquete se explican estas tareas y se ofrecen instrucciones paso a paso para transferir su paquete verificado a un medio de distribución.