diff --git a/nixos/doc/manual/release-notes/rl-2111.section.md b/nixos/doc/manual/release-notes/rl-2111.section.md index 4c6c339014794..e597aac119f99 100644 --- a/nixos/doc/manual/release-notes/rl-2111.section.md +++ b/nixos/doc/manual/release-notes/rl-2111.section.md @@ -20,6 +20,8 @@ In addition to numerous new and upgraded packages, this release has the followin This allows activation scripts to output what they would change if the activation was really run. The users/modules activation script supports this and outputs some of is actions. +- KDE Plasma now finally works on Wayland. + - bash now defaults to major version 5. - Systemd was updated to version 249 (from 247). @@ -338,6 +340,7 @@ In addition to numerous new and upgraded packages, this release has the followin configuration file. For details, see the [upstream changelog](https://github.com/DataDog/datadog-agent/blob/main/CHANGELOG.rst). - `opencv2` no longer includes the non-free libraries by default, and consequently `pfstools` no longer includes OpenCV support by default. Both packages now support an `enableUnfree` option to re-enable this functionality. +- `services.xserver.displayManager.defaultSession = "plasma5"` does not work anymore, instead use either `"plasma"` for the Plasma X11 session or `"plasmawayland"` for the Plasma Wayland sesison. ## Other Notable Changes {#sec-release-21.11-notable-changes} diff --git a/nixos/modules/services/x11/desktop-managers/plasma5.nix b/nixos/modules/services/x11/desktop-managers/plasma5.nix index e418195e1a74a..7dfecf6e6f5ee 100644 --- a/nixos/modules/services/x11/desktop-managers/plasma5.nix +++ b/nixos/modules/services/x11/desktop-managers/plasma5.nix @@ -13,7 +13,6 @@ let pulseaudio = config.hardware.pulseaudio; pactl = "${getBin pulseaudio.package}/bin/pactl"; - startplasma-x11 = "${getBin plasma5.plasma-workspace}/bin/startplasma-x11"; sed = "${getBin pkgs.gnused}/bin/sed"; gtkrc2 = writeText "gtkrc-2.0" '' @@ -136,9 +135,6 @@ let fi fi - '' - + '' - exec "${startplasma-x11}" ''; in @@ -183,6 +179,7 @@ in config = mkMerge [ (mkIf cfg.enable { + # Seed our configuration into nixos-generate-config system.nixos-generate-config.desktopConfiguration = ['' # Enable the Plasma 5 Desktop Environment. @@ -190,11 +187,7 @@ in services.xserver.desktopManager.plasma5.enable = true; '']; - services.xserver.desktopManager.session = singleton { - name = "plasma5"; - bgSupport = true; - start = startplasma; - }; + services.xserver.displayManager.sessionPackages = [ pkgs.libsForQt5.plasma5.plasma-workspace ]; security.wrappers = { kcheckpass = @@ -389,6 +382,7 @@ in # Update the start menu for each user that is currently logged in system.userActivationScripts.plasmaSetup = activationScript; + services.xserver.displayManager.setupCommands = startplasma; nixpkgs.config.firefox.enablePlasmaBrowserIntegration = true; }) diff --git a/nixos/tests/plasma5.nix b/nixos/tests/plasma5.nix index f09859a055d5c..7a5b7db946295 100644 --- a/nixos/tests/plasma5.nix +++ b/nixos/tests/plasma5.nix @@ -12,7 +12,7 @@ import ./make-test-python.nix ({ pkgs, ...} : imports = [ ./common/user-account.nix ]; services.xserver.enable = true; services.xserver.displayManager.sddm.enable = true; - services.xserver.displayManager.defaultSession = "plasma5"; + services.xserver.displayManager.defaultSession = "plasma"; services.xserver.desktopManager.plasma5.enable = true; services.xserver.displayManager.autoLogin = { enable = true; diff --git a/pkgs/desktops/plasma-5/plasma-workspace/default.nix b/pkgs/desktops/plasma-5/plasma-workspace/default.nix index b65bc7df8ed86..fac10cf31d41d 100644 --- a/pkgs/desktops/plasma-5/plasma-workspace/default.nix +++ b/pkgs/desktops/plasma-5/plasma-workspace/default.nix @@ -24,6 +24,7 @@ let inherit (lib) getBin getLib; in mkDerivation { name = "plasma-workspace"; + passthru.providedSessions = [ "plasma" "plasmawayland" ]; nativeBuildInputs = [ extra-cmake-modules kdoctools ]; buildInputs = [