Skip to content

Commit 156e2db

Browse files
committed
add 'shell.nix' to Scripts
with the power of nix package manager, this file provides information about required packages for building and running the project. a nix shell can be started by navigating into Scripts forlder and running `nix-shell`
1 parent 72af968 commit 156e2db

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

Scripts/shell.nix

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
/*
2+
*
3+
*/
4+
5+
{ pkgs ? import <nixpkgs> {} }:
6+
7+
pkgs.mkShell {
8+
buildInputs = with pkgs; [
9+
10+
# dev tools
11+
python3
12+
clang # for clang-format
13+
14+
# build tools
15+
pkg-config
16+
gcc
17+
gdb
18+
cmake
19+
ninja
20+
21+
# rayx-core dependencies
22+
boost
23+
hdf5
24+
25+
# rayx-ui dependencies
26+
glslang
27+
vulkan-headers
28+
vulkan-loader
29+
vulkan-validation-layers
30+
vulkan-tools
31+
vulkan-tools-lunarg
32+
vulkan-utility-libraries
33+
34+
# SDL dependencies
35+
xorg.libX11
36+
xorg.libXext
37+
xorg.libXrandr
38+
xorg.libXcursor
39+
xorg.libXi
40+
xorg.libXinerama
41+
xorg.libXScrnSaver
42+
libxkbcommon
43+
wayland
44+
libdrm
45+
mesa
46+
alsa-lib
47+
dbus
48+
libudev-zero
49+
];
50+
51+
shellHook = ''
52+
export CMAKE_PREFIX_PATH=${pkgs.boost}:${pkgs.hdf5}:${pkgs.cmake}:${pkgs.pkg-config};
53+
export VK_LAYER_PATH="${pkgs.vulkan-validation-layers}/share/vulkan/explicit_layer.d";
54+
'';
55+
}

0 commit comments

Comments
 (0)