about summary refs log tree commit diff
path: root/pkgs/development/libraries/glib/setup-hook.sh
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/libraries/glib/setup-hook.sh')
-rw-r--r--pkgs/development/libraries/glib/setup-hook.sh19
1 files changed, 11 insertions, 8 deletions
diff --git a/pkgs/development/libraries/glib/setup-hook.sh b/pkgs/development/libraries/glib/setup-hook.sh
index ca7e326bd02e..c5cf293902cd 100644
--- a/pkgs/development/libraries/glib/setup-hook.sh
+++ b/pkgs/development/libraries/glib/setup-hook.sh
@@ -1,5 +1,3 @@
-# Install gschemas, if any, in a package-specific directory
-installFlagsArray+=("gsettingsschemadir=$out/share/gsettings-schemas/$name/glib-2.0/schemas/")
 
 make_glib_find_gsettings_schemas() {
     # For packages that need gschemas of other packages (e.g. empathy)
@@ -7,17 +5,22 @@ make_glib_find_gsettings_schemas() {
         addToSearchPath GSETTINGS_SCHEMAS_PATH "$1/share/gsettings-schemas/"*
     fi
 }
-
 envHooks+=(make_glib_find_gsettings_schemas)
 
+# Install gschemas, if any, in a package-specific directory
+glibPreInstallPhase() {
+  installFlagsArray+=("gsettingsschemadir=${!outputLib}/share/gsettings-schemas/$name/glib-2.0/schemas/")
+}
+preInstallPhases+=(glibPreInstallPhase)
+
 glibPreFixupPhase() {
     # Move gschemas in case the install flag didn't help
-    if [ -d "$out/share/glib-2.0/schemas" ]; then
-        mkdir -p "$out/share/gsettings-schemas/$name/glib-2.0"
-        mv "$out/share/glib-2.0/schemas" "$out/share/gsettings-schemas/$name/glib-2.0/"
+    if [ -d "${!outputLib}/share/glib-2.0/schemas" ]; then
+        mkdir -p "${!outputLib}/share/gsettings-schemas/$name/glib-2.0"
+        mv "${!outputLib}/share/glib-2.0/schemas" "${!outputLib}/share/gsettings-schemas/$name/glib-2.0/"
     fi
 
-    addToSearchPath GSETTINGS_SCHEMAS_PATH "$out/share/gsettings-schemas/$name"
+    addToSearchPath GSETTINGS_SCHEMAS_PATH "${!outputLib}/share/gsettings-schemas/$name"
 }
+preFixupPhases+=(glibPreFixupPhase)
 
-preFixupPhases="$preFixupPhases glibPreFixupPhase"