diff options
author | Luca Bruno <luca.bruno@immobiliare.it> | 2014-04-02 18:21:00 +0200 |
---|---|---|
committer | Luca Bruno <lucabru@src.gnome.org> | 2014-08-12 11:23:42 +0200 |
commit | 1a29fcae69f4be51411df46477d317a829217659 (patch) | |
tree | 6778b1c00ad6ca5193c8cf185883c504d122663c /nixos/modules/programs/dconf.nix | |
parent | 3962ec068f3bfa4d86576d35db3f2413726b6f9f (diff) |
gdm: Add very experimental display manager
Diffstat (limited to 'nixos/modules/programs/dconf.nix')
-rw-r--r-- | nixos/modules/programs/dconf.nix | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/nixos/modules/programs/dconf.nix b/nixos/modules/programs/dconf.nix new file mode 100644 index 000000000000..1b7e20799819 --- /dev/null +++ b/nixos/modules/programs/dconf.nix @@ -0,0 +1,34 @@ +{ config, lib, ... }: + +let + inherit (lib) mkOption mkIf types mapAttrsToList; + cfg = config.programs.dconf; + + mkDconfProfile = name: path: + { source = path; target = "dconf/profile/${name}"; }; + +in +{ + ###### interface + + options = { + programs.dconf = { + + profiles = mkOption { + type = types.attrsOf types.path; + default = {}; + description = "Set of dconf profile files."; + internal = true; + }; + + }; + }; + + ###### implementation + + config = mkIf (cfg.profiles != {}) { + environment.etc = + (mapAttrsToList mkDconfProfile cfg.profiles); + }; + +} |