
Mark Lentczner wrote:
I have been thinking about the location of installed Haskell package files on Mac OS X. The choice of location affects: GHC & other Haskell implementations Haskell Platform Cabal & cabal-install Haddock If all those agreed on directory locations and layouts, I think the state of Haskell on Mac OS X would be nicer for users. In particular, my hope is for users to end up with an automatically complete Haddock documentation incorporating everything they install.
1) Packages the user installs --global
[...]
I suggest that the default place for global installs on Mac OS X be: /Library/Haskell/
+1 Likewise, ~/Library/Haskell seems to be the best place for user installs.
2) Structure of package pieces
I notice that cabal/cabal-install's default layout of where a package's pieces go, and GHC's layout of its base packages don't agree. Further, cabal/cabal-install's are not set up so that one can easily delete an installed package without hunting down its parts.
I think it best if everything for a package is in one place - making removal very easy
+1 With this scheme, a package could be changed from user to global by simply drag & drop to the other directory, though that won't work anyway due to dependencies.
3) Symlinks for binaries
This does suggest that it would be nice for the symlink-bindir facility (is that in cabal itself, or added by cabal-install?) to have a version for --global installs. Users could then either set something like: symlink-global-bindir: /usr/local/bin in .cabal/config.
Or symlink-global-bindir: /Library/Haskell/bin and then put that in their PATH
+1 , considering that folks may also want to install their GHC with MacPorts. Regards, Heinrich Apfelmus -- http://apfelmus.nfshost.com