diff --git a/nix/packages/default.nix b/nix/packages/default.nix index 13e124dbd..afc032557 100644 --- a/nix/packages/default.nix +++ b/nix/packages/default.nix @@ -9,8 +9,10 @@ self', lib, pkgs, + inputs', system, craneLib, + mkToolchain, ... }: { @@ -19,7 +21,7 @@ mkPackages = pkgs: let - fnx = inputs.fenix.packages.${system}; + fnx = inputs'.fenix.packages; isStatic = pkgs.stdenv.hostPlatform.isMusl; @@ -28,7 +30,7 @@ if isStatic then fnx.combine [ self'.packages.stable-toolchain - (fnx.targets.${pkgs.stdenv.hostPlatform.config}.stable).rust-std + (mkToolchain fnx.targets.${pkgs.stdenv.hostPlatform.config}).rust-std ] else self'.packages.stable-toolchain @@ -62,7 +64,6 @@ in { inherit default max-perf max-perf-haswell; - }; in { diff --git a/nix/rust.nix b/nix/rust.nix index 304d0c637..5dd5a614a 100644 --- a/nix/rust.nix +++ b/nix/rust.nix @@ -2,22 +2,26 @@ { perSystem = { - system, lib, + inputs', pkgs, ... }: + let + mkToolchain = + target: + target.fromToolchainName { + name = (lib.importTOML "${inputs.self}/rust-toolchain.toml").toolchain.channel; + sha256 = "sha256-mvUGEOHYJpn3ikC5hckneuGixaC+yGrkMM/liDIDgoU="; + }; + in { + _module.args = { inherit mkToolchain; }; + packages = let - fnx = inputs.fenix.packages.${system}; - - stable-toolchain = fnx.fromToolchainFile { - file = inputs.self + "/rust-toolchain.toml"; - - # See also `rust-toolchain.toml` - sha256 = "sha256-sqSWJDUxc+zaz1nBWMAJKTAGBuGWP25GCftIOlCEAtA="; - }; + fnx = inputs'.fenix.packages; + stable-toolchain = (mkToolchain fnx).toolchain; in { inherit stable-toolchain;