about summary refs log tree commit diff
path: root/pkgs/by-name/ga/gamescope/package.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/by-name/ga/gamescope/package.nix')
-rw-r--r--pkgs/by-name/ga/gamescope/package.nix10
1 files changed, 8 insertions, 2 deletions
diff --git a/pkgs/by-name/ga/gamescope/package.nix b/pkgs/by-name/ga/gamescope/package.nix
index 78c491827f949..d935cc70adaa4 100644
--- a/pkgs/by-name/ga/gamescope/package.nix
+++ b/pkgs/by-name/ga/gamescope/package.nix
@@ -27,6 +27,7 @@
 , stb
 , wlroots
 , libdecor
+, lcms
 , lib
 , makeBinaryWrapper
 , patchelfUnstable
@@ -44,19 +45,21 @@ let
 in
 stdenv.mkDerivation (finalAttrs: {
   pname = "gamescope";
-  version = "3.14.22";
+  version = "3.14.29";
 
   src = fetchFromGitHub {
     owner = "ValveSoftware";
     repo = "gamescope";
     rev = "refs/tags/${finalAttrs.version}";
     fetchSubmodules = true;
-    hash = "sha256-/muitEE3LCU6Xnjbpczb/zy2JRvUbBPT5L13T/v3MvE=";
+    hash = "sha256-q3HEbFqUeNczKYUlou+quxawCTjpM5JNLrML84tZVYE=";
   };
 
   patches = [
     # Make it look for shaders in the right place
     ./shaders-path.patch
+    # patch relative gamescopereaper path with absolute
+    ./gamescopereaper.patch
   ];
 
   # We can't substitute the patch itself because substituteAll is itself a derivation,
@@ -65,6 +68,8 @@ stdenv.mkDerivation (finalAttrs: {
     substituteInPlace src/reshade_effect_manager.cpp --replace "@out@" "$out"
     # Patching shebangs in the main `libdisplay-info` build
     patchShebangs subprojects/libdisplay-info/tool/gen-search-table.py
+    # Replace gamescopereeaper with absolute path
+    substituteInPlace src/Utils/Process.cpp --subst-var-by "gamescopereaper" "$out/bin/gamescopereaper"
   '';
 
   mesonFlags = [
@@ -128,6 +133,7 @@ stdenv.mkDerivation (finalAttrs: {
     pixman
     libcap
     stb
+    lcms
   ]);
 
   postInstall = lib.optionalString enableExecutable ''