Addition of Nix flake development shell (#4184)

* Initial devshell creation.

* cmake has a check for clang and therefore override the stdenv.

* Packages from old shell were renamed.

* fixed xcb-util, added libglvnd

* Added sdl3 dependencies provided by the website given on cmake configuration.

* Lock file.

* Nix format.

* Added instructions for entering nix development shell.

.

* Added libuuid

* Added copyright text to flake.nix

* Added flake.lock to REUSE.toml as is a JSON file without comment support.

* Updated instructions to refer to new build name.

* Compiling however not yet correctly linking with debug derivation.

* Hitting installPhase

* Added nix result symlink.

* correctly installs in place

* Added a wrapper to load vulkan and ligl into environment.

* Ensure that the name is applicable to the current project.

.

* Added mesa to LD_LIBRARY_PATH

* game now launching with added X11 libraries.

* Cleanup

Formatting.

Pulled cmakeFlags to top and added releaseWithDebugInfo

Removed LD_LIBRARY_PATH from devshell.

.

* Added options for the different Nix build modes.

* Debug / release mode flag cannot be bundled into one.
This commit is contained in:
Connor Garey
2026-03-30 21:35:57 +01:00
committed by GitHub
parent a87abee8e3
commit 969955b8a0
5 changed files with 209 additions and 1 deletions
+17
View File
@@ -53,6 +53,23 @@ sudo zypper install clang git cmake libasound2 libpulse-devel \
nix-shell shell.nix
```
#### Nix Flake Development Shell
```bash
nix develop
cmake -S . -B build/ -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
ln -s ./build/compile_commands.json .
```
#### Nix Flake Build
```bash
nix build .?submodules=1#linux.debug
```
```bash
nix build .?submodules=1#linux.release
```
```bash
nix build .?submodules=1#linux.releaseWithDebugInfo
```
#### Other Linux distributions
You can try one of two methods: