rec { project3 = file-manager; file-manager = { pkgs, inputs }: let inherit (inputs) crane fenix; toolchain = fenix.packages.${pkgs.system}.complete.withComponents [ "rustc" "rust-std" "cargo" "rust-docs" "rustfmt" "clippy" "rust-src" ]; craneLib = (crane.mkLib pkgs).overrideToolchain toolchain; commonArgs = { src = craneLib.cleanCargoSource ./.; strictDeps = true; buildInputs = with pkgs; [ pkg-config fontconfig wayland wayland-protocols wayland-scanner vulkan-loader libxkbcommon xorg.libxcb xorg.libX11 xorg.libXcursor xorg.libXi xorg.libXrandr xorg.libXxf86vm ]; passthru.commonArgs = commonArgs; }; cargoArtifacts = craneLib.buildDepsOnly commonArgs; crate = craneLib.buildPackage (commonArgs // { inherit cargoArtifacts; }); in crate; }