I would like to have several versions of ghc installed simultaneously,
on the handful of Ubuntu systems I work on. In the past, I have had
just a single version of ghc installed on each system, usually the
most recent stable generic Linux binary installation.
Three questions:
1. Does there exist an `experimental' apt repository for Ubuntu
anywhere which packages versions of ghc more recent than 6.8?
I don't know, but multi-ghc doesn't depend on (or use) any package manager. It's currently made up of a Bash script, a Makefile, and some directory naming conventions. This is both good (since it can be run on any system that has bash and make) and bad (since it means you have to configure your system to support building or using GHC yourself).
2. If I cannot install multiple ghc versions from a different apt
repository, does anyone have advice for how to work with multiple
simultaneous installations? A how-to guide or anything like that?
multi-ghc has a README and the script has usage information.
3. Does having multiple installations break cabal at all? I'd like
to be able to use ghc 6.12.* by default, but be able to selectively
choose an older toolchain for compatibility purposes, bug hunting,
etc.
One of the main goals of multi-ghc was to allow for a different cabal-install configuration for each GHC. It uses symbolic links to switch between versions.
If you're running Linux on x86, then you should be able to use many of the binary tarballs available at http://www.haskell.org/ghc/dist/ . I can't promise all of them work, because I haven't tested them all.
If you try out multi-ghc, please let me know how it goes. I deem its current state "good enough" to let other people use, but I'm sure it can improve. I'm happy to take feedback and/or patches.
Regards,
Sean