NixOS / nixos-hardware

A collection of NixOS modules covering hardware quirks.
Creative Commons Zero v1.0 Universal
1.91k stars 594 forks source link

Store binary caches on Cachix? #325

Open JonathanReeve opened 2 years ago

JonathanReeve commented 2 years ago

It'd be great if there were binary caches somewhere, like on Cachix, since when I try to use the Dell XPS 13 9310 configuration, it tries to rebuild my whole kernel, and you know, ain't nobody got time for that.

samueldr commented 2 years ago

It would need to be done in a way where using nixos-hardware pins to a built/cached Nixpkgs revision. Which may or may not be an issue depending on the needs. I guess as long as only the few leafy components desired are taken from that pinned Nixpkgs, it's less of an issue.

Otherwise it's basically impossible to have all plausible Nixpkgs revision (channel updates) built all the time, in addition to that, it would greatly increase cachix usage needlessly.

Mic92 commented 2 years ago

We could add to our nix-community hydra. But in general we should also aim to move kernel options that trigger kernel rebuilds to nixpkgs rather than having them in nixos-hardware. See also this for the dell xps model in question: https://github.com/NixOS/nixos-hardware/blob/3aabf78bfcae62f5f99474f2ebbbe418f1c6e54f/dell/xps/13-9310/default.nix#L13

Mic92 commented 2 years ago

In hydra one can also define some nixpkgs branch as an input in addition to nixos-hardware and build it this way.

bfcns commented 1 year ago

Is there any way to reduce build time yet? At least a method to rebuild faster? I am new to NixOS, so any direction would be nice.

Mic92 commented 1 year ago

@zimbatm can we enable hydra on this repository?

zimbatm commented 1 year ago

Good idea. Can you add a declarative pipeline to the repo first?

RaitoBezarius commented 1 year ago

@Mic92 can I help you here? I'm planning to push some stuff in nixos-hardware for routers.

zimbatm commented 1 year ago

If you can add a declarative hydra config to this repo, I can then connect it to Hydra.