summary refs log tree commit diff
path: root/nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix
diff options
context:
space:
mode:
authorPiotr Bogdan <ppbogdan@gmail.com>2017-03-31 15:31:17 +0100
committerPiotr Bogdan <ppbogdan@gmail.com>2019-01-28 17:59:28 +0000
commit4ad82dd6cdd01d195a929a786d006e63ada7a90f (patch)
tree63f64c9b4e259c1b5d1bc13dd04a63550b5783b3 /nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix
parent9c2c5eec14d1bdf53137a6a57e063296f399b02d (diff)
downloadnixpkgs-4ad82dd6cdd01d195a929a786d006e63ada7a90f.tar
nixpkgs-4ad82dd6cdd01d195a929a786d006e63ada7a90f.tar.gz
nixpkgs-4ad82dd6cdd01d195a929a786d006e63ada7a90f.tar.bz2
nixpkgs-4ad82dd6cdd01d195a929a786d006e63ada7a90f.tar.lz
nixpkgs-4ad82dd6cdd01d195a929a786d006e63ada7a90f.tar.xz
nixpkgs-4ad82dd6cdd01d195a929a786d006e63ada7a90f.tar.zst
nixpkgs-4ad82dd6cdd01d195a929a786d006e63ada7a90f.zip
nixos/lightdm: allow cursor theme customisation.
Diffstat (limited to 'nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix')
-rw-r--r--nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix33
1 files changed, 32 insertions, 1 deletions
diff --git a/nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix b/nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix
index d1ee076e918..8682151f8ce 100644
--- a/nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix
+++ b/nixos/modules/services/x11/display-managers/lightdm-greeters/gtk.nix
@@ -12,6 +12,7 @@ let
 
   theme = cfg.theme.package;
   icons = cfg.iconTheme.package;
+  cursors = cfg.cursorTheme.package;
 
   # The default greeter provided with this expression is the GTK greeter.
   # Again, we need a few things in the environment for the greeter to run with
@@ -28,7 +29,8 @@ let
         --set GTK_EXE_PREFIX "${theme}" \
         --set GTK_DATA_PREFIX "${theme}" \
         --set XDG_DATA_DIRS "${theme}/share:${icons}/share" \
-        --set XDG_CONFIG_HOME "${theme}/share"
+        --set XDG_CONFIG_HOME "${theme}/share" \
+        --set XCURSOR_PATH "${cursors}/share/icons"
 
       cat - > $out/lightdm-gtk-greeter.desktop << EOF
       [Desktop Entry]
@@ -44,6 +46,8 @@ let
     [greeter]
     theme-name = ${cfg.theme.name}
     icon-theme-name = ${cfg.iconTheme.name}
+    cursor-theme-name = ${cfg.cursorTheme.name}
+    cursor-theme-size = ${toString cfg.cursorTheme.size}
     background = ${ldmcfg.background}
     ${optionalString (cfg.clock-format != null) "clock-format = ${cfg.clock-format}"}
     ${optionalString (cfg.indicators != null) "indicators = ${concatStringsSep ";" cfg.indicators}"}
@@ -106,6 +110,33 @@ in
 
       };
 
+      cursorTheme = {
+
+        package = mkOption {
+          default = pkgs.gnome3.defaultIconTheme;
+          defaultText = "pkgs.gnome3.defaultIconTheme";
+          description = ''
+            The package path that contains the cursor theme given in the name option.
+          '';
+        };
+
+        name = mkOption {
+          type = types.str;
+          default = "Adwaita";
+          description = ''
+            Name of the cursor theme to use for the lightdm-gtk-greeter.
+          '';
+        };
+
+        size = mkOption {
+          type = types.int;
+          default = 16;
+          description = ''
+            Size of the cursor theme to use for the lightdm-gtk-greeter.
+          '';
+        };
+      };
+
       clock-format = mkOption {
         type = types.nullOr types.str;
         default = null;