From 399d6988547f46df4c37fe0c085cff63bb7040bc Mon Sep 17 00:00:00 2001 From: OPNA2608 Date: Sat, 9 Mar 2024 14:06:39 +0100 Subject: [PATCH] nixos/lightdm-greeters/lomiri: init --- .../lightdm-greeters/lomiri.nix | 34 +++++++++++++++++++ .../services/x11/display-managers/lightdm.nix | 1 + 2 files changed, 35 insertions(+) create mode 100644 nixos/modules/services/x11/display-managers/lightdm-greeters/lomiri.nix diff --git a/nixos/modules/services/x11/display-managers/lightdm-greeters/lomiri.nix b/nixos/modules/services/x11/display-managers/lightdm-greeters/lomiri.nix new file mode 100644 index 000000000000..0cc79178358b --- /dev/null +++ b/nixos/modules/services/x11/display-managers/lightdm-greeters/lomiri.nix @@ -0,0 +1,34 @@ +{ config, lib, pkgs, ... }: + +let + + dmcfg = config.services.displayManager; + ldmcfg = config.services.xserver.displayManager.lightdm; + cfg = ldmcfg.greeters.lomiri; + +in +{ + meta.maintainers = lib.teams.lomiri.members; + + options = { + services.xserver.displayManager.lightdm.greeters.lomiri = { + enable = lib.mkEnableOption "lomiri's greeter as the lightdm greeter"; + }; + }; + + config = lib.mkIf (ldmcfg.enable && cfg.enable) { + services.xserver.displayManager.lightdm.greeters.gtk.enable = false; + + services.xserver.displayManager.lightdm.greeter = lib.mkDefault { + package = pkgs.lomiri.lomiri.greeter; + name = "lomiri-greeter"; + }; + + # Greeter needs to be run through its wrapper + # Greeter doesn't work with our set-session.py script, need to set default user-session + services.xserver.displayManager.lightdm.extraSeatDefaults = '' + greeter-wrapper = ${lib.getExe' pkgs.lomiri.lomiri "lomiri-greeter-wrapper"} + user-session = ${dmcfg.defaultSession} + ''; + }; +} diff --git a/nixos/modules/services/x11/display-managers/lightdm.nix b/nixos/modules/services/x11/display-managers/lightdm.nix index 63561934be08..25e6c597adcb 100644 --- a/nixos/modules/services/x11/display-managers/lightdm.nix +++ b/nixos/modules/services/x11/display-managers/lightdm.nix @@ -81,6 +81,7 @@ in ./lightdm-greeters/mini.nix ./lightdm-greeters/enso-os.nix ./lightdm-greeters/pantheon.nix + ./lightdm-greeters/lomiri.nix ./lightdm-greeters/tiny.nix ./lightdm-greeters/slick.nix ./lightdm-greeters/mobile.nix