Ho un'app ho bisogno di creare un programma di installazione per, e tutto il programma di installazione deve fare (oltre a copiare l'app) è eseguire uno script (o eseguibile) che non fa parte del app stessa. Qualche aiuto su come posso farlo? Vedo nel scheda Requisiti c'è un Risultati di Script azione, e c'è anche la preinstallare azioni nella scheda azioni che ha un Apri file azione. Ognuno di questi lavori o dovrei cercare altrove?Utilizzo di PackageMaker per eseguire uno script all'installazione
risposta
Here è un buon How-to
Ci sono 7 tipi di script che può essere lanciato durante il processo di installazione:
InstallationCheck: Questo script viene lanciato all'inizio del processo di installazione (anche prima della fase di autenticazione). Può essere usato per verificare che il pacchetto possa essere installato su questo computer.
VolumeCheck: Questo script viene avviato nel passaggio "Seleziona destinazione". Viene utilizzato per determinare su quale volume è possibile installare il pacchetto.
preflight: Questo script viene avviato subito dopo che l'utente ha fatto clic sul pulsante "Installa".
preinstallazione/preupgrade: Questo script viene lanciato dopo lo script di preflight se c'è una (nel caso di una singola installazione del pacchetto); altrimenti subito dopo che l'utente ha fatto clic sul pulsante "Installa".
Come vedi, ci sono 2 tipi di script qui. Il preinstallato viene lanciato quando il pacchetto non è mai stato installato (da un punto di vista Installer.app), il preupgrade viene avviato quando il pacchetto è già stato installato. Per determinare se un pacchetto è già stato installato o meno, Installer.app sta dando un'occhiata al contenuto della seguente directory:/Library/Receipts. Se c'è un file denominato PackageName.pkg al suo interno, il pacchetto è già stato installato, altrimenti è la prima installazione.
postinstall/post-aggiornamento: Questo script viene avviato dopo che i file nel pacchetto sono stati installati. Vedi (preinstall/preupgrade) per vedere quale è stato lanciato.
postflight: Questo script viene avviato dopo lo script postinstall/postupgrade o quando il pacchetto è stato installato.
Questo articolo è stato aggiornato, ma ha alcune informazioni molto utili sugli script a metà. Cerca la tabella che mostra le variabili della riga di comando viste da shell e perl, oltre ad alcuni valori di stato di uscita utili.
Non mi sembrava giusto copiare le informazioni qui, quindi scuse per aver risposto per riferimento. –
Umm, sei collegato allo stesso articolo che la risposta di Epatel stava già collegando a .. – yairchu
Sono appena riuscito a includere uno script Shell nel pacchetto che ho creato con PackageMaker. Ho dovuto aggiungere la mia app agli elementi di login dopo l'installazione, quindi ho creato uno script chiamato postflight.sh
e lo ho inserito in una cartella.(sembra che funzioni con qualsiasi posizione)
E poi nel mio pacchetto, ho Applicazioni. In Contenuto, Pacchetto: Applicazioni, nella scheda Script, scelgo lo postflight.sh
nella sezione Postflight. Questo è tutto.
miei postflight.sh
inizia con
#!/bin/bash
e quindi ha qualche script per mettere l'applicazione negli elementi di login. Quando non ce l'ho, potrei fare il pacchetto, ma l'installazione fallì. Spero che questo sia utile.
"solo una cartella". Grazie. L'unico pezzo di dati che mantiene il mio pacchetto dalla compilazione è dove mettere il maledetto script di installazione. – mcandre
Nel caso questo aiuti qualcuno: se la CLI del packagemaker viene utilizzata con l'opzione --scripts, i nomi dei file di script non dovrebbero avere un'estensione .sh. Basta nominarli preflight, postflight, ecc. – pepsi
- 1. Ottenere PHP per eseguire uno script Python
- 2. python - crontab per eseguire uno script
- 3. Eseguire uno script in Dockerfile
- 4. Come eseguire uno script all'avvio di Ubuntu?
- 5. PhantomJS: iniettare uno script prima di eseguire qualsiasi altro script
- 6. Utilizzo del sottoprocesso per eseguire lo script Python su Windows
- 7. Come eseguire uno script PowerShell da SSIS
- 8. Come eseguire uno script python da java?
- 9. Posso eseguire uno script Python come servizio?
- 10. Come eseguire uno script python in background?
- 11. Come eseguire uno script sql utilizzando C#
- 12. come eseguire uno script .sql su heroku?
- 13. Come eseguire uno script .sql da bash
- 14. Come eseguire uno script Julia in Atom
- 15. Come ottenere Hudson CI per eseguire uno script PowerShell?
- 16. Come eseguire uno script python come pm2 per nodejs
- 17. Utilizzo di ZeroMQ in uno script PHP all'interno di Apache
- 18. Script per eseguire altri script in sqldeveloper
- 19. Utilizzo di easy_install all'interno di uno script Python?
- 20. Eseguire uno script di app standalone google per l'interfaccia utente da Script Editor
- 21. Utilizzo del comando passwd da uno script di shell
- 22. Utilizzo di Automator di apple per passare il nome del file in uno script di shell
- 23. Utilizzo di uno script Linker su Mac OS X
- 24. LINQPad - puoi eseguire uno script linqpad dalla riga di comando?
- 25. Utilizzo di ARGV e CGI in uno script Perl
- 26. Come eseguire uno script di shell interattivo usando java runtime?
- 27. nginx - Come eseguire uno script di shell su ogni richiesta?
- 28. Come eseguire uno script npm di un pacchetto dipendente
- 29. Come eseguire uno script di shell utilizzando file docker CMD
- 30. Uno script PHP può eseguire codice comune prima di exit()?
Grazie, ma ho una domanda veloce: ho creato lo script postinstall, ma come faccio a fare riferimento all'eseguibile che voglio eseguire, in altre parole come includo quell'eseguibile (non parte dell'applicazione reale) nel pacchetto e come sarebbe il suo percorso (nello script postinstall). –