|
10 | 10 | # https://devenv.sh/packages/ |
11 | 11 | packages = |
12 | 12 | (with pkgs; [ |
13 | | - # |
14 | 13 | # Common development tools |
15 | | - # |
16 | 14 | cmake |
17 | 15 | ninja |
18 | 16 | pkg-config |
|
26 | 24 | spirv-headers |
27 | 25 | glslang |
28 | 26 |
|
29 | | - # Platform-specific shader compilers |
| 27 | + # Shader compilers |
30 | 28 | shaderc |
| 29 | + directx-shader-compiler |
| 30 | + |
| 31 | + # Vulkan validation |
| 32 | + vulkan-validation-layers |
31 | 33 |
|
32 | 34 | # Math library for examples |
33 | 35 | glm |
34 | 36 | ]) |
35 | 37 | # macOS specific packages |
36 | 38 | ++ lib.optionals pkgs.stdenv.isDarwin [ |
37 | | - pkgs.directx-shader-compiler |
38 | 39 | pkgs.moltenvk |
39 | | - pkgs.vulkan-validation-layers |
40 | | - ] |
41 | | - ++ lib.optionals (!pkgs.stdenv.isDarwin) [ |
42 | | - pkgs.directx-shader-compiler |
43 | 40 | ] |
44 | 41 | # SDL2 from pinned nixpkgs |
45 | 42 | ++ [ inputs.nixpkgs-sdl2.legacyPackages.${pkgs.system}.SDL2 ] |
46 | 43 | ++ lib.optionals pkgs.stdenv.isLinux (with pkgs; [ |
47 | | - # |
48 | 44 | # Linux specific packages |
49 | | - # |
50 | 45 | clang |
51 | 46 | clang-tools |
52 | 47 | lldb |
|
58 | 53 | xorg.libX11 |
59 | 54 | xorg.libXrandr |
60 | 55 | xorg.libXi |
61 | | - vulkan-validation-layers |
62 | 56 | ]) |
63 | 57 | # Note: On macOS, we use the system SDK via Xcode, so we don't need |
64 | 58 | # to include Darwin frameworks from nixpkgs here. |
|
131 | 125 | enterShell = lib.optionalString pkgs.stdenv.isDarwin '' |
132 | 126 | export DEVELOPER_DIR="$(/usr/bin/readlink /var/db/xcode_select_link)" |
133 | 127 | export SDKROOT="$DEVELOPER_DIR/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk" |
| 128 | +
|
134 | 129 | # Use system clang instead of Nix's clang-wrapper |
135 | 130 | export PATH="$DEVELOPER_DIR/Toolchains/XcodeDefault.xctoolchain/usr/bin:$DEVELOPER_DIR/usr/bin:$PATH" |
| 131 | +
|
136 | 132 | # Use system xcrun instead of Nix's xcbuild version (avoids Metal compiler warnings) |
137 | 133 | export PATH="${pkgs.runCommand "xcrun-wrapper" {} "mkdir -p $out/bin && ln -s /usr/bin/xcrun $out/bin/xcrun"}/bin:$PATH" |
138 | 134 | ''; |
|
0 commit comments