Jump to content

KDE Plasma: Difference between revisions

From NixOS Wiki
Ben9986 (talk | contribs)
Added section on SDDM configuration options.
Ben9986 (talk | contribs)
m Add mention of enableQt5Integration
Line 24: Line 24:
=== Extensions and Themes ===
=== 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 [https://github.com/NixOS/nixpkgs/tree/nixos-unstable/pkgs/kde/third-party Nixpkgs repo] or by using [https://search.nixos.org/packages?channel=unstable&query=kdePackages+theme search.nixos.org].
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 [https://github.com/NixOS/nixpkgs/tree/nixos-unstable/pkgs/kde/third-party Nixpkgs repo] or by using [https://search.nixos.org/packages?channel=unstable&query=kdePackages+theme 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.<syntaxhighlight lang="nixos">
services.desktopManager.plasma6.enableQt5Integration = true;
</syntaxhighlight>


== SDDM Configuration ==
== SDDM Configuration ==

Revision as of 21:54, 3 September 2025

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).

❄︎ /etc/nixos/configuration.nix
{ 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

❄︎ /etc/nixos/configuration.nix
{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

  1. Official KDE Plasma promotional material https://kde.org/plasma-desktop/