Skip to content

Instantly share code, notes, and snippets.

@erantapaa
Last active August 29, 2015 14:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save erantapaa/fc7db195c080670c82c7 to your computer and use it in GitHub Desktop.
Save erantapaa/fc7db195c080670c82c7 to your computer and use it in GitHub Desktop.
building hackage-server
Currently hackage-server only builds with GHC 7.6.3.
# Installing ghc 7.6.3 for OSX
# download the GHC 7.6.3 tarball for OSX (64-bit)
# for links to other OSes: https://www.haskell.org/ghc/download_ghc_7_6_3
wget https://www.haskell.org/ghc/dist/7.6.3/ghc-7.6.3-x86_64-apple-darwin.tar.bz2
tar jxf ghc-7.6.3-x86_64-apple-darwin.tar.bz2
cd ghc-7.6.3
mkdir $HOME/apps
./configure --prefix=$HOME/apps
make install
export PATH="$HOME/apps/bin:$PATH"
# Building hackage-server
1. Run `cabal get hackage-server-0.5.0`
2. Copy the following missing files from the hackage-server github repo
https://github.com/haskell/hackage-server
- Distribution/Server/Features/AdminFrontend.hs
- Distribution/Server/Framework/HtmlFormWrapper.hs
3. Add `network-uri` to the build-depends of the the targets hackage-server, hackage-build and hackage-mirror.
4. Make sure `ghc` will invoke ghc-7.6.3.
5. Run `cabal install`
Diffs for step 3:
--- ../hackage-server-0.5.0/hackage-server.cabal 2015-02-02 20:02:26.000000000 -0600
+++ hackage-server-0.5.0/hackage-server.cabal 2015-02-02 19:51:23.000000000 -0600
@@ -229,6 +229,7 @@
build-depends:
base == 4.*,
+ network-uri,
filepath >= 1.1,
directory >= 1.0 && < 1.3,
random >= 1.0,
@@ -311,6 +312,7 @@
Distribution.Server.Util.Merge
build-depends:
base,
+ network-uri,
containers, array, vector, bytestring, text, pretty,
filepath, directory,
time, old-locale, random,
@@ -333,6 +335,7 @@
Distribution.Server.Util.Merge
build-depends:
base,
+ network-uri,
containers, array, vector, bytestring, text, pretty,
filepath, directory, process >= 1.0,
time, old-locale,
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment