summaryrefslogtreecommitdiff
path: root/modules/desktop
diff options
context:
space:
mode:
authorJakub Stachurski <j.stachurski@student.utwente.nl>2026-04-28 20:15:33 +0200
committerJakub Stachurski <j.stachurski@student.utwente.nl>2026-04-28 20:15:33 +0200
commit0785f0c5d36e442a7d65a5e35378c09903d39211 (patch)
tree885a3561a58f4d2beee5355a0ae0adf034771dd5 /modules/desktop
parentff05ad9be1e136fc8eb3f7904739be97cca51ce9 (diff)
Add KDE properly and fix live-cd
Diffstat (limited to 'modules/desktop')
-rw-r--r--modules/desktop/common.nix8
-rw-r--r--modules/desktop/wms/default.nix1
-rw-r--r--modules/desktop/wms/kde.nix43
3 files changed, 47 insertions, 5 deletions
diff --git a/modules/desktop/common.nix b/modules/desktop/common.nix
index 2632a19..09b86cc 100644
--- a/modules/desktop/common.nix
+++ b/modules/desktop/common.nix
@@ -12,7 +12,7 @@
dconf.enable = true;
thunar = {
enable = true;
- plugins = with pkgs.xfce; [
+ plugins = with pkgs; [
thunar-archive-plugin
thunar-media-tags-plugin
thunar-volman
@@ -20,15 +20,14 @@
};
};
+ # Stuff that is useful for desktop environments.
environment.systemPackages = with pkgs; [
xdg-user-dirs
zathura
- sioyek
vlc
mpv
gparted
kitty
- # qalculate
networkmanagerapplet
(catppuccin-sddm.override {
flavor = "mocha";
@@ -38,8 +37,6 @@
background = "${../sddm_bg.png}";
loginBackground = true;
})
- # disabled because it imports a unsafe package
- # surf # A basic browser in case we don't want to import a larger browser
];
# Enable CUPS to print documents.
@@ -49,6 +46,7 @@
services.libinput.enable = true;
services = {
+ # TODO: Make it so bluetooth and audio are also toggleable.
blueman.enable = true;
# Enable sound
pipewire = {
diff --git a/modules/desktop/wms/default.nix b/modules/desktop/wms/default.nix
index ea6b61e..4d8c079 100644
--- a/modules/desktop/wms/default.nix
+++ b/modules/desktop/wms/default.nix
@@ -4,5 +4,6 @@
./hyprland.nix
./xfce.nix
./cosmic.nix
+ ./kde.nix
];
}
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")
+ );
+}