From ce1ba13c718372ba10ebd217f1b9c330ab00ce1a Mon Sep 17 00:00:00 2001 From: Wolfgang Walther Date: Sat, 25 Jan 2025 15:59:13 +0100 Subject: [PATCH 1/3] gui-for-singbox: fix basepath patching placeholder can't be used with replaceVars, because it results in the output of the **replaceVars** derivation, not the "calling" derivation. --- pkgs/by-name/gu/gui-for-singbox/package.nix | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/gu/gui-for-singbox/package.nix b/pkgs/by-name/gu/gui-for-singbox/package.nix index 08620f978925..f69c6461165e 100644 --- a/pkgs/by-name/gu/gui-for-singbox/package.nix +++ b/pkgs/by-name/gu/gui-for-singbox/package.nix @@ -68,11 +68,13 @@ in buildGoModule { inherit pname version src; - patches = [ - (replaceVars ./bridge.patch { - basepath = placeholder "out"; - }) - ]; + patches = [ ./bridge.patch ]; + + postPatch = '' + # As we need the $out reference, we can't use `replaceVars` here. + substituteInPlace bridge/bridge.go \ + --replace-fail '@basepath@' "$out" + ''; vendorHash = "sha256-OrysyJF+lUMf+0vWmOZHjxUdE6fQCKArmpV4alXxtYs="; From e6c76c051f96f3f0991faad5dc78fea86adf35f9 Mon Sep 17 00:00:00 2001 From: Wolfgang Walther Date: Sat, 25 Jan 2025 16:03:09 +0100 Subject: [PATCH 2/3] gui-for-clash: fix basepath patching --- pkgs/by-name/gu/gui-for-clash/package.nix | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/gu/gui-for-clash/package.nix b/pkgs/by-name/gu/gui-for-clash/package.nix index 402e3ba6cb4e..84d01efb1640 100644 --- a/pkgs/by-name/gu/gui-for-clash/package.nix +++ b/pkgs/by-name/gu/gui-for-clash/package.nix @@ -68,11 +68,13 @@ in buildGoModule { inherit pname version src; - patches = [ - (replaceVars ./bridge.patch { - basepath = placeholder "out"; - }) - ]; + patches = [ ./bridge.patch ]; + + postPatch = '' + # As we need the $out reference, we can't use `replaceVars` here. + substituteInPlace bridge/bridge.go \ + --replace-fail '@basepath@' "$out" + ''; vendorHash = "sha256-OrysyJF+lUMf+0vWmOZHjxUdE6fQCKArmpV4alXxtYs="; From 30c355bde01a4e4439c17b853c74a952a45e2891 Mon Sep 17 00:00:00 2001 From: Wolfgang Walther Date: Sat, 25 Jan 2025 16:03:30 +0100 Subject: [PATCH 3/3] chawan: fix search path patching --- pkgs/by-name/ch/chawan/package.nix | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/ch/chawan/package.nix b/pkgs/by-name/ch/chawan/package.nix index ce320d7d167e..cf5c642e87e1 100644 --- a/pkgs/by-name/ch/chawan/package.nix +++ b/pkgs/by-name/ch/chawan/package.nix @@ -26,12 +26,14 @@ stdenv.mkDerivation { fetchSubmodules = true; }; - patches = [ - # Include chawan's man pages in mancha's search path - (replaceVars ./mancha-augment-path.diff { - out = placeholder "out"; - }) - ]; + patches = [ ./mancha-augment-path.diff ]; + + # Include chawan's man pages in mancha's search path + postPatch = '' + # As we need the $out reference, we can't use `replaceVars` here. + substituteInPlace adapter/protocol/man.nim \ + --replace-fail '@out@' "$out" + ''; env.NIX_CFLAGS_COMPILE = toString ( lib.optional stdenv.cc.isClang "-Wno-error=implicit-function-declaration"