Haskell GHC has dropped explicit support for FreeBSD.

I am trying to develop a small project in Haskell. GHCup is the officially provided installer for GHC ( compiler ) and for Haskell development tools such as Haskell language server, ghci, ghcid, cabal, and stack. I was following the directions for installation of GHCup on FreeBSD ( https://www.haskell.org/ghcup/install ) but installation on FreeBSD 13.2 failed due to error, "Unable to find a download for the requested version/distro". When I inquired to GHCup development team I was informed that, "GHC has dropped explicit support for FreeBSD. New releases don't have upstream bindists." ( https://github.com/haskell/ghcup-hs/issues/834 )
Fresh ports does allow for install of GHC and cabal, but it seems that GHCup seems to be the preferred way to manage the Haskell toolchain for much of the Haskell user community and is referenced by many Haskell tutorials. I'm not sure what can be done about this but wanted to bring it to the attention of the FreeBSD community.
 
Is anything you need missing from FreeBSD ports/packages? If so, the focus should be to add the missing ports. And if not, just install with pkg or from ports.

it seems that GHCup seems to be the preferred way to manage the Haskell toolchain for much of the Haskell user community
If that's indeed the case, it still doesn't mean it makes a lot of sense. IMHO, all these tools basically reinventing package management are a pest leading to maintenance issues (you don't have a single tool any more that's in full control of installed software). Again IMHO, the only excuse for using them is when your OS doesn't offer well-working unified package management (like e.g. Windows).
 
I'm having this same issue right now.😢
Following zirias@ recommendation and so far so good. I would add that sometimes tool chain versioning for some languages is sometimes required due to poor backwards compatibility support in some libs and softwares, but that is a whole other issue...

Looks like help is needed on the Haskell side if we want to keep up with latest FreeBSD support for GHCup:
https://gitlab.haskell.org/groups/ghc/-/epics/5 🤔
 
The problem with ghcup are missing FreeBSD bindists for GHC (separate team from ghcup devs). I second zirias@ opinion about additional "package" managers, but they (I suspect) are there to help less advanced users in setting paths for executables and libraries.
It looks like even VS Code and it's Haskell plugin for haskell language server considers ghcup as one of configuration options.

My current setup is based on packages installed from FreeBSD repository - ghc and haskell-language-server. I do not use ghcup (because of missing bindists).
For Haskell package management I use stack. For coding - VS code.The only problem I have currently - is matching proper haskell-language-server and ghc, especially when using "older" compiler versions (9.2.x).

I'm very happy with repository packages, but I miss something similar to alternatives allowing to switch easily between compiler (ghc) and tooling(hls).

I would gladly help with building and even hosting FreeBSD ghc bindists, although I strongly believe this job is already done by package maintainers. Maybe it's just about contacting them(maintainers) with ghcup team and providing links for missing bindists.
 
Back
Top