Windows Installer RC
the.dead.shall.rise at gmail.com
Sat May 2 13:19:24 EDT 2009
Claus Reinke <claus.reinke at ...> writes:
> > * We now use a single root directory for both GHC and
> > extralibs
> > ($PROGRAMFILES\Haskell Platform\$HP_VERSION).
> Is this location configurable?
Of course you can change the install location. You'll have to
edit packages.conf manually, though, if you'll later decide to
move the Haskell Platform directory somewhere else.
> What is the directory structure below the root?
GHC installation is under $INSTDIR/ghc-$GHC_VERSION, and
extralibs are under $INSTDIR/extralibs. Uninstaller is under
> Thanks, that is good to know. Combined with uninstall and better
> compression, that means I'll actually want to use this for a GHC 6.10.3
> installation (when things are stable, to replace my ageing GHC 6.8.3
> (which I mostly use to build GHC head, and to check what non-head
> users can see on their systems).
Glad to hear that:-)
> Will all files be extracted under the root?
Yes, see above.
> Could you please provide some details about what the default
> installation mode will do to the system settings or registry, so that
> people can make an informed choice about which installation mode
> to use?
By default, the installer:
1. Unpacks all files to the specified location (mandatory)
2. Updates packages.conf (mandatory)
3. Associates .hs/.lhs files with GHCi (optional)
4. Adds $INSTDIR/ghc-$GHC_VERSION/bin, $INSTDIR/extralibs/bin
and $PROGRAMFILES/Haskell/bin to PATH (optional)
5. Stores GHC's location in registry (optional)
6. Creates and registers the uninstaller (optional)
The standard mode includes items 1-6, while the "just unpack"
mode includes only 1 and 2. You can also select any of items 3-6
If you want more details, you can read the source:
(the main source file is Nsisfile.nsi)
> what happens to existing settings,
File associations are not currently backed up, though the
uninstaller won't delete them if they weren't modified during
> how does the installer integrate with existing installations of
> GHC, Cabal, WinHugs, ...?
Haven't tested. If you want to be absolutely safe, use the "just
unpack" mode for now.
> In terms of integrating with existing Cabal, I assume the installer
> does not actually include a pre-populated Cabal, but only a pre-
> populated GHC package database and the Cabal install tool, and
> will not overwrite existing '<path>/Application Data/cabal' or
> '<path>/Application Data/ghc/ghci.conf'. Is that correct?
> Btw, is GHC the only implementation currently included in the HP?
Yes, as you can see on the website.
> I've always had difficulties understanding the advantage of providing
> GLUT in an incomplete and unusable form (glut32.dll is some 200K
> uncompressed, GLUT can't be used without it, and the dll is from the
> same non-Haskell package that provides glut.h as well, so why include
> one but not the other?). Finding and adding a dll is easier than building
> the package, but for a Haskell Platform release this is bordering on the
> ridiculous, isn't it?-)
> "Batteries included, but you'll have to buy the lightbulbs separately, sorry"
I think that third-party C libraries will be included in some
form in the next versions, but for now it was decided to leave
More information about the Haskell-platform