flake.nix: Construct legacyPackages in one go
This saves the construction of an unused `pkgs` attrset and all that is required to reach that, which is not a lot, but still significant. Benchmark 1: nix eval .?ref=42608bc8e65c5bf596d6155ad2f0ded6253b1e69#hello.outPath --no-eval-cache Time (mean ± σ): 1.062 s ± 0.011 s [User: 0.674 s, System: 0.226 s] Range (min … max): 1.040 s … 1.080 s 10 runs Benchmark 2: nix eval .?ref=8a7e18b270cb2256a0526b9cda1d9e410aacd440#hello.outPath --no-eval-cache Time (mean ± σ): 1.317 s ± 0.033 s [User: 0.835 s, System: 0.270 s] Range (min … max): 1.282 s … 1.371 s 10 runs Summary nix eval .?ref=42608bc8e65c5bf596d6155ad2f0ded6253b1e69#hello.outPath --no-eval-cache ran 1.24 ± 0.03 times faster than nix eval .?ref=8a7e18b270cb2256a0526b9cda1d9e410aacd440#hello.outPath --no-eval-cache (where 42608bc had the same tree as this commit)
This commit is contained in:
parent
bd3d85928a
commit
b78a8c9109
13
flake.nix
13
flake.nix
@ -209,11 +209,14 @@
|
||||
*/
|
||||
legacyPackages = forAllSystems (
|
||||
system:
|
||||
(import ./. { inherit system; }).extend (
|
||||
final: prev: {
|
||||
lib = prev.lib.extend libVersionInfoOverlay;
|
||||
}
|
||||
)
|
||||
(import ./. {
|
||||
inherit system;
|
||||
overlays = import ./pkgs/top-level/impure-overlays.nix ++ [
|
||||
(final: prev: {
|
||||
lib = prev.lib.extend libVersionInfoOverlay;
|
||||
})
|
||||
];
|
||||
})
|
||||
);
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user