godot_4 4.0.3-stable -> 4.1-stable https://github.com/godotengine/godot/releases attrpath: godot_4 Checking auto update branch... No auto update branch exists Old version 4.0.3-stable" not present in master derivation file with contents: { stdenv , lib , fetchFromGitHub , pkg-config , autoPatchelfHook , installShellFiles , scons , vulkan-loader , libGL , libX11 , libXcursor , libXinerama , libXext , libXrandr , libXrender , libXi , libXfixes , libxkbcommon , alsa-lib , libpulseaudio , dbus , speechd , fontconfig , udev , withPlatform ? "linuxbsd" , withTarget ? "editor" , withPrecision ? "single" , withPulseaudio ? true , withDbus ? true , withSpeechd ? true , withFontconfig ? true , withUdev ? true , withTouch ? true }: assert lib.asserts.assertOneOf "withPrecision" withPrecision [ "single" "double" ]; let options = { # Options from 'godot/SConstruct' platform = withPlatform; target = withTarget; precision = withPrecision; # Floating-point precision level # Options from 'godot/platform/linuxbsd/detect.py' pulseaudio = withPulseaudio; # Use PulseAudio dbus = withDbus; # Use D-Bus to handle screensaver and portal desktop settings speechd = withSpeechd; # Use Speech Dispatcher for Text-to-Speech support fontconfig = withFontconfig; # Use fontconfig for system fonts support udev = withUdev; # Use udev for gamepad connection callbacks touch = withTouch; # Enable touch events }; in stdenv.mkDerivation rec { pname = "godot"; version = "4.1-stable"; src = fetchFromGitHub { owner = "godotengine"; repo = "godot"; rev = version; hash = "sha256-v9qKrPYQz4c+xkSu/2ru7ZE5EzKVyXhmrxyHZQkng2U="; }; nativeBuildInputs = [ pkg-config autoPatchelfHook installShellFiles ]; buildInputs = [ scons ]; runtimeDependencies = [ vulkan-loader libGL libX11 libXcursor libXinerama libXext libXrandr libXrender libXi libXfixes libxkbcommon alsa-lib ] ++ lib.optional withPulseaudio libpulseaudio ++ lib.optional withDbus dbus ++ lib.optional withDbus dbus.lib ++ lib.optional withSpeechd speechd ++ lib.optional withFontconfig fontconfig ++ lib.optional withFontconfig fontconfig.lib ++ lib.optional withUdev udev; enableParallelBuilding = true; # Options from 'godot/SConstruct' and 'godot/platform/linuxbsd/detect.py' sconsFlags = [ "production=true" ]; preConfigure = '' sconsFlags+=" ${ lib.concatStringsSep " " (lib.mapAttrsToList (k: v: "${k}=${builtins.toJSON v}") options) }" ''; outputs = [ "out" "man" ]; installPhase = '' mkdir -p "$out/bin" cp bin/godot.* $out/bin/godot4 installManPage misc/dist/linux/godot.6 mkdir -p "$out"/share/{applications,icons/hicolor/scalable/apps} cp misc/dist/linux/org.godotengine.Godot.desktop "$out/share/applications/org.godotengine.Godot4.desktop" substituteInPlace "$out/share/applications/org.godotengine.Godot4.desktop" \ --replace "Exec=godot" "Exec=$out/bin/godot4" \ --replace "Godot Engine" "Godot Engine 4" cp icon.svg "$out/share/icons/hicolor/scalable/apps/godot.svg" cp icon.png "$out/share/icons/godot.png" ''; meta = with lib; { homepage = "https://godotengine.org"; description = "Free and Open Source 2D and 3D game engine"; license = licenses.mit; platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" ]; maintainers = with maintainers; [ twey shiryel ]; }; }