diff --git a/pkgs/development/compilers/rust/rust-src.nix b/pkgs/development/compilers/rust/rust-src.nix new file mode 100644 index 00000000000..1b819a7f606 --- /dev/null +++ b/pkgs/development/compilers/rust/rust-src.nix @@ -0,0 +1,11 @@ +{ stdenv, rustc }: + +stdenv.mkDerivation { + name = "rust-src"; + src = rustc.src; + phases = [ "unpackPhase" "installPhase" ]; + installPhase = '' + mv src $out + rm -rf $out/{ci,doc,driver,etc,grammar,llvm,rt,rtstartup,rustllvm,test,tools,vendor} + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 033e2df26e4..469f39dae0f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6239,13 +6239,9 @@ with pkgs; inherit rust; }; - rustcSrc = stdenv.mkDerivation { - name = "rust-src"; - src = rust.rustc.src; - phases = ["unpackPhase" "installPhase"]; - installPhase = "mv src $out"; + rustcSrc = callPackage ../development/compilers/rust/rust-src.nix { + inherit (rust) rustc; }; - }); cargo-edit = callPackage ../tools/package-management/cargo-edit { };