!coeAONBrWyDJnYMbMi:nixos.org

NixOS System Operations

631 Members
About system administration for running NixOS systems in production. Declaratively manage your operations. | Room recommendations: #networking:nixos.org175 Servers

Load older messages


SenderMessageTime
26 Nov 2024
@tfritz:matrix.orgtfritz joined the room.20:32:00
27 Nov 2024
@o-santi:matrix.orgLeonardo Santiago I have about 150~ machines under nixosConfigurations in a single flake, and nix flake check takes around 30 minutes to run. Any tips on how to make it faster? 13:50:59
@adam:robins.wtfadamcstephensmaybe nix-fast-build?14:09:30
@hexa:lossy.networkhexawondering how many nixpkgs you are instantiating 🤔14:09:54
@adam:robins.wtfadamcstephensis check on a nixosConfig just an eval?14:10:38
@etehtsea:matrix.orgkis-kis joined the room.15:15:22
@etehtsea:matrix.orgkis-kis changed their display name from kshabanov to kis-kis.15:16:28
@birhaman:pub.solarBirhaman changed their profile picture.19:28:13
@birhaman:pub.solarBirhaman changed their profile picture.19:28:33
@birhaman:pub.solarBirhaman changed their profile picture.19:29:02
@birhaman:pub.solarBirhaman removed their profile picture.19:29:25
@birhaman:pub.solarBirhaman set a profile picture.19:31:40
@enderbsd:matrix.orgenderbsd joined the room.20:14:35
@magic_rb:matrix.redalder.orgmagic_rbIt also builds iirc22:51:04
@thedragon44:matrix.orgTheDragon left the room.23:33:46
28 Nov 2024
@loaonline:matrix.orgloaonline joined the room.02:21:37
@sheeeng:matrix.orgsheeeng joined the room.07:45:34
@o-santi:matrix.orgLeonardo Santiago

wondering how many nixpkgs you are instantiating 🤔
should be just one, they're all using the same one.

13:21:34
@o-santi:matrix.orgLeonardo Santiago *

wondering how many nixpkgs you are instantiating 🤔

should be just one, they're all using the same one.

13:21:44
@o-santi:matrix.orgLeonardo Santiago

It also builds iirc

yes, but even with --no-build it's still painfully slow. it's the same default check, and most of the structure should be shared for all of them, it seems to me that nix must be re-evaluating a ton for it to take that much time

13:22:48
@elvishjerricco:matrix.orgElvishJerricco
In reply to @o-santi:matrix.org

wondering how many nixpkgs you are instantiating 🤔

should be just one, they're all using the same one.

Just because they're using the same nixpkgs flake input doesn't mean they're using the same nixpkgs instance. Each nixos config by default re-imports nixpkgs (re-evaluates it) so that it can apply its custom nixpkgs.* nixos options to the import
13:36:58
@o-santi:matrix.orgLeonardo Santiago hmm, but they should all be using the exact same nixpkgs.lib.nixosSystem call. is there any way to avoid re-evaluating nixpkgs? 13:37:49
@elvishjerricco:matrix.orgElvishJerricco right but each of those calls does (effectively) import ./. { /* ... */ } in the nixpkgs flake 13:38:34
@elvishjerricco:matrix.orgElvishJerricco You can avoid re-evaluating by setting pkgs in the nixosSystem call, I believe. Or by setting the nixpkgs.pkgs nixos option. Either of this will break anything in the nixpkgs.* nixos options (though I think that module yells at you about that now so it'll be obvious) 13:39:59
@elvishjerricco:matrix.orgElvishJerricco * You can avoid re-evaluating by setting pkgs in the nixosSystem call, I believe. Or by setting the nixpkgs.pkgs nixos option. Either of these will break anything in the nixpkgs.* nixos options (though I think that module yells at you about that now so it'll be obvious) 13:40:16
@elvishjerricco:matrix.orgElvishJerriccothat said, I'm not even sure nixpkgs eval is the slowest part tbh. NixOS module evaluation might be worse, and you're not going to get that to be shared13:41:15
@o-santi:matrix.orgLeonardo Santiago
In reply to @elvishjerricco:matrix.org
that said, I'm not even sure nixpkgs eval is the slowest part tbh. NixOS module evaluation might be worse, and you're not going to get that to be shared
I imagined it, which is sad. the design is pretty modular, as in, it should be able to evaluate the modules separately and then just re-use them for all configs. I was wondering if there was a way to restructure my code to do it like that.
13:53:08
@elvishjerricco:matrix.orgElvishJerriccoI mean that's not really possible13:53:36
@o-santi:matrix.orgLeonardo Santiago but I don't know enough about the internals of nix flake check for that 13:53:37
@elvishjerricco:matrix.orgElvishJerriccoany module can affect any other module arbitrarily13:53:43

There are no newer messages yet.


Back to Room ListRoom Version: 10