C'è un errore nello script postinstall . La prima riga dovrebbe contenere solo un cancelletto (#):
#!/usr/bin/env bash
Se .pkg funziona con installer e Installer.app , allora è un pacchetto corretto. Tutti gli altri strumenti sono creati da terze parti e potrebbero non supportare i formati e le funzioni di pkg più recenti.
Permesso mancante?
L'utilizzo di sudo nello script del pacchetto può causare la pausa per sempre o il fallimento istantaneo dello script. In che modo il comando sudo interagisce con l'utente per ottenere le credenziali dell'utente super?
Rimuovi sudo e crea lo script verifica l'autorizzazione per l'installazione prima di continuare, altrimenti stampa un errore ed esci:
if [[ $EUID -ne 0 ]]; then
echo "You must be a root to run this script" 2>&1
exit 1
fi
È responsabilità di installer ottenere i diritti di autorizzazione appropriati ed eseguire gli script del pacchetto utilizzando tali diritti. All'interno del pacchetto, specifica che ha bisogno dei diritti di amministratore per assicurarti che ciò accada.
Registri ed errori
Utilizza il flag verbose con installer per vedere ogni passaggio del processo di installazione e vedere gli errori:
sudo installer -verbose -pkg /Library/Virtualbox.pkg -target /
Strumenti pacchetto Apple
I pacchetti di installazione su OS X sono in genere creati con gli strumenti pkgbuild e productbuild . Questi due strumenti Apple supportano gli script pre e post; guarda il flag --scripts .
AutoPkg
Gli amministratori di sistema Mac spesso utilizzano lo strumento open source autopkg per creare pacchetti:
AutoPkg is an automation framework for OS X software packaging and distribution, oriented towards the tasks one would normally perform manually to prepare third-party software for mass deployment to managed clients.
Potresti trovare che AutoPkg è un approccio migliore per semplificare la configurazione dei nuovi Mac.