Adding a world file to cabal-install
thaldyron at gmail.com
Fri Feb 6 09:18:03 EST 2009
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  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:
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.
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).
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
2. How should that command look like? Something like:
# cabal install --world
Suggestions and advice welcome!
More information about the cabal-devel