summary refs log tree commit diff
path: root/nixos/modules/services/x11/display-managers/sddm.nix
diff options
context:
space:
mode:
authorThomas Tuegel <ttuegel@mailbox.org>2017-05-17 09:21:11 -0500
committerThomas Tuegel <ttuegel@mailbox.org>2017-06-18 08:43:39 -0500
commit870c07cc2b020b507238ef6f71003add14ec5cfc (patch)
treec60ea6b8d7246fe56ca55e8b3fa54cdf61a3119a /nixos/modules/services/x11/display-managers/sddm.nix
parentbe7b7d908f82e8ab16c43ffd0e240addd6f4018a (diff)
downloadnixpkgs-870c07cc2b020b507238ef6f71003add14ec5cfc.tar
nixpkgs-870c07cc2b020b507238ef6f71003add14ec5cfc.tar.gz
nixpkgs-870c07cc2b020b507238ef6f71003add14ec5cfc.tar.bz2
nixpkgs-870c07cc2b020b507238ef6f71003add14ec5cfc.tar.lz
nixpkgs-870c07cc2b020b507238ef6f71003add14ec5cfc.tar.xz
nixpkgs-870c07cc2b020b507238ef6f71003add14ec5cfc.tar.zst
nixpkgs-870c07cc2b020b507238ef6f71003add14ec5cfc.zip
sddm: take themes from system environment
Diffstat (limited to 'nixos/modules/services/x11/display-managers/sddm.nix')
-rw-r--r--nixos/modules/services/x11/display-managers/sddm.nix26
1 files changed, 12 insertions, 14 deletions
diff --git a/nixos/modules/services/x11/display-managers/sddm.nix b/nixos/modules/services/x11/display-managers/sddm.nix
index 2eb7ddcb1ec..bf516235eb2 100644
--- a/nixos/modules/services/x11/display-managers/sddm.nix
+++ b/nixos/modules/services/x11/display-managers/sddm.nix
@@ -9,7 +9,7 @@ let
   cfg = dmcfg.sddm;
   xEnv = config.systemd.services."display-manager".environment;
 
-  sddm = cfg.package;
+  inherit (pkgs) sddm;
 
   xserverWrapper = pkgs.writeScript "xserver-wrapper" ''
     #!/bin/sh
@@ -37,8 +37,8 @@ let
 
     [Theme]
     Current=${cfg.theme}
-    ThemeDir=${sddm}/share/sddm/themes
-    FacesDir=${sddm}/share/sddm/faces
+    ThemeDir=/run/current-system/sw/share/sddm/themes
+    FacesDir=/run/current-system/sw/share/sddm/faces
 
     [Users]
     MaximumUid=${toString config.ids.uids.nixbld}
@@ -105,15 +105,6 @@ in
         '';
       };
 
-      package = mkOption {
-        type = types.package;
-        default = pkgs.sddm;
-        description = ''
-          The SDDM package to install.
-          The default package can be overridden to provide extra themes.
-        '';
-      };
-
       autoNumlock = mkOption {
         type = types.bool;
         default = false;
@@ -205,7 +196,13 @@ in
     services.xserver.displayManager.job = {
       logsXsession = true;
 
-      execCmd = "exec ${sddm}/bin/sddm";
+      environment = {
+        # Take themes system environment
+        NIX_PROFILES = "/run/current-system/sw";
+        XDG_DATA_DIRS = "/run/current-system/sw/share";
+      };
+
+      execCmd = "exec /run/current-system/sw/bin/sddm";
     };
 
     security.pam.services = {
@@ -254,7 +251,8 @@ in
 
     users.extraGroups.sddm.gid = config.ids.gids.sddm;
 
-    services.dbus.packages = [ sddm.unwrapped ];
+    environment.systemPackages = [ sddm ];
+    services.dbus.packages = [ sddm ];
 
     # To enable user switching, allow sddm to allocate TTYs/displays dynamically.
     services.xserver.tty = null;