Seeking community input on change to Haskell.org Downloads page

The Haskell.org committee is considering a change to the Haskell.org Downloads page. The change is being reviewed in a GitHub PR.

The specifics of the change are to replace Chocolatey with ghcup as the preferred installation method of GHC, cabal-install and haskell-language-server on Windows. The overall effect is that the install instructions become common over Windows, Linux and MacOS. The Chocolatey install method is mentioned further down the page. (The PR does not impinge on Stack. The Stack instructions remain unchanged.)

The committee would welcome input from any interested parties, particularly those who have familiarity with Chocolatey, or ghcup on Windows, or both. You are welcome to comment on the PR itself or this Discourse thread.

Thanks to @bodigrim for the PR.

5 Likes

As described in the PR, ghcup will check for choloatey on windows and print a message:

Chocolatey was detected on your system. It is capable of installing the Haskell toolchain as well.
If you want to rather use that instead of ghcup, abort the installation and run the following at an
elevated command prompt:
    choco install haskell-dev
    refreshenv

I think this simplifies the download page without hiding options for those that are already invested in chocolatey.

5 Likes

I support the proposal. Its a clear simplification that improves the overall user experience. ghcup is a much simpler install path for new users, while chocolatey is a great method for those already immersed in the chocolatey ecosystem. Having chocolatey be the main method is roughly equivalent on the mac side to the main method being “brew” – yes, it works well, but there’s a natural resistance to going whole-hog into a full package ecosystem.

Primarily-Windows user here who has been learning Haskell for a few days so far. I was struggling a bit with getting vscode to pick up the right ghc version, it could only ever find the 9.0.1 install that chocolatey added. Would have eventually figured it out, but upon seeing this post I tried installing ghcup out of curiosity.

It installed the version I wanted in this case (8.10.7, better compatibility with Haskell extensions in vscode right now) but beyond that it definitely seems easier to get things done while starting out.

While chocolatey is a great tool for general package management, ghcup seems to win this one imo. Would’ve rather started with ghcup personally.

4 Likes

+1. I’ve been using HVR’s PPA for years, and after it was discontinued I moved to ghcup (early 2021), and it worked like a charm. It’s actually handier to manage several versions of GHC simultaneously, which I routinely do.

I moved from stack to ghcup+stack/cabal on Linux and Windows and now approve promoting it as the method.

I still think the downloads page is somewhat messy, but that’s maybe a different topic. However, it seems to come up frequently. The Haskell Platform page was a bit more ergonomic and modern in terms of UI.

I tried to recreate some of that flair and reworked the ghcup homepage: https://www.haskell.org/ghcup/

I’m not too invested in the downloads page these day, but I think it needs a better UI as well. This one I just created with mkdocs. And I’m really bad at UI.

5 Likes

One more thing about the elevated prompt on Chocolaty, and why it may be prohibitive. A non-negligible part of Haskell users are students. Several US colleges I know use standard virtual images to make the working environment more predictable. Many times those have outdated soft though. And never students have admin permissions. So using ghcup to get a recent GHC is preferable in this situation.

2 Likes