diff --git a/flake.nix b/flake.nix index 2b4a11b..5863704 100644 --- a/flake.nix +++ b/flake.nix @@ -24,29 +24,22 @@ }; rustTarget = pkgs.rust-bin.stable.latest.default.override { }; - craneLib = (inputs.crane.mkLib pkgs).overrideToolchain rustTarget; - lib = import ./lib { - inherit - inputs - craneLib - pkgs - ; + dylintLib = import ./mk-lib.nix { + inherit pkgs; + inherit (inputs) crane; }; lints = [ { toolchain = "2025-01-09"; - package = lib.cargo-dylint-general; + package = dylintLib.cargo-dylint-general; } ]; - dylint = lib.mkDylint { inherit lints; }; + dylint = dylintLib.mkDylint { inherit lints; }; in { - packages = lib // { - inherit craneLib; - rust = rustTarget; - }; + mkLib = import ./mk-lib.nix; devShells.default = pkgs.mkShell { nativeBuildInputs = [ diff --git a/lib/default.nix b/lib/default.nix index e0ca238..93be402 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -1,12 +1,11 @@ { pkgs, - inputs, craneLib, ... }: let - callPackage = pkgs.lib.callPackageWith (pkgs // packages // { inherit inputs craneLib; }); + callPackage = pkgs.lib.callPackageWith (pkgs // packages // { inherit craneLib; }); packages = { cargo-dylint = callPackage ./cargo-dylint.nix { }; cargo-dylint-general = callPackage ./cargo-dylint-general.nix { }; diff --git a/mk-lib.nix b/mk-lib.nix new file mode 100644 index 0000000..9c58324 --- /dev/null +++ b/mk-lib.nix @@ -0,0 +1,6 @@ +{ pkgs, crane }: + +import ./lib { + inherit pkgs; + craneLib = (crane.mkLib pkgs).overrideToolchain pkgs.rust-bin.stable.latest.default; +}