-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Main channel vs vanilla #167
Comments
Source code patches are communicated via post-install messages with links. See ghcup-metadata/ghcup-0.0.8.yaml Lines 4596 to 4602 in a6c8849
Patches/fixes to build systems (such as GHC) are not documented properly. E.g., here are all the GHC bindists where I had to backport the DESTDIR bugfix, because GHC developers don't curate their bindists: https://downloads.haskell.org/~ghcup/unofficial-bindists/ghc/curated/
It is definitely not recommended to enable both vanilla and non-vanilla channels. These are "main channels" so to speak and they are self-consistent (e.g. GHC and HLS versions are ABI compatible). Those invariants potentially go out the window if you mix them. I advise against using the vanilla channel for regular users. These are not curated and experience has shown that upstream does not invest a lot of time in bindist quality. |
Thank you for the detailed response.
Ah! That is a valuable invariant. Thank you for pointing it out. It might be helpful to explicitly note in the documentation the guarantees (or |
https://hasufell.github.io/posts/2023-11-14-ghcup-is-not-an-installer.html |
Continuing the discussion from #166.
How to determine the set of patches/fixes applied
For tools whose binaries are available in both
main
andvanilla
channels,say
HLS 2.5.0.0
, what are the differences in terms of the specific"patches/fixes" (as stated in the
README.md
) that are applied tomain
? Howwould an end-user of
ghcup
determine that?Which takes precedence
If one were to enable thevanilla
channel in addition to themain
viabelow, which channel would be given priority when installing tools whose
binaries are available in both channels?
Answering the above myself: ^ reading the source of
config.yaml
inghcup-hs
,it's clear that later entries would win. I.e, in the example above
vanilla
would take precedence over
main
. Fromconfig.yaml
source:Thank you to both the upstream and ghcup maintainers for their continued
efforts.
The text was updated successfully, but these errors were encountered: