-
-
Notifications
You must be signed in to change notification settings - Fork 15.4k
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
Carnix: 0.9 -> 0.10 #58394
Carnix: 0.9 -> 0.10 #58394
Conversation
]; | ||
|
||
|
||
# end | ||
# aho-corasick-0.6.8 |
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.
Does this need multiple versions of the same packages?
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 believe it's pretty common for that particular dependency (aho-corasick).
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.
No wait, I replied too fast. No, it doesn't, but other packages might need the other version (crates-io.nix is common to all Rust packages in nixpkgs).
Just curious: is |
@ln-nl I don't know. At the moment it is, but if this becomes problematic (i.e. too big) we might want to find ways to refactor it / trim it at some point, |
cc @Mic92 @GrahamcOfBorg build carnix cargo-vendor |
cc @andir |
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.
While I also see the issue of ever growing crates-io.nix
we haven't come up with a better strategy just yet...
I build one of my side-projects (https://broken.sh) using a nix expression generated by the newer carnix version from this PR. Works just fine.
A while ago I thought about handling the issue with the always growing crates-io.nix
file. To solve it and still provide all the Dependencies for all the buildRustCrate
consumers in nixpkgs we can either
- list all of the crates on crates.io -> I think this is a bit over the top
- (re)generate the list regulary (on every change to the file?) by querying all the consumers about their dependencies and then merging them again..
For the 2nd option I hacked a PoC (https://gist.github.com/andir/c637c78450e6ae7815d98e7fa08d45dd) that illustrates my idea.. But that is something for another PR/issue/... .
Motivation for this change
Carnix 0.10 can handle even trickier crates such as Sequoia-PGP.
Things done
sandbox
innix.conf
on non-NixOS)nix-shell -p nix-review --run "nix-review wip"
./result/bin/
)nix path-info -S
before and after)