From 8e4f502fc6a3736f402e320ba7ab3ec630a4cbac Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 4 Mar 2020 21:19:35 +0100 Subject: [PATCH] glib.setupHook: run glibPreFixupPhase before gappsWrapperArgsHook Since we split wrapGAppsHook and move its variable initialization to preFixupPhases in #81475, it was getting run before glibPreFixupPhase which sets GSETTINGS_SCHEMAS_PATH variable gappsWrapperArgsHook depends on. Let's introduce this ugly hack to ensure glibPreFixupPhase will run before gappsWrapperArgsHook. --- pkgs/development/libraries/glib/setup-hook.sh | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/glib/setup-hook.sh b/pkgs/development/libraries/glib/setup-hook.sh index 37c750b8db66..5d9c330b62eb 100644 --- a/pkgs/development/libraries/glib/setup-hook.sh +++ b/pkgs/development/libraries/glib/setup-hook.sh @@ -24,4 +24,12 @@ glibPreFixupPhase() { addToSearchPath GSETTINGS_SCHEMAS_PATH "${!outputLib}/share/gsettings-schemas/$name" } -preFixupPhases+=" glibPreFixupPhase" + +# gappsWrapperArgsHook expects GSETTINGS_SCHEMAS_PATH variable to be set by this. +# Until we have dependency mechanism in generic builder, we need to use this ugly hack. +if [[ " ${preFixupPhases:-} " =~ " gappsWrapperArgsHook " ]]; then + preFixupPhases+=" " + preFixupPhases="${preFixupPhases/ gappsWrapperArgsHook / glibPreFixupPhase gappsWrapperArgsHook }" +else + preFixupPhases+=" glibPreFixupPhase" +fi