about summary refs log tree commit diff
path: root/pkgs/build-support/make-hardcode-gsettings-patch
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2023-11-13 02:48:18 +0100
committerJan Tojnar <jtojnar@gmail.com>2023-11-21 08:42:47 +0100
commitbc41b2db3db188be72ab71919893b160d44c98d9 (patch)
treee3995a86ec67434fe66c54e9068a47b9ed890004 /pkgs/build-support/make-hardcode-gsettings-patch
parent6f695f3d92be6b9994d69f3de2eaffb9d6b94f92 (diff)
makeHardcodeGsettingsPatch: Support applying patches
This is useful for replacing code that cannot be easily handled by the generator,
such as the tentative settings constructor in e-d-s.
Diffstat (limited to 'pkgs/build-support/make-hardcode-gsettings-patch')
-rw-r--r--pkgs/build-support/make-hardcode-gsettings-patch/default.nix26
1 files changed, 15 insertions, 11 deletions
diff --git a/pkgs/build-support/make-hardcode-gsettings-patch/default.nix b/pkgs/build-support/make-hardcode-gsettings-patch/default.nix
index a4a2dc36df053..820b003e3c6fa 100644
--- a/pkgs/build-support/make-hardcode-gsettings-patch/default.nix
+++ b/pkgs/build-support/make-hardcode-gsettings-patch/default.nix
@@ -28,6 +28,8 @@
     For example, `{ "org.gnome.evolution" = "EVOLUTION_SCHEMA_PATH"; }`
     hardcodes looking for `org.gnome.evolution` into `@EVOLUTION_SCHEMA_PATH@`.
 
+  - `patches`: A list of patches to apply before generating the patch.
+
   Example:
     passthru = {
       hardcodeGsettingsPatch = makeHardcodeGsettingsPatch {
@@ -35,29 +37,30 @@
         schemaIdToVariableMapping = {
            ...
         };
-    };
+      };
 
-    updateScript =
-      let
-        updateSource = ...;
-        updatePatch = _experimental-update-script-combinators.copyAttrOutputToFile "evolution-ews.hardcodeGsettingsPatch" ./hardcode-gsettings.patch;
-      in
-      _experimental-update-script-combinators.sequence [
-        updateSource
-        updatePatch
-      ];
+      updateScript =
+        let
+          updateSource = ...;
+          updatePatch = _experimental-update-script-combinators.copyAttrOutputToFile "evolution-ews.hardcodeGsettingsPatch" ./hardcode-gsettings.patch;
+        in
+        _experimental-update-script-combinators.sequence [
+          updateSource
+          updatePatch
+        ];
       };
     }
 */
 {
   src,
+  patches ? [ ],
   schemaIdToVariableMapping,
 }:
 
 runCommand
   "hardcode-gsettings.patch"
   {
-    inherit src;
+    inherit src patches;
     nativeBuildInputs = [
       git
       coccinelle
@@ -67,6 +70,7 @@ runCommand
   ''
     unpackPhase
     cd "''${sourceRoot:-.}"
+    patchPhase
     set -x
     cp ${builtins.toFile "glib-schema-to-var.json" (builtins.toJSON schemaIdToVariableMapping)} ./glib-schema-to-var.json
     git init