1{
2 lib,
3 runCommand,
4 gsettings-desktop-schemas,
5 mate-wayland-session,
6 glib,
7}:
8
9let
10 gsettingsOverridePackages = [
11 gsettings-desktop-schemas
12 mate-wayland-session
13 ];
14in
15runCommand "mate-gsettings-overrides" { preferLocalBuild = true; } ''
16 data_dir="$out/share/gsettings-schemas/nixos-gsettings-overrides"
17 schema_dir="$data_dir/glib-2.0/schemas"
18 mkdir -p "$schema_dir"
19
20 ${lib.concatMapStringsSep "\n" (
21 pkg:
22 "cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"${glib.getSchemaPath pkg}\"/*.gschema.override \"$schema_dir\""
23 ) gsettingsOverridePackages}
24
25 chmod -R a+w "$data_dir"
26
27 ${glib.dev}/bin/glib-compile-schemas --strict "$schema_dir"
28''