summary refs log tree commit diff
path: root/nixos/modules/services/x11/display-managers
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2018-07-23 01:11:26 +0200
committerJan Tojnar <jtojnar@gmail.com>2018-08-01 19:14:30 +0200
commit83fc9a98258036b7554efaa3177f85a8797dd403 (patch)
treeee9ca5767782439ce39076c881a7b7eab46e008d /nixos/modules/services/x11/display-managers
parenta8c6489fd47027efe21932650e0a69cb4b46a887 (diff)
downloadnixlib-83fc9a98258036b7554efaa3177f85a8797dd403.tar
nixlib-83fc9a98258036b7554efaa3177f85a8797dd403.tar.gz
nixlib-83fc9a98258036b7554efaa3177f85a8797dd403.tar.bz2
nixlib-83fc9a98258036b7554efaa3177f85a8797dd403.tar.lz
nixlib-83fc9a98258036b7554efaa3177f85a8797dd403.tar.xz
nixlib-83fc9a98258036b7554efaa3177f85a8797dd403.tar.zst
nixlib-83fc9a98258036b7554efaa3177f85a8797dd403.zip
nixos/display-manager.default: add extraSessionFilePackages option
Diffstat (limited to 'nixos/modules/services/x11/display-managers')
-rw-r--r--nixos/modules/services/x11/display-managers/default.nix12
1 files changed, 12 insertions, 0 deletions
diff --git a/nixos/modules/services/x11/display-managers/default.nix b/nixos/modules/services/x11/display-managers/default.nix
index 7685d8fa4ce3..ef8dda52609d 100644
--- a/nixos/modules/services/x11/display-managers/default.nix
+++ b/nixos/modules/services/x11/display-managers/default.nix
@@ -199,6 +199,10 @@ let
         Comment=
         EODESKTOP
       '') names}
+
+      ${concatMapStrings (pkg: ''
+        ${xorg.lndir}/bin/lndir ${pkg}/share/xsessions $out/share/xsessions
+      '') cfg.displayManager.extraSessionFilePackages}
     '';
 
 in
@@ -245,6 +249,14 @@ in
         '';
       };
 
+      extraSessionFilePackages = mkOption {
+        type = types.listOf types.package;
+        default = [];
+        description = ''
+          A list of packages containing xsession files to be passed to the display manager.
+        '';
+      };
+
       session = mkOption {
         default = [];
         example = literalExample