Merge pull request #326868 from devusb/gamescopereaper

gamescope: patch gamescopereaper path
This commit is contained in:
K900 2024-07-13 22:26:28 +03:00 committed by GitHub
commit fdd0aa0aee
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 19 additions and 2 deletions

View File

@ -0,0 +1,13 @@
diff --git a/src/Utils/Process.cpp b/src/Utils/Process.cpp
index 5688fb1..6cea8d8 100644
--- a/src/Utils/Process.cpp
+++ b/src/Utils/Process.cpp
@@ -392,7 +392,7 @@ namespace gamescope::Process
pid_t SpawnProcessInWatchdog( char **argv, bool bRespawn, std::function<void()> fnPreambleInChild )
{
std::vector<char *> args;
- args.push_back( (char *)"gamescopereaper" );
+ args.push_back( (char *)"@gamescopereaper@" );
if ( bRespawn )
args.push_back( (char *)"--respawn" );
args.push_back( (char *)"--" );

View File

@ -44,19 +44,21 @@ let
in in
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "gamescope"; pname = "gamescope";
version = "3.14.23"; version = "3.14.24";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ValveSoftware"; owner = "ValveSoftware";
repo = "gamescope"; repo = "gamescope";
rev = "refs/tags/${finalAttrs.version}"; rev = "refs/tags/${finalAttrs.version}";
fetchSubmodules = true; fetchSubmodules = true;
hash = "sha256-qXwCzNGlkGmO3BkQ74tJxufmjh4dUWzIgjHzDCEShU8="; hash = "sha256-+8uojnfx8V8BiYAeUsOaXTXrlcST83z6Eld7qv1oboE=";
}; };
patches = [ patches = [
# Make it look for shaders in the right place # Make it look for shaders in the right place
./shaders-path.patch ./shaders-path.patch
# patch relative gamescopereaper path with absolute
./gamescopereaper.patch
]; ];
# We can't substitute the patch itself because substituteAll is itself a derivation, # We can't substitute the patch itself because substituteAll is itself a derivation,
@ -65,6 +67,8 @@ stdenv.mkDerivation (finalAttrs: {
substituteInPlace src/reshade_effect_manager.cpp --replace "@out@" "$out" substituteInPlace src/reshade_effect_manager.cpp --replace "@out@" "$out"
# Patching shebangs in the main `libdisplay-info` build # Patching shebangs in the main `libdisplay-info` build
patchShebangs subprojects/libdisplay-info/tool/gen-search-table.py 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 = [ mesonFlags = [