Merge #1901: add preFixupPhases to stdenv; for gsettings
Without this stdenv change it seems difficult to fix some glib's gsettings issues, as the folders in question may (not) be created in installPhase.
This commit is contained in:
@@ -48,6 +48,8 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "1d98mbqjmc34s8095lkw1j1bwvnnkw9581yfvjaikjvfjsaz29qd";
|
||||
};
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
buildInputs = [ libelf ]
|
||||
++ optionals doCheck [ tzdata libxml2 desktop_file_utils shared_mime_info ];
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
# Install gschemas, if any, in a package-specific directory
|
||||
installFlagsArray+=("gsettingsschemadir=$out/gsettings-schemas/$name/glib-2.0/schemas/")
|
||||
|
||||
make_glib_find_gsettings_schemas() {
|
||||
# For packages that need gschemas of other packages (e.g. empathy)
|
||||
if [ -d "$1/gsettings-schemas/*/glib-2.0/schemas" ]; then
|
||||
addToSearchPath GSETTINGS_SCHEMAS_PATH "$1/gsettings-schemas/"*
|
||||
fi
|
||||
}
|
||||
|
||||
envHooks+=(make_glib_find_gsettings_schemas)
|
||||
|
||||
glibPreFixupPhase() {
|
||||
addToSearchPath GSETTINGS_SCHEMAS_PATH "$out/gsettings-schemas/$name"
|
||||
}
|
||||
|
||||
preFixupPhases="$preFixupPhases glibPreFixupPhase"
|
||||
Reference in New Issue
Block a user