# ============================================================================ # Desktop Software Configuration # ============================================================================ # Imports desktop-specific programs and services (KDE Plasma, CUPS, etc.) { config, lib, pkgs, inputs, ... }: with lib; let cfg = config.athenix.sw.desktop; in { options.athenix.sw.desktop = mkOption { type = lib.types.submodule { options = { enable = mkOption { type = lib.types.bool; default = false; description = '' Enable full desktop environment with KDE Plasma 6. Includes: - KDE Plasma 6 desktop with SDDM display manager - Full graphical software suite (Firefox, Chromium, LibreOffice) - Printing and scanning support (CUPS) - Virtualization (libvirt, virt-manager) - Bluetooth and audio (PipeWire) - Video conferencing (Zoom, Teams) Recommended for: Workstations, development machines, user desktops ''; example = true; }; }; }; default = { }; description = "Desktop environment configuration (KDE Plasma 6)."; }; config = mkIf cfg.enable (mkMerge [ (import ./programs.nix { inherit config lib pkgs inputs ; }) (import ./services.nix { inherit config lib pkgs inputs ; }) ]); }