about summary refs log tree commit diff
path: root/pkgs/development/libraries/glib
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2019-01-17 00:15:20 +0100
committerJan Tojnar <jtojnar@gmail.com>2019-01-17 00:54:15 +0100
commit388faed25c88e2304d37a190e43e97a9a2ae23c5 (patch)
tree7a8c0be7b73b73763cb4ae14230db7ed386312e3 /pkgs/development/libraries/glib
parent626233eee6ea309733d2d98625750cca904799a5 (diff)
downloadnixlib-388faed25c88e2304d37a190e43e97a9a2ae23c5.tar
nixlib-388faed25c88e2304d37a190e43e97a9a2ae23c5.tar.gz
nixlib-388faed25c88e2304d37a190e43e97a9a2ae23c5.tar.bz2
nixlib-388faed25c88e2304d37a190e43e97a9a2ae23c5.tar.lz
nixlib-388faed25c88e2304d37a190e43e97a9a2ae23c5.tar.xz
nixlib-388faed25c88e2304d37a190e43e97a9a2ae23c5.tar.zst
nixlib-388faed25c88e2304d37a190e43e97a9a2ae23c5.zip
glib.setupHook: fix gsettings-schemas location
GLib setup hook expects GSettings schemas to be installed in ${!outputLib}
and tries to move them to gsettings-schemas/$name subdirectory to prevent
conflicts. But the schemas will only end up in the library output when
the build system recognizes makeFlags set by the setup hook, and in that case
the move is not necessary, since the flag already includes the subdirectory.

Normally, this is not an issue, since most packages relying on GSettings
schemas either still use Autotools with gsettings.m4, or do not have a lib
output set. But with the promulgation of multiple outputs in Nixpkgs and
more and more projects switching to Meson, the issue will become increasingly
common.

We first noticed this problem with nm-applet.

Closes https://github.com/NixOS/nixpkgs/issues/45043
Diffstat (limited to 'pkgs/development/libraries/glib')
-rw-r--r--pkgs/development/libraries/glib/setup-hook.sh4
1 files changed, 2 insertions, 2 deletions
diff --git a/pkgs/development/libraries/glib/setup-hook.sh b/pkgs/development/libraries/glib/setup-hook.sh
index 5275529991f7..a1cb1f40c58a 100644
--- a/pkgs/development/libraries/glib/setup-hook.sh
+++ b/pkgs/development/libraries/glib/setup-hook.sh
@@ -15,9 +15,9 @@ preInstallPhases+=" glibPreInstallPhase"
 
 glibPreFixupPhase() {
     # Move gschemas in case the install flag didn't help
-    if [ -d "${!outputLib}/share/glib-2.0/schemas" ]; then
+    if [ -d "$prefix/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/"
+        mv "$prefix/share/glib-2.0/schemas" "${!outputLib}/share/gsettings-schemas/$name/glib-2.0/"
     fi
 
     addToSearchPath GSETTINGS_SCHEMAS_PATH "${!outputLib}/share/gsettings-schemas/$name"