summaryrefslogtreecommitdiff
path: root/modules/desktop/wms/kde.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/desktop/wms/kde.nix')
-rw-r--r--modules/desktop/wms/kde.nix43
1 files changed, 43 insertions, 0 deletions
diff --git a/modules/desktop/wms/kde.nix b/modules/desktop/wms/kde.nix
new file mode 100644
index 0000000..2120613
--- /dev/null
+++ b/modules/desktop/wms/kde.nix
@@ -0,0 +1,43 @@
+{
+ pkgs,
+ lib,
+ config,
+ ...
+}:
+let
+ cfg = config.addons.desktop.kde;
+in
+{
+ options.addons.desktop.kde = {
+ enable = lib.mkEnableOption "Enable KDE";
+ };
+
+ config = lib.mkIf cfg.enable (
+ {
+ services = {
+ desktopManager.plasma6.enable = true;
+ displayManager.sddm.enable = true;
+ displayManager.sddm.wayland.enable = true;
+ };
+
+ environment.systemPackages = with pkgs; [
+ kdePackages.kcharselect # Character map
+ kdePackages.kclock # Clock app
+ kdePackages.kcolorchooser # Color picker
+ kdePackages.ksystemlog # System log viewer
+ kdePackages.sddm-kcm # SDDM configuration module
+ kdiff3 # File/directory comparison tool
+
+ # Hardware/System Utilities (Optional)
+ hardinfo2 # System benchmarks and hardware info
+ wayland-utils # Wayland diagnostic tools
+ wl-clipboard # Wayland copy/paste support
+ ];
+ environment.plasma6.excludePackages = with pkgs; [
+ kdePackages.konversation
+ kdePackages.ktorrent
+ ];
+ }
+ // (import ../../../utils/makeWm.nix "KDE" "wayland")
+ );
+}