nixos/lightdm: add greeters.mobile config option

i based this on the neighboring lightdm-greeters/mini.nix module.

lightdm-mobile-greeter doesn't have a lot of configuration options.
it grabs the default user to login as from lightdm, along with which DE
it should launch. so no further configuration should be needed aside
from enabling `services.xserver.displayManager.lightdm.enable` and
either setting `services.xserver.displayManager.defaultSession` to the
appropriate session or explicitly defining a seat like:

```nix
services.xserver.displayManager.lightdm.extraSeatDefaults = ''
  user-session = phosh
'';
```
This commit is contained in:
colin 2022-11-02 03:31:52 -07:00
parent 32b67fe062
commit ed9998cf2a
2 changed files with 27 additions and 0 deletions

View File

@ -0,0 +1,26 @@
{ config, lib, pkgs, ... }:
with lib;
let
dmcfg = config.services.xserver.displayManager;
ldmcfg = dmcfg.lightdm;
cfg = ldmcfg.greeters.mobile;
in
{
options = {
services.xserver.displayManager.lightdm.greeters.mobile = {
enable = mkEnableOption (lib.mdDoc
"lightdm-mobile-greeter as the lightdm greeter"
);
};
};
config = mkIf (ldmcfg.enable && cfg.enable) {
services.xserver.displayManager.lightdm.greeters.gtk.enable = false;
services.xserver.displayManager.lightdm.greeter = mkDefault {
package = pkgs.lightdm-mobile-greeter.xgreeters;
name = "lightdm-mobile-greeter";
};
};
}

View File

@ -83,6 +83,7 @@ in
./lightdm-greeters/pantheon.nix
./lightdm-greeters/tiny.nix
./lightdm-greeters/slick.nix
./lightdm-greeters/mobile.nix
(mkRenamedOptionModule [ "services" "xserver" "displayManager" "lightdm" "autoLogin" "enable" ] [
"services"
"xserver"