Pregunta

Tengo una aplicación para la que necesito crear un instalador, y todo lo que el instalador debe hacer (además de copiar la aplicación) es ejecutar un script (o ejecutable) que no sea parte de la aplicación en sí. ¿Alguna ayuda sobre cómo puedo hacer esto? Veo en la pestaña Requisitos que hay una acción Resultados de la secuencia de comandos , y también hay Acciones de preinstalación en las Acciones que tiene una acción Abrir archivo . ¿Alguno de estos hará el trabajo o debería buscar en otro lado?

¿Fue útil?

Solución

Aquí es un buen tutorial

  

Hay 7 tipos de scripts que se pueden iniciar durante el proceso de instalación:

     

Comprobación de instalación:   Este script se inicia al comienzo del proceso de instalación (incluso antes del paso de autenticación). Se puede usar para verificar que el Paquete se pueda instalar en esta computadora.

     

VolumeCheck:   Este script se inicia en " Seleccionar destino " paso. Se utiliza para determinar en qué volumen se puede instalar el paquete.

     

verificación previa:   Este script se inicia justo después de que el usuario hizo clic en "Instalar" botón.

     

preinstalación / preinstalación:   Este script se inicia después del script de verificación previa si hay uno (en el caso de la instalación de un solo paquete); de lo contrario, justo después de que el usuario hizo clic en "Instalar" botón.

     

Como puede ver, hay 2 tipos de scripts aquí. El preinstalado se inicia cuando el paquete nunca se ha instalado (desde un punto de vista Installer.app), el preinstalado se inicia cuando el paquete ya se ha instalado. Para determinar si un paquete ya se ha instalado o no, Installer.app está analizando el contenido del siguiente directorio: / Library / Receipts. Si hay un archivo llamado PackageName.pkg dentro de él, entonces el paquete ya se ha instalado; de lo contrario, es la primera instalación.

     

postinstall / postupgrade:   Este script se inicia después de que se hayan instalado los archivos del paquete. Vea (preinstalar / preupgrade) para ver cuál se inicia.

     

postflight:   Este script se inicia después del script postinstall / postupgrade o cuando se ha instalado el paquete.

Otros consejos

Acabo de incluir un script de Shell en mi paquete que hice con PackageMaker. Necesitaba agregar mi aplicación a los elementos de inicio de sesión después de la instalación, así que hice un script llamado postflight.sh y lo puse en una carpeta. (parece que funciona con cualquier ubicación)

Y luego, en mi paquete, tengo Aplicaciones. En Contenido, Paquete: Aplicaciones, en la pestaña Scripts, elijo el postflight.sh en la sección Postflight. Eso es.

mi postflight.sh comienza con

#!/bin/bash

y luego tiene un script para poner la aplicación en los elementos de inicio de sesión. Cuando no tenía eso, podía hacer el paquete, pero la instalación falló. Espero que esto sea útil.

Este paquete de instrucciones de PackageMaker está desactualizado, pero tiene información muy útil sobre los scripts a mitad de camino. Busque la tabla que muestra las variables de línea de comando como se ve desde shell y perl, además de algunos valores de estado de salida útiles.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top