Sto sviluppando e distribuendo un programma python per linux, windows e macos.
Uso pyinstaller con l'opzione onefile per pacchettizzare l'applicazione in modo che sia facile da usare da parte di utenti non tecnici (nessuna dipendenza, configurazione , installazione...). Genera solo un file eseguibile che contiene tutto il necessario.
Tuttavia, la mia applicazione richiede un altro eseguibile da eseguire (un driver Web). Su Windows posso semplicemente comprarlo con l'eseguibile e sarà trovato. Su Linux, ogni utente sa come installare alcuni driver usando il loro gestore di pacchetti.
Ma su macOS, è più difficile, perché il percorso corrente non si trova nei percorsi standard e tutti gli utenti non sono in grado di installare i pacchetti stessi.
Come posso impacchettare / distribuire la mia applicazione in modo tale che l'eseguibile si trovi nel percorso os e non richieda all'utente di fare nient'altro che un doppio clic?
A proposito, sì, potrei farlo in modo programmatico copiando il file del driver necessario in un percorso di sistema come / usr / local / bin in modo che possa essere trovato, ad esempio, all'inizio del programma python.
Ma trovo impuro aggiungere codice specifico per os e manipolare tale file in modo codificato. Ci deve essere un modo pulito per installare un programma di questo tipo.