From 28573ba11fd45a228faba391047ef7a3364d8c72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jalil=20David=20Salam=C3=A9=20Messina?= Date: Sun, 13 Jul 2025 18:49:59 +0200 Subject: [PATCH] refactor(package): share more stuff This should hopefully speed up the nix evals --- default.nix | 22 ++++++++++++---------- flake-modules/package.nix | 3 +-- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/default.nix b/default.nix index 28e3808..16b5c9b 100644 --- a/default.nix +++ b/default.nix @@ -1,15 +1,16 @@ +let + inherit (builtins.getFlake (builtins.toString ./.)) inputs; +in { - pkgs ? - (builtins.getFlake (builtins.toString ./.)).inputs.nixpkgs.legacyPackages.${builtins.currentSystem}, + pkgs ? inputs.nixpkgs.legacyPackages.${builtins.currentSystem}, lib ? pkgs.lib, - crane ? (builtins.getFlake (builtins.toString ./.)).inputs.crane, - pkgSrc ? ./., + crane ? inputs.crane, + craneLib ? crane.mkLib pkgs, + cargoArtifacts ? null, + src ? craneLib.cleanCargoSource ./., mold ? pkgs.mold, }: let - craneLib = crane.mkLib pkgs; - src = craneLib.cleanCargoSource pkgSrc; - commonArgs = { inherit src; strictDeps = true; @@ -26,12 +27,13 @@ let mainProgram = "webnsupdate"; }; }; - - cargoArtifacts = craneLib.buildDepsOnly commonArgs; in craneLib.buildPackage ( lib.mergeAttrsList [ commonArgs - { inherit cargoArtifacts; } + { + cargoArtifacts = + if cargoArtifacts == null then craneLib.buildDepsOnly commonArgs else cargoArtifacts; + } ] ) diff --git a/flake-modules/package.nix b/flake-modules/package.nix index 1d488d0..3a7411b 100644 --- a/flake-modules/package.nix +++ b/flake-modules/package.nix @@ -44,8 +44,7 @@ in { inherit cargoArtifacts; } ]; webnsupdate = pkgs.callPackage ../default.nix { - inherit crane; - pkgSrc = src; + inherit craneLib cargoArtifacts src; }; in { -- 2.50.0