Creazione di plug-in di installazione in pacchetti con gli stessi privilegi di root come i pacchetti da installare (Mac OS X)

StackOverflow https://stackoverflow.com//questions/9693673

Domanda

Sto lavorando in un progetto Mac OS X in cui il programma di installazione è stato costruito utilizzando i pacchetti Strumento . Vedo che questo strumento è meno usato rispetto a quello chiamato pacchetti maker ed è per questo che trovo difficile ottenere aiuto, ma bene, ecco la domanda:

Ho creato con successo i plug-in installatori seguendo la Guida ufficiale (http://s.sudure.free.fr/stuff/installer/installer_plugins/index.html), ma ora il problema è che ho bisogno di uno di loro con Privilegi di root, prompt per la password dell'amministratore, se necessario.

Ogni confezione è in grado di copiare con i privilegi amministrativi insieme alla corsa di uno script pre-installazione e post-installazione, ma questo passaggio è dopo l'esecuzione del plug-in mentre avevo bisogno di eseguirlo prima.

Potrei farlo per scrivere un codice di autorizzazione di base (utilizzando gli autorizzazione deprecataExecutewithPrivileges perché rendere le complesse soluzioni alternative raccomandate da Apple in un plugin è davvero però) nel plugin stesso.

Ora tutto funziona (il mio codice privilegiato e l'installazione) ma il programma di installazione finisce per richiedere una password di amministrazione due volte, uno per il plugin e l'altro prima dell'installazione effettiva (pacchetto), che non è troppo "facili da usare".

Qualcuno conosce una soluzione alternativa o una soluzione possibile?

Grazie in anticipo.

È stato utile?

Soluzione

Vecchia domanda ma lo metterò su un'opzione.

In un installatore ho fatto usando pacchetti che ho avuto uno degli script del volo pre / post prendersi cura di qualsiasi cosa che necessitava di privilegi elevati.È necessario effettuare quel particolare pacchetto chiedere l'elevazione, ma lo script funziona con privilegi elevati.

Così in questo esempio ho un plugin per chiedere all'utente alcune domande e poi archiviamo tale informazione AT / TMP per lo script da leggere ed eseguire su.

Un po 'rotondo la curva ma funziona e molto più facile, quindi cercando di non usare AuthorizationExecuteWithPrivileges

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top