I’ve been thinking about GHC recently.  (A quick reminder: there are
binary versions [1], but we can’t use them because some binaries point
to ‘/bin/sh’.)  I believe the following should work for x86_64 and i686:

1. We fetch the source version [2] (manually), adjust ‘/bin/sh’, and
   build everything using a non-Guix GHC.

2. Then we copy the needed binaries somewhere.

3. After that we write a build recipe.  It should fetch the binary
   version of GHC [1], fix ‘/bin/sh’, and replace some binaries with the
   binaries from the second step.

Questions:

1. We’d have to host the binaries (step 2) somewhere and repeat the
   process whenever the hash of ‘/bin/sh’ changes.  How often will this
   happen?

2. Does Guix allow to fetch files from multiple places?  Is it possible
   to use ‘url-fetch’ plus a local file?  Could you show an example?

[1] http://www.haskell.org/ghc/dist/7.0.1/ghc-7.0.1-i386-unknown-linux.tar.bz2
[2] http://www.haskell.org/ghc/dist/7.0.1/ghc-7.0.1-src.tar.bz2

Attachment: pgpMr9U6M1pcv.pgp
Description: PGP signature

Reply via email to