Julian Ospald
June 07, 2024
The default installer:
ghcup install ghchttps://hasufell.github.io/posts/2023-11-14-ghcup-is-not-an-installer.html
 installer (portable)
 distribution channel
 feedback channel
testing/QA gateway
 provider of sane defaults (e.g. “recommended” GHC
version)
 glue for holistic toolchain experience
 CI provisioning (e.g. github actions)
.tar.gz/.zip)show all available tools / versions
install a tool
make a tool version the default
remove a tool version
root dir
GHC and HLS are installed into sub-directories
bin directory is mostly symbolic links (compare with update-alternatives)
Gather system information:
GHCup.PlatformSystem.Info.arch and System.Info.os
(compile-time strings)/etc/os-release
Map binaries to systems:
ldconfig -p
output)
~/.ghcup/config.yaml)GHCUP_INSTALL_BASE_PREFIX (default
$HOME)ghcup install ghc -u <url> <version>url-source (selecting and mixing “channels”)
GHCupURLStackSetupURLHead over to https://github.com/haskell/ghcup-hs/issues/1074
(zurihac labeled issue).
…