doesn’t nixos-rebuild use cachix by default? I haven’t tinkered with anything I just see that some packages that were altered very recently need to rebuild and other packages come pre-compiled as binaries. I assumed that cachix came into play
then it will pull from master, which includes basically everything that is being merged at any given moment (except for stuff going into staging branches first.) If you want some kind of stability, you would want to try a channel, e.g. nixos-unstable:
This will track the nixos-unstable branch of the nixpkgs repository, which is updated by Hydra when the respective job succeeds. You can find a bit more information on what exactly that job tests before considering a given revision passing on the Wiki and surely other sources, but it runs some of the NixOS tests.
This branch can fall behind by a few days sometimes, so you might prefer the somewhat stripped down nixos-unstable-small branch if you prefer something a bit more up-to-date.
I’m using nixos-unstable so I guess the problem is that some non-critical packages that fail to build are not considered breaking and the unstable branch gets updated even though some packages fail to build?
I’m not exactly sure how much of Nixpkgs is covered by nixos/trunk-combined/tested to be honest. I know where the job is defined, but I haven’t really dug enough to understand the scope. I’m kind of curious, though, if anyone happens to know.
That said it is definitely accurate to say this does not cover all of the packages. (As mentioned directly above me unfree packages are not covered, I’m also aware some things are disabled in Hydra because they have trouble succeeding in it, and I believe only a minimal amount of cross packages are cached, e.g. pkgsMusl.stdenv.)
Out of curiosity, are there particular packages that have proven problematic?
random packages at times, there’s no consistent pattern. I can remember kicad and then another package that needed a python32 related fix.
these happened about a month apart so it’s definitely not a problem, I can either use an earlier revision or wait a day or two and it gets fixed (haven’t been fast enough to fix a package till now) but I’ve caught the nix perfectionist bug
Yep, understandable. I’ve definitely ran into problems where it’s just a result of nixos-unstable being broken and I have to hold it back. nixos-unstable is almost good naturally as a rolling release distro, but sometimes it’s a little more unstable than would be ideal. At least atomic upgrades and rollbacks ease the pain a little.
I would love to see this situation improved, but it does seem like it’s a hard problem; nixos-unstable already doesn’t move as fast as I’d like. But, I assume any meaningfully large improvement will either require a lot of thinking, buckets of money, or possibly both.