summaryrefslogtreecommitdiffstats
path: root/nixos/modules/programs/dconf.nix
diff options
context:
space:
mode:
authorgnidorah <gnidorah@users.noreply.github.com>2017-12-21 20:16:19 +0400
committerzimbatm <zimbatm@zimbatm.com>2017-12-21 16:16:19 +0000
commitb9851a975e8255f8799aed3f4efaa399e19ea733 (patch)
treed9f53a0bcca76261cf0ffccdd03125e096c7c5a3 /nixos/modules/programs/dconf.nix
parent9e119825f3513e84a22b97e50343c0bc323d11eb (diff)
Make less known wayland compositors usable (#32285)
* bemenu: init at 2017-02-14 * velox: 2015-11-03 -> 2017-07-04 * orbment, velox: don't expose subprojects the development of orbment and velox got stuck their subprojects (bemenu, dmenu-wayland, st-wayland) don't work correctly outside of parent projects so hide them to not confuse people swc and wld libraries are unpopular and unlike wlc are not used by anything except velox * pythonPackages.pydbus: init at 0.6.0 * way-cooler: 0.5.2 -> 0.6.2 * nixos/way-cooler: add module * dconf module: use for wayland non-invasive approach for #31293 see discussion at #32210 * sway: embed LD_LIBRARY_PATH for #32755 * way-cooler: switch from buildRustPackage to buildRustCrate #31150
Diffstat (limited to 'nixos/modules/programs/dconf.nix')
-rw-r--r--nixos/modules/programs/dconf.nix16
1 files changed, 12 insertions, 4 deletions
diff --git a/nixos/modules/programs/dconf.nix b/nixos/modules/programs/dconf.nix
index 1b7e20799819..27bfdf022e7d 100644
--- a/nixos/modules/programs/dconf.nix
+++ b/nixos/modules/programs/dconf.nix
@@ -1,7 +1,8 @@
-{ config, lib, ... }:
+{ config, lib, pkgs, ... }:
+
+with lib;
let
- inherit (lib) mkOption mkIf types mapAttrsToList;
cfg = config.programs.dconf;
mkDconfProfile = name: path:
@@ -13,6 +14,7 @@ in
options = {
programs.dconf = {
+ enable = mkEnableOption "dconf";
profiles = mkOption {
type = types.attrsOf types.path;
@@ -26,9 +28,15 @@ in
###### implementation
- config = mkIf (cfg.profiles != {}) {
- environment.etc =
+ config = mkIf (cfg.profiles != {} || cfg.enable) {
+ environment.etc = optionals (cfg.profiles != {})
(mapAttrsToList mkDconfProfile cfg.profiles);
+
+ environment.variables.GIO_EXTRA_MODULES = optional cfg.enable
+ "${pkgs.gnome3.dconf.lib}/lib/gio/modules";
+ # https://github.com/NixOS/nixpkgs/pull/31891
+ #environment.variables.XDG_DATA_DIRS = optional cfg.enable
+ # "$(echo ${pkgs.gnome3.gsettings_desktop_schemas}/share/gsettings-schemas/gsettings-desktop-schemas-*)";
};
}