vulkano/flake.nix
2025-04-03 10:17:58 +02:00

68 lines
1.6 KiB
Nix

{
description = "vulkan stuff";
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
systems.url = "github:nix-systems/default-linux";
};
outputs = inputs: let
eachSystem = inputs.nixpkgs.lib.genAttrs (import inputs.systems);
pkgsFor = inputs.nixpkgs.legacyPackages;
in {
packages = eachSystem (system: {
default = inputs.self.packages.${system}.ralc;
ralc = pkgsFor.${system}.callPackage ./nix/package.nix {};
});
devShells = eachSystem (system: {
default = let
# vulkan
vulkan-packages = builtins.attrValues {
inherit
(pkgsFor.${system})
glfw
shaderc
vulkan-volk
vulkan-loader
vulkan-validation-layers
renderdoc
tracy
vulkan-tools-lunarg
;
inherit
(pkgsFor.${system}.shaderc)
bin
static
dev
lib
;
};
in
pkgsFor.${system}.mkShell {
packages = builtins.attrValues {
inherit
(pkgsFor.${system})
cargo
rustc
rustfmt
bacon
vulkan-headers
vulkan-tools
;
inherit
(pkgsFor.${system}.rustPackages)
clippy
;
inherit vulkan-packages;
};
shellHook = ''
echo "Vulkan Developement Shell"
LD_LIBRARY_PATH = "${inputs.nixpkgs.lib.makeLibraryPath vulkan-packages}";
'';
};
});
};
}