On Fri, 2009-02-06 at 15:18 +0100, Peter Robinson wrote: > Hello, Hi Peter,
> I recently upgraded GHC on one of my machines and therefore had to > reinstall all installed packages. Granted, cabal-install makes this a lot > easier nowadays, but I saw that there's a ticket [1] for > adding a "world" file (speaking in Gentoo terminology) that records all > user requested packages, so I gave that a try. You can find a patch for > the Head branch that adds preliminary support here: > http://darcs.monoid.at/cabal-install/ Yay! :-) > Basically the patch adds Distribution.Client.World that provides an > /insert/, /delete/, and /getContents/ interface. /World.insert/ is called > from Distribution.Client.Install upon successful build. Sounds sensible. > What's currently missing is the implementation of a cabal command that > rebuilds the package list from ~/.cabal/world (or some other location > set by the currently also missing configuration options). Ok. > 1. The world file only contains the list of package names and versions > as requested by the user. I suppose that's all that's needed for > rebuilding, right? Yes. > 2. How should that command look like? Something like: > # cabal install --world Hmm. > Suggestions and advice welcome! Yes, if anyone else has a suggestion on this pitch in. In gentoo we say: $ emerge --upgrade world ie world acts rather like a meta-package of all the things the user deliberately installed. Thanks very much Peter for having a go at this one. I promise I'll properly review your patch soon. I'm shortly going to do a release and I think I might leave this new feature 'til afterwards. However don't worry as I expect to put out another release shortly after that with more dependency resolver improvements so your feature will make it for that release. Duncan _______________________________________________ cabal-devel mailing list [email protected] http://www.haskell.org/mailman/listinfo/cabal-devel
