From ee5cba24c31896b6aeb0af4e21b93b878e54f747 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Fri, 24 Apr 2020 18:22:59 -0400 Subject: Revert "ibus: fix dconf db installation" --- nixos/modules/programs/dconf.nix | 35 ++++++++++------------------------- 1 file changed, 10 insertions(+), 25 deletions(-) (limited to 'nixos/modules/programs/dconf.nix') diff --git a/nixos/modules/programs/dconf.nix b/nixos/modules/programs/dconf.nix index 30fbd72a9ab..6702e8efd1c 100644 --- a/nixos/modules/programs/dconf.nix +++ b/nixos/modules/programs/dconf.nix @@ -4,24 +4,13 @@ with lib; let cfg = config.programs.dconf; - cfgDir = pkgs.symlinkJoin { - name = "dconf-system-config"; - paths = map (x: "${x}/etc/dconf") cfg.packages; - postBuild = '' - mkdir -p $out/profile - mkdir -p $out/db - '' + ( - concatStringsSep "\n" ( - mapAttrsToList ( - name: path: '' - ln -s ${path} $out/profile/${name} - '' - ) cfg.profiles - ) - ) + '' - ${pkgs.dconf}/bin/dconf update $out/db - ''; - }; + + mkDconfProfile = name: path: + { + name = "dconf/profile/${name}"; + value.source = path; + }; + in { ###### interface @@ -33,22 +22,18 @@ in profiles = mkOption { type = types.attrsOf types.path; default = {}; - description = "Set of dconf profile files, installed at /etc/dconf/profiles/name."; + description = "Set of dconf profile files."; internal = true; }; - packages = mkOption { - type = types.listOf types.package; - default = []; - description = "A list of packages which provide dconf profiles and databases in /etc/dconf."; - }; }; }; ###### implementation config = mkIf (cfg.profiles != {} || cfg.enable) { - environment.etc.dconf.source = mkIf (cfg.profiles != {} || cfg.packages != []) cfgDir; + environment.etc = optionalAttrs (cfg.profiles != {}) + (mapAttrs' mkDconfProfile cfg.profiles); services.dbus.packages = [ pkgs.dconf ]; -- cgit 1.4.1