2023-09-12 08:44:05 -06:00
|
|
|
{ config
|
|
|
|
, lib
|
2024-02-29 08:14:45 -07:00
|
|
|
, isUnstable
|
2023-09-12 08:44:05 -06:00
|
|
|
, ...
|
|
|
|
}:
|
|
|
|
{
|
|
|
|
options = { kde = { enable = lib.mkEnableOption "Enable KDE desktop."; }; };
|
2022-08-25 12:21:35 -06:00
|
|
|
|
2022-08-30 11:46:46 -06:00
|
|
|
config = lib.mkIf config.kde.enable {
|
2024-02-29 08:14:45 -07:00
|
|
|
services.xserver =
|
2024-03-12 07:48:11 -06:00
|
|
|
lib.mkMerge [
|
|
|
|
(if isUnstable then {
|
|
|
|
desktopManager.plasma6.enable = true;
|
|
|
|
displayManager.sddm.wayland.enable = true;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
desktopManager.plasma5.enable = true;
|
|
|
|
})
|
2024-03-12 11:19:09 -06:00
|
|
|
{
|
2024-03-12 07:48:11 -06:00
|
|
|
displayManager.sddm.enable = true;
|
2024-03-12 11:19:09 -06:00
|
|
|
}
|
2024-03-12 07:48:11 -06:00
|
|
|
];
|
2022-08-25 12:21:35 -06:00
|
|
|
|
|
|
|
# Listen for KDE Connect connections on the tailnet
|
|
|
|
networking.firewall.interfaces = {
|
|
|
|
"tailscale0" = {
|
2022-08-30 11:46:46 -06:00
|
|
|
allowedTCPPorts = lib.range 1714 1764;
|
|
|
|
allowedUDPPorts = lib.range 1714 1764;
|
2022-08-25 12:21:35 -06:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2024-02-29 08:14:45 -07:00
|
|
|
programs.kdeconnect.enable = true;
|
2022-08-25 12:21:35 -06:00
|
|
|
};
|
|
|
|
}
|