You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Julian Ospald 21917dea3e Yeah 1 day ago
app Initial commit 1 month ago
lib Yeah 1 day ago
test Initial commit 1 month ago
.gitignore Add .gitignore 1 month ago Initial commit 1 month ago
LICENSE Initial commit 1 month ago Basic version of 'downloadURL' 1 month ago
Setup.hs Initial commit 1 month ago Blah 3 weeks ago
cabal.project More stuff 1 day ago
cabal.project.freeze Yeah 1 day ago
ghcup.cabal Yeah 1 day ago Blah 3 weeks ago


A rewrite of ghcup in haskell. This can be used as a library and may be redistributed as a binary in the future.


ghcup has increasingly become difficult to maintain. A few reasons:

More benefits of a rewrite:

  • Features such as installing release candidates or HEAD builds can be more conveniently implemented in a rewrite
  • Refactoring will be easier
  • Better tool support (such as linting the downloads file)
  • saner downloads file format (such as JSON)

However, the downside will be:

  • building static binaries for all platforms (and possibly causing SSL/DNS problems)
  • still bootstrapping those binaries via a POSIX sh script


  • Correct low-level code
  • Good exception handling
  • Easier user interface (possibly interactive and non-interactive ones)