From 3635e29149257d66b7e41d99226a2947d46d8993 Mon Sep 17 00:00:00 2001 From: twoneis Date: Mon, 24 Jun 2024 00:10:41 +0200 Subject: [PATCH] plasma and sddm theme --- devices/ellaca/options.nix | 3 ++- modules/default.nix | 1 + modules/plasma/default.nix | 28 ++++++++++++++++++++++++ modules/plasma/sddm-theme.conf | 39 ++++++++++++++++++++++++++++++++++ options.nix | 3 ++- 5 files changed, 72 insertions(+), 2 deletions(-) create mode 100644 modules/plasma/default.nix create mode 100644 modules/plasma/sddm-theme.conf diff --git a/devices/ellaca/options.nix b/devices/ellaca/options.nix index 6dcba43..a864d8f 100644 --- a/devices/ellaca/options.nix +++ b/devices/ellaca/options.nix @@ -5,7 +5,8 @@ withBluetooth = true; withNiri = true; - withGnome = true; + withGnome = false; + withPlasma = true; withVM = false; withContainers = true; diff --git a/modules/default.nix b/modules/default.nix index 62f1323..5f030f7 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -7,6 +7,7 @@ ./gnome ./home ./niri + ./plasma ./virt ]; diff --git a/modules/plasma/default.nix b/modules/plasma/default.nix new file mode 100644 index 0000000..3806586 --- /dev/null +++ b/modules/plasma/default.nix @@ -0,0 +1,28 @@ +{ pkgs, lib, config, ... }: lib.mkIf (config.withPlasma) { + services = { + displayManager.sddm = { + enable = true; + wayland = { + enable = true; + compositor = "kwin"; + }; + theme = "where_is_my_sddm_theme"; + }; + + desktopManager.plasma6 = { + enable = true; + }; + }; + + environment = { + plasma6.excludePackages = with pkgs.kdePackages; [ + plasma-browser-integration + konsole + oxygen + ]; + + systemPackages = [ (pkgs.where-is-my-sddm-theme.override ({ themeConfig = builtins.readFile ./sddm-theme.conf; })) ]; + }; + + programs.dconf.enable = true; +} diff --git a/modules/plasma/sddm-theme.conf b/modules/plasma/sddm-theme.conf new file mode 100644 index 0000000..a14a42b --- /dev/null +++ b/modules/plasma/sddm-theme.conf @@ -0,0 +1,39 @@ +[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= +# Radius of password input corners +passwordInputRadius= +# "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=#1f1d2e +backgroundFillMode=aspect + +# Default text color for all labels +basicTextColor=#e0def4 + +# Radius of background blur +blurRadius= diff --git a/options.nix b/options.nix index 6cb1b3a..7e742dc 100644 --- a/options.nix +++ b/options.nix @@ -6,7 +6,8 @@ withBluetooth = mkEnableOption "Enable bluetooth"; withNiri = mkEnableOption "Enable niri compositor"; - withGnome = mkEnableOption "Enable gnome DE"; + withGnome = mkEnableOption "Enable Gnome"; + withPlasma = mkEnableOption "Enable KDE Plasma"; withVM = mkEnableOption "Enable VM related configuration"; withContainers = mkEnableOption "Enable container support";