From bc41b2db3db188be72ab71919893b160d44c98d9 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Mon, 13 Nov 2023 02:48:18 +0100 Subject: 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. --- .../make-hardcode-gsettings-patch/default.nix | 26 +++++++++++++--------- 1 file changed, 15 insertions(+), 11 deletions(-) (limited to 'pkgs/build-support/make-hardcode-gsettings-patch') 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 -- cgit 1.4.1