diff --git a/flake.nix b/flake.nix index b728f33..d785db3 100644 --- a/flake.nix +++ b/flake.nix @@ -80,6 +80,7 @@ in { inherit (pkgs.me) linux-lava spotify-adblock; + linux-lava-ccache = pkgs.me.linux-lava.override { useCcache = true; }; }; }; } diff --git a/overlays/linux-lava.nix b/overlays/linux-lava.nix index d83fb98..4cfa1a4 100644 --- a/overlays/linux-lava.nix +++ b/overlays/linux-lava.nix @@ -10,12 +10,11 @@ self: super: let echo " -resource-dir=${llvmPackages.libclang.lib}/lib/clang/${clangVersion}" >> $out/nix-support/cc-cflags ''; }; - stdenv = super.ccacheStdenv.override { - stdenv = super.overrideCC llvmPackages.stdenv cc; - }; + stdenv = super.overrideCC llvmPackages.stdenv cc; + ccacheStdenv = super.ccacheStdenv.override { inherit stdenv; }; in { linuxLavaEnv = { - inherit llvmPackages clangVersion cc stdenv; + inherit llvmPackages clangVersion cc stdenv ccacheStdenv; }; rust-bindgen-unwrapped = super.rust-bindgen-unwrapped.override { clang = cc; diff --git a/packages/linux-lava/default.nix b/packages/linux-lava/default.nix index a4623d9..0287a51 100644 --- a/packages/linux-lava/default.nix +++ b/packages/linux-lava/default.nix @@ -3,6 +3,7 @@ , inputs , lib , linuxLavaEnv +, useCcache ? false , ... } @ args: @@ -10,7 +11,7 @@ let sources = callPackage ./sources.nix { inherit inputs; }; kernel = buildLinux (args // { inherit (sources) src kernelPatches; - inherit (linuxLavaEnv) stdenv; + stdenv = if useCcache then linuxLavaEnv.ccacheStdenv else linuxLavaEnv.stdenv; version = "${sources.version}-tkg-Lava"; isZen = true; extraMakeFlags = [ "LLVM=1" "LLVM_IAS=1" ];