Closed hhugo closed 1 week ago
I was going to create a new issue, but instead, I'll add some context here.
When opam finds an existing installation, it tries to run setup-x86_64.exe
to update the installation. However, the command it runs (or suggests that you run in another terminal window) does not include --site
, so a popup dialog prompts the users to select a mirror. In my case, on Windows 2022 Server Core, that dialog is non-responsive, and I have to abort, and in your case, you can't see the dialog as it's running in GitHub actions.
Excellent !
The dialog being non-responsive is probably expected with --quiet-mode noinput
.
For my use case, it's only after the cache is restored that it hangs. I imagine that cygwin remembers the site if called multiple time but that knowledge is lost after the cache restoration.
It's possible to work around this by setting rootdir
in HKLM\SOFTWARE\Cygwin\setup
to D:\cygwin
as part of setup-ocaml. In fact, I'm not so sure it's a workaround, but something it should be doing routinely.
The setup-ocaml issue was fixed by https://github.com/ocaml/setup-ocaml/pull/817 and release in ocaml/setup-ocaml@v3.0.0-beta
Indeed - I think there's no further action required on opam's side for this one
Trying to use opam 2.2 from ocaml-setup Setup-ocaml.v3alpha uses a separate cygwin root so that it can cache it separately from opam. After restoring a cygwin cache and the opam one. cygwin-setup (called by opam) hangs without any logs.
See https://github.com/ocaml/Zarith/actions/runs/9596506376/job/26463523796