diff --git a/modules/niri/default.nix b/modules/niri/default.nix index 967c96a..4daac44 100644 --- a/modules/niri/default.nix +++ b/modules/niri/default.nix @@ -17,6 +17,15 @@ in { NIXOS_OZONE_WL = "1"; }; + environment.systemPackages = [ + (pkgs.where-is-my-sddm-theme.override ({ themeConfig = (import ./sddm.theme.nix { config = config; }).style; })) + ]; + + services.displayManager.sddm = { + enable = true; + wayland.enable = true; + theme = "where_is_my_sddm_theme"; + }; programs.niri = { enable = true; diff --git a/modules/niri/sddm.theme.nix b/modules/niri/sddm.theme.nix new file mode 100644 index 0000000..5845d53 --- /dev/null +++ b/modules/niri/sddm.theme.nix @@ -0,0 +1,47 @@ +{ config, ... }: let + base = config.theme.base; + surface = config.theme.surface; + text = config.theme.text; +in { + style = '' + [General] + # Password mask character + passwordCharacter=* + # Mask password characters or not ("true" or "false") + passwordMask=true + # value "1" is all display width, "0.5" is a half of display width etc. + passwordInputWidth=0.5 + # Background color of password input + passwordInputBackground=${surface} + # Radius of password input corners + passwordInputRadius=8 + # "true" for visible cursor, "false" + passwordInputCursorVisible=false + # Font size of password (in points) + passwordFontSize=96 + passwordCursorColor=random + passwordTextColor= + + # Show or not sessions choose label + showSessionsByDefault=false + # Font size of sessions choose label (in points). + sessionsFontSize=24 + + # Show or not users choose label + showUsersByDefault=false + # Font size of users choose label (in points) + usersFontSize=48 + + # Path to background image + background= + # Or use just one color + backgroundFill=${base} + backgroundFillMode=aspect + + # Default text color for all labels + basicTextColor=${text} + + # Radius of background blur + blurRadius= + ''; +}