I've been asked, and am willing to take over maintenance of the Mac OS X 
installer from George.

In preparation for that, I've been digging into how both GHC and Haskell 
Platform are currently packaged for Mac OS X, and how they might be in the 
future. I've generated some crazy ideas here, and thought I'd run them by all 
of you, especially since I have no idea what approaches are used for Windows 
and various Linux environments.

[Terminology warning: "installer package" means a Mac OS installer package that 
the user opens to install. "haskell package" means a package that cabal can 
build and install]

For Mac, GHC creates their own installer package that installs GHC and the base 
libraries. The central issue is how to deliver that along with the Haskell 
Platform components. Currently we give the user the stock GHC installer 
package, and a second H.P. installer package. They install these (in order) and 
off they go. It would be nicer to have just one installer package... Here are 
some ideas

1) Deliver the GHC installer package, but with a different postinstall script 
that downloads, compiles and installs the Haskell Platform. (!) This would be 
essentially the build.sh script from the Haskell Platform repo.

2) Like #1, but include the source trees or tarballs of all the haskell 
packages in the installer package, and have the build.sh script build from 
those sources.

1&2 Result in only one framework (GHC) being installed on the Mac, and the H.P. 
haskell packages are just managed by ghc-pkg & cabal just like any other 
haskell packages the user installs. Further, while these take longer to 
install, they guarantee that the packages are built in a way best for the 
user's system.

3) Unpack the GHC installer package, build and install the Haskell Platform 
haskell packages into that tree, and then re-create the installer package. This 
results in a single installed framework on the Mac (which could be called GHC, 
or GHC-HP, or some such).

4) Build an independent Haskell Platform framework, containing the haskell 
packages built and installed. Take apart the GHC installer package, and build a 
new, single installer package that installs both the H.P. framework and the GHC 
framework. This give two frameworks installed on the Mac, and the GHC one is 
the same as what GHC's installer package would install, but gives the user a 
single installer experience.

I'm looking for thoughts on this, both Mac specific, and what other 
distributions for H.P. have choosen to do, since these questions must be 
similar:
1) Use the installers GHC produces untouched? Rebundle them? Scrap them and 
build a new installer as needed?
2) Maintain compatibility with GHC's choice of platform packaging and 
installation? or not?
3) Dynamically build the Haskell Platform components at install time or not?

        - Mark

Mark Lentczner
http://www.ozonehouse.com/mark/
IRC: mtnviewmark




_______________________________________________
Haskell-platform mailing list
Haskell-platform@projects.haskell.org
http://projects.haskell.org/cgi-bin/mailman/listinfo/haskell-platform

Reply via email to