-
Notifications
You must be signed in to change notification settings - Fork 25
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
Bump flake inputs and tools #859
Conversation
amesgen
commented
Jan 3, 2024
- Update flake inputs
- Update HLS to 2.5
- Use upstream scriv as Add support for cabal files nedbat/scriv#91 was merged and released in 1.4.0 (latest is 1.5.1 already).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can a non-Nix user confirm that installing scriv like this works and yields a version >=1.4.0?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yup, pip3 install scriv
on mac installs scriv-1.5.1
👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pip3 install scriv --break-system-packages
in Ubuntu also installs scriv-1.5.1
@@ -359,16 +360,16 @@ | |||
"hls-2.4": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have no idea what I'm talking about, but just in case: should the version here match the update in shell.nix
, i.e. hls-2.5
instead of hls-2.4
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file is the Nix flake lock file, which contains the exact pins (eg git commit hashes + further integrity hashes) of everything external used by our flake here, and also all inputs used transitively by flakes we use etc. In this case, hls-2.4
is not a direct input of our flake, but rather a transitive input via haskell.nix.1
We don't use this input ourselves currently (we use HLS 2.5 from Hackage)2, so there is no need to adapt anything to stay in sync with our declared version 2.5.0.0 in shell.nix
. The flake lock file is usually updated automatically by commands like nix flake update
which I ran for this PR, which updated haskell.nix and hence also this transitive flake input, which is why it shows up in the diff.
Hope that makes a bit of sense 😃
Footnotes
-
You can explore the flake graph interactively with eg nix-melt. ↩
-
Motivation why haskell.nix has this input: In the past, HLS didn't compile if you didn't use its own
cabal.project
(which you don't get if you compile it from Hackage as we do ATM), so haskell.nix pinned HLS from GitHub which contains thecabal.project
. ↩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for explaining!