2015-10-04 9 views
8

Qual è il ruolo del file ~/.cabal/world e cosa significa il suo contenuto? Non riesco a trovare alcuna documentazione e sono confuso da ciò che vedo lì.Per che cosa è un file 'world' di Cabal?

Ad esempio, corrisponde a nether i pacchetti nel mio database utente, né il mio database globale dei pacchetti, e mentre sembra elencare solo (alcuni dei) pacchetti nel mio database utente, ne elenca alcuni che ho " rimosso "con ghc-pkg unregister.

risposta

8

Per quanto ne so, viene popolato automaticamente con qualsiasi pacchetto che abbiate mai richiesto esplicitamente (includendo quindi installazioni non riuscite). Ciò significa che se lo si copia su un altro computer, è possibile eseguire

allo scopo di replicare la configurazione corrente.

Ovviamente, è possibile annullare la registrazione di un pacchetto dietro la parte posteriore della cabina e non sarà possibile eliminarlo dal proprio file world.

(Anche le dipendenze saranno installate, ma dovrei sottolineare che l'hackage si è spostato nel frattempo, e che se si desidera un'installazione riproducibile, è probabilmente più semplice usare lo stack tool, che ha quello come uno dei suoi principali obiettivi di progettazione)

+0

Questo sembra essere il modo in cui si comporta. – orome

+1

Bel nome, a proposito. – AndrewC

+0

Appare anche apparentemente * tentativi di installazione falliti *, che è dispari. – orome