{pkgs, ...}: let vars = import ./variables.nix; in { # Enable Plasma 6 desktop (ly display manager is enabled in system/services.nix) services.desktopManager.plasma6.enable = true; # X11 configuration services.xserver = { enable = true; xkb = { layout = "cz"; options = "eurosign:e,caps:escape"; }; }; # Exclude unwanted KDE packages environment.plasma6.excludePackages = with pkgs.kdePackages; [ elisa # Music player kdepim-runtime # Akonadi agents kmahjongg kmines konversation # IRC client kpat # Solitaire ksudoku ktorrent ]; # KDE utilities and system packages environment.systemPackages = with pkgs; [ # KDE Utilities kdePackages.kcalc # Calculator kdePackages.kcharselect # Character map kdePackages.kclock # Clock app kdePackages.kcolorchooser # Color picker kdePackages.ksystemlog # System log viewer kdiff3 # File/directory comparison tool # Hardware/System Utilities kdePackages.isoimagewriter # Write hybrid ISOs to USB kdePackages.partitionmanager # Disk and partition management hardinfo2 # System benchmarks and hardware info wayland-utils # Wayland diagnostic tools wl-clipboard # Wayland copy/paste support ]; # Stylix theming stylix = { enable = true; autoEnable = true; base16Scheme = "${pkgs.base16-schemes}/share/themes/espresso.yaml"; image = vars.image; fonts = { monospace = { package = pkgs.dejavu_fonts; name = "DejaVu Sans Mono"; }; sansSerif = { package = pkgs.dejavu_fonts; name = "DejaVu Sans"; }; serif = { package = pkgs.dejavu_fonts; name = "DejaVu Serif"; }; emoji = { package = pkgs.noto-fonts-color-emoji; name = "Noto Color Emoji"; }; sizes = { terminal = 11; applications = 11; desktop = 11; }; }; cursor = { package = pkgs.bibata-cursors; name = "Bibata-Modern-Classic"; size = 24; }; opacity = { terminal = 0.95; applications = 1.0; desktop = 1.0; popups = 0.95; }; polarity = "dark"; targets.nixos-icons.enable = false; }; }