From 80de5cc17932bf46e23d9038b0734e713bc344cd Mon Sep 17 00:00:00 2001 From: ProverbialPennance <36955346+ProverbialPennance@users.noreply.github.com> Date: Sat, 18 Apr 2026 15:07:10 +0200 Subject: [PATCH] example flake - add missing deps, pin clang14 (#6531) `Python3`, used for several CMake targets. `Zenity`, a still used runtime dependency. `xorg.libX11` -> `libx11`, packageset deprecated. `imagemagick`, included as per @IQubic's research. `clang_14`, clang-formatter used by decomp, thus also used by HM64 --- docs/BUILDING.md | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/docs/BUILDING.md b/docs/BUILDING.md index 8fcd5966a..55a336aa6 100644 --- a/docs/BUILDING.md +++ b/docs/BUILDING.md @@ -120,19 +120,20 @@ You can use a `flake.nix` file to instantly setup a development environment usin inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + pinned.url = "github:NixOS/nixpkgs/e6f23dc08d3624daab7094b701aa3954923c6bbb"; flake-utils.url = "github:numtide/flake-utils"; }; - outputs = { self, nixpkgs, flake-utils }: + outputs = { self, nixpkgs, pinned, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = nixpkgs.legacyPackages.${system}; + pinned-pkgs = pinned.legacyPackages.${system}; in { devShells.default = pkgs.mkShell { buildInputs = with pkgs; [ # Build tools - clang git cmake ninja @@ -144,6 +145,10 @@ You can use a `flake.nix` file to instantly setup a development environment usin SDL2.dev SDL2_net + # Assets pipeline + python3 + imagemagick + # Other libraries libpng libzip @@ -155,7 +160,7 @@ You can use a `flake.nix` file to instantly setup a development environment usin bzip2 # X11 libraries - xorg.libX11 + libx11 # Audio libraries libogg @@ -166,10 +171,16 @@ You can use a `flake.nix` file to instantly setup a development environment usin libopus.dev opusfile opusfile.dev + + # Runtime dependencies + zenity + ] ++ [ + # Version of clang-format used by decomp + pinned-pkgs.clang_14 ]; shellHook = '' echo "Shipwright development environment loaded" - echo "Available tools: clang, git, cmake, ninja" + echo "Available tools: clang, git, cmake, ninja, python3" ''; }; });