di approfondire risposte precedenti: Canopy si basa su un 3- sistema a strati, il livello 0 contiene il minimo indispensabile per il funzionamento della Canopy GUI; il livello 1 contiene tutti i pacchetti "Sistema", che sono distribuiti con Canopy e possono essere aggiornati quando escono nuove versioni; infine, il livello 2 è l'ambiente "Utente" in cui gli utenti possono installare qualsiasi pacchetto che desiderano. In questo modo, se l'utente installa un pacchetto che interrompe Canopy, si può sempre tornare al livello 1, o addirittura al livello 0 per eseguire un ripristino del sistema.
I tre livelli sono gestiti utilizzando una libreria popolare, virtualenv
. In virtualenv
, è possibile creare ambienti Python isolati con il proprio set di librerie. Ad esempio, se si stanno sviluppando diverse applicazioni, ognuna delle quali richiede pacchetti in conflitto, è possibile svilupparle in "ambienti virtuali" separati. Usando virtualenv
, Canopy è in grado di fare lo stesso: potresti avere più ambienti "Utente" (anche se quella funzione non è ancora visibile attraverso la GUI).
Uno attiva un ambiente virtuale utilizzando lo script "attivazione", che Canopy fa nella .bash_profile
linea
~/Library/Enthought/Canopy_64bit/User/bin/activate
come sottolineato da Djon.
Per impostazione predefinita, virtualenv
modifica il prompt di bash in modo che sia possibile ricordare l'ambiente virtuale in cui ci si trova, ecco perché viene visualizzato il prompt "(Canopy 64bit)". Per liberarsene, puoi rimuovere la linea da .bash_profile
, ma questo significa che dovrai indirizzare manualmente il tuo sistema all'eseguibile python corretto e alle librerie corrette.
soluzione punchagan disattiva semplicemente il default virtualenv
pronta, lasciando l'ambiente virtuale Canopy sé intatta:
VIRTUAL_ENV_DISABLE_PROMPT=true
Questo non solo rimuove il testo aggiuntivo nella PS1, ma cambia anche il PERCORSO, remo ving la directory degli script di canopy dal tuo PATH. Quindi, dovrai fornire il percorso completo a tutti gli script installati da Canopy per eseguirli. – punchagan