37 lines
No EOL
930 B
Nix
37 lines
No EOL
930 B
Nix
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;
|
|
} |