ghc-dot-app

by ghcformacosx

ghcformacosx / ghc-dot-app

Tool to build a relocatable GHC for Mac OS X

122 Stars 8 Forks Last release: over 4 years ago (v7.10.3-r1) Other 53 Commits 17 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

The easy way to install Haskell on Mac!

Want to try Haskell on your Mac without having to use homebrew or even install anything globally? Download a self-contained GHC release here!

What it includes

  • GHC 7.10.3
  • cabal-install 1.22.8.0 (just the binary)
  • stack 0.1.10.0 (just the binary)
  • HTML documentation
  • man pages

Building

To build from this repository you will need an existing installation of GHC such as the self-contained release above.

The

Makefile
will take care of satisfying any dependencies you might need except for Xcode. It leverages
stack
to do everything.

Minimal (no GUI helper)

This will build a relocatable ghc-7.10.3.app in ./dist/build using the binaries of GHC and stack from GitHub. cabal will be built from stack lts-5.4. This does not include the GUI helper.

USAGE:

$ make

To clean up:

$ rm -rf ./dist/

Add this GHC to your PATH (assuming it has moved to /Applications):

export PATH=$HOME/.local/bin:$HOME/.cabal/bin:/Applications/ghc-7.10.3.app/Contents/bin:$PATH

Full (GUI helper with code signing)

USAGE:

$ (cd GHC; xcodebuild)

Will produce a signed release build at

./GHC/build/Release/GHC.app
, if you have setup a signing identity with a Developer ID certificate.

If for some reason there is no icon, first a few obsceneties about Xcode under your breath, and then do a clean build like this:

$ (cd GHC; xcodebuild clean build)

TODO

  • Watch app bundle to see if it moves
  • Help people get out of cabal hell?
  • Pre-install some packages?
  • Make placeholders for GHC that work like xcodeselect?
  • Add shell autocompletion for stack https://github.com/commercialhaskell/stack/wiki/Shell-autocompletion

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.