KDE Plasma
KDE Plasma is a fast, customizable desktop environment designed to be simple by default but powerful when needed. [1]
Installation
Plasma Desktop
To install the Plasma desktop environment on NixOS, the following options should be added to your configuration.nix (or flake.nix if you so desire).
{ config, pkgs, ... }:
{
# SDDM Display Manager
services.displayManager.sddm.enable = true;
# Plasma 5 (*deprecated* - unavailable after 25.05)
services.xserver.desktopManager.plasma5.enable = true;
# Plasma 6
services.desktopManager.plasma6.enable = true;
# Exclude certain default applications from being installed
environment.plasma6.excludePackages = with pkgs; [ kdePackages.<package> ];
}
Extensions and Themes
Ordinarily, Plasma extensions and themes should be installed through the Plasma Settings application, though a small number have been packaged in Nixpkgs for convenience. These can be found in the Nixpkgs repo or by using search.nixos.org.
If you plan to use Qt 5 applications on Plasma 6, you should enable the Qt 5 integration. This allows theming to be more cohesive across Qt5 and Qt6 applications.
services.desktopManager.plasma6.enableQt5Integration = true;
SDDM Configuration
Configuration of the SDDM login manager is done in the usual way through the NixOS module.
Example Configuration
{config, pkgs, ... }:
{
<...>
services.displayManager.sddm = {
enable = true;
theme = "breeze";
wayland.enable = true;
enableHidpi = true;
settings = {
Autologin = {
Session = "plasma.desktop";
User = "john";
};
};
};
<...>
}
Any options not directly configurable in the NixOS module can be passed to SDDM via:
services.displayManager.sddm.settings = { <...> };
References
- ↑ Official KDE Plasma promotional material https://kde.org/plasma-desktop/