nix improvements: auto-advancing, caching, and completions #10478
Replies: 6 comments
-
The caching part might be covered by #1717 - is cachix along the lines of what you were thinking? Also, the build/cache service sounds similar to hydra, no? |
Beta Was this translation helpful? Give feedback.
-
Yes, but I think on that point specifically my ideation is growing beyond "just another cachix" repo. There are implications to having to list+trust numerous caches - every cache can provide every store path, thus every cache can poison any path, and similarly every cache can need to be queried for every path (and there are potentially some client implementation details here that come into play). I think I'm going to run with the idea of an externally-driven cache, just because I get the gut instinct from the interest in nixpkgs-wayland that there are enough Nix users wanting to be on the cutting edge that there would be some use. I can share details about that here, but again, no reason for that to block just a simple push to a helix cachix repo in the build job. (which can be setup very quickly with the Cachix GitHub Action) For the sake of issue sanity, I'm fine with changing the scope of this issue to track just:
|
Beta Was this translation helpful? Give feedback.
-
Zellij's flake has some nice goodies: here it sets up the completions and installs the logo, desktop items, etc. plus a man page. The completions themselves are setup by Clap. Helix uses a custom arg parser though so this would probably take some manual work to add completions to Helix. |
Beta Was this translation helpful? Give feedback.
-
cc: @the-mikedavis This is something else I was thinking about https://github.com/DeterminateSystems/update-flake-lock/ though in my nix repos I stll do it by hand right now and just have it auto-merge it after rebuid/testing rather than sending a PR. |
Beta Was this translation helpful? Give feedback.
-
completions: #2022 |
Beta Was this translation helpful? Give feedback.
-
It would be nice if we could cache flake outputs for platforms other than just Something like https://github.com/docker/setup-qemu-action might make this possible. I haven't done any testing, but I wonder whether we could get things working just by running that action, then adding the platforms to the container's nix config under |
Beta Was this translation helpful? Give feedback.
-
Hi,
I noticed that some cool Rust projects are adding flakes and I'm hoping we can get feature parity across them, and serve as a template for others. The current nix support is missing:
zellij
's recently added support does this) (at least, I don't see this in the flake, and I don't seem to have it active)Somewhat separately...
I'm pondering a community provided build/cache service. Flakes would make this really easy, and the community provided service could even basically serve as a CI offload -- imagine that helix only runs CI every day, but nix-community runs it every hour. Unless you get really unfortunate, and if you trusted the community's cache, then it would mean that y'all nix builds would basically become no-ops.
Beta Was this translation helpful? Give feedback.
All reactions