diff options
4 files changed, 11 insertions, 28 deletions
diff --git a/nixos/modules/services/x11/desktop-managers/enlightenment.nix b/nixos/modules/services/x11/desktop-managers/enlightenment.nix index 7ea8b30d23d..615504bab15 100644 --- a/nixos/modules/services/x11/desktop-managers/enlightenment.nix +++ b/nixos/modules/services/x11/desktop-managers/enlightenment.nix @@ -64,10 +64,7 @@ in security.setuidPrograms = [ "e_freqset" ]; - environment.etc = singleton - { source = "${pkgs.xkeyboard_config}/etc/X11/xkb"; - target = "X11/xkb"; - }; + services.xserver.exportConfiguration = true; fonts.fonts = [ pkgs.dejavu_fonts pkgs.ubuntu_font_family ]; diff --git a/nixos/modules/services/x11/desktop-managers/kde4.nix b/nixos/modules/services/x11/desktop-managers/kde4.nix index 3aa4821a052..b551432bc27 100644 --- a/nixos/modules/services/x11/desktop-managers/kde4.nix +++ b/nixos/modules/services/x11/desktop-managers/kde4.nix @@ -183,10 +183,7 @@ in GST_PLUGIN_SYSTEM_PATH = [ "/lib/gstreamer-0.10" ]; }; - environment.etc = singleton - { source = "${pkgs.xkeyboard_config}/etc/X11/xkb"; - target = "X11/xkb"; - }; + services.xserver.exportConfiguration = true; # Enable helpful DBus services. services.udisks2.enable = true; diff --git a/nixos/modules/services/x11/desktop-managers/kde5.nix b/nixos/modules/services/x11/desktop-managers/kde5.nix index 8f081a1e9d2..ec85cf1d0bd 100644 --- a/nixos/modules/services/x11/desktop-managers/kde5.nix +++ b/nixos/modules/services/x11/desktop-managers/kde5.nix @@ -199,10 +199,7 @@ in environment.pathsToLink = [ "/share" ]; - environment.etc = singleton { - source = "${pkgs.xkeyboard_config}/etc/X11/xkb"; - target = "X11/xkb"; - }; + services.xserver.exportConfiguration = true; environment.variables = { diff --git a/nixos/modules/services/x11/xserver.nix b/nixos/modules/services/x11/xserver.nix index f5ed5233818..8617a5fab03 100644 --- a/nixos/modules/services/x11/xserver.nix +++ b/nixos/modules/services/x11/xserver.nix @@ -465,23 +465,15 @@ in } ]; - environment.etc = - (optionals cfg.exportConfiguration - [ { source = "${configFile}"; - target = "X11/xorg.conf"; - } - # -xkbdir command line option does not seems to be passed to xkbcomp. - { source = "${cfg.xkbDir}"; - target = "X11/xkb"; - } - ]) + environment.etc = mkMerge [ + (mkIf cfg.exportConfiguration { + "X11/xorg.conf".source = configFile; + "X11/xkb".source = cfg.xkbDir; + }) # Needed since 1.18; see https://bugs.freedesktop.org/show_bug.cgi?id=89023#c5 - ++ (let cfgPath = "/X11/xorg.conf.d/10-evdev.conf"; in - [{ - source = xorg.xf86inputevdev.out + "/share" + cfgPath; - target = cfgPath; - }] - ); + (let cfgPath = "X11/xorg.conf.d/10-evdev.conf"; in + { "${cfgPath}".source = xorg.xf86inputevdev.out + "/share" + cfgPath; }) + ]; environment.systemPackages = [ xorg.xorgserver.out |