[ANN] GHCup 0.1.17.5

0.1.17.5

The main motivation of this release is making it compatible with the new binary distribution of HLS, which is upcoming soon and will be a dynamically linked distribution. Also see https://github.com/haskell/haskell-language-server/issues/2739.

There are some new features and bugfixes too.

How to upgrade

ghcup upgrade

Or follow https://www.haskell.org/ghcup/ if you haven’t installed yet.

Changelog

  • Implement ghcup run subcommand wrt #137
  • Support installation of dynamic HLS bindists wrt HLS #2675 and #237
  • Fix XDG support when ~/.local/bin is a symlink wrt #311
  • Add support for quilt-style patches wrt #230, by James Hobson
  • Fix redundant upgrade warnings in ghcup upgrade
  • Fix ghcup whereis ghc for non-standard versions wrt #289
  • Don’t print logs to stdout, but stderr
  • Allow unpacking legacy lzma archives wrt #307
  • Allow to disable self-upgrade functionality wrt #305
  • Fix ghcup install ghc --set when ghc is already installed wrt #291

FAQ

Before asking questions, consider reading the FAQ.

6 Likes

Looks to be a bit broken on macOS-arm64. After upgrading, any attempt to invoke ghcup ends in immediate failure. Clean install fails similarly:

$ uname -a
Darwin falloch 21.3.0 Darwin Kernel Version 21.3.0: Wed Jan  5 21:37:58 PST 2022; root:xnu-8019.80.24~20/RELEASE_ARM64_T6000 arm64
$ curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
Welcome to Haskell!
...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 74.3M  100 74.3M    0     0  6511k      0  0:00:11  0:00:11 --:--:-- 6815k
sh: line 122: 34540 Killed: 9               "${GHCUP_BIN}/ghcup" ${args} "$@"
"_eghcup upgrade" failed!
$ ghcup
Killed: 9
$

Has anyone got it working on macOS/arm64? Maybe I’ve screwed my environment somehow. Alternatively, what would help to debug this?

Yes, there seems to be an issue with code signing with stripped binaries, which @simonmic already reported. I have updated said binary and cleaned up the references.

Please just re-run the installer script:

curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh

The binary now will still emit a security warning (which you can somehow disable in system settings), but it won’t crash anymore.

1 Like

I ran into the same issue and using the updated installer script does not resolve the issue:
$ curl --proto ‘=https’ --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh

Welcome to Haskell!


 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                Dload  Upload   Total   Spent    Left  Speed
100  115M  100  115M    0     0  1113k      0  0:01:46  0:01:46 --:--:-- 1411k
sh: line 122: 27796 Killed: 9               "${GHCUP_BIN}/ghcup" ${args} "$@"
"_eghcup upgrade" failed!

Any ideas how the get the installation fixed? 

Thank you in advance

Lars

I’m assuming you’re on mac? There’s some info from @simonmic about manually signing binaries: ghcup mac binaries should be signed (#318) · Issues · Haskell / ghcup-hs · GitLab

Although I thought that shouldn’t be required, because we’re not stripping anymore.

So you could try something like codesign -s - ~/.ghcup/bin/ghcup

1 Like