KDE: Difference between revisions
m Add Plasma 5 deprecation notice |
|||
| (7 intermediate revisions by 7 users not shown) | |||
| Line 22: | Line 22: | ||
services.xserver.desktopManager.plasma5.enable = true; | services.xserver.desktopManager.plasma5.enable = true; | ||
} | } | ||
</nowiki>}} | </nowiki>}}''<big>'''Note:'''</big> As of 2024, KDE Plasma 5 is end of life will not be available after NixOS 25.05.'' | ||
== Configuration == | == Configuration == | ||
| Line 30: | Line 30: | ||
{{ic|sddm}} launches X11 as a root user by default. For better security, X11 can be run as a non-root user, but using Wayland is better tested and thus preferred: | {{ic|sddm}} launches X11 as a root user by default. For better security, X11 can be run as a non-root user, but using Wayland is better tested and thus preferred: | ||
< | <syntaxhighlight lang="nix"> | ||
services | # Using X11 as a non-root user | ||
</ | services.displayManager.sddm.settings.General.DisplayServer = "x11-user"; | ||
# Using Wayland (preferred) | |||
services.displayManager.sddm.settings.General.DisplayServer = "wayland"; | |||
</syntaxhighlight> | |||
=== Excluding applications from the default install === | === Excluding applications from the default install === | ||
| Line 40: | Line 44: | ||
==== Plasma 6 ==== | ==== Plasma 6 ==== | ||
Optional packages: [https://github.com/NixOS/nixpkgs/blob/nixos- | Optional packages: [https://github.com/NixOS/nixpkgs/blob/nixos-24.11/nixos/modules/services/desktop-managers/plasma6.nix#L159-L174 plasma6.nix] | ||
<syntaxHighlight lang=nix> | <syntaxHighlight lang=nix> | ||
| Line 61: | Line 65: | ||
]; | ]; | ||
</syntaxHighlight> | </syntaxHighlight> | ||
=== Default Wayland/X11 session === | === Default Wayland/X11 session === | ||
| Line 97: | Line 72: | ||
Plasma 6 runs on Wayland by default. To launch an X11 session by default: | Plasma 6 runs on Wayland by default. To launch an X11 session by default: | ||
< | <syntaxhighlight lang="nix"> | ||
services | services.displayManager.defaultSession = "plasmax11"; | ||
</ | </syntaxhighlight> | ||
==== SDDM on Wayland ==== | ==== SDDM on Wayland ==== | ||
< | <syntaxhighlight lang="nix"> | ||
services | services.displayManager.sddm.wayland.enable = true; | ||
</ | </syntaxhighlight> | ||
==== Plasma 5 ==== | ==== Plasma 5 ==== | ||
| Line 111: | Line 86: | ||
Plasma 5 runs on X11 by default and it is recommended to use Wayland with Plasma 6 instead. To launch a Wayland session by default anyway: | Plasma 5 runs on X11 by default and it is recommended to use Wayland with Plasma 6 instead. To launch a Wayland session by default anyway: | ||
< | <syntaxhighlight lang="nix"> | ||
services | services.displayManager.defaultSession = "plasmawayland"; | ||
</ | </syntaxhighlight> | ||
== Troubleshooting == | == Troubleshooting == | ||
| Line 138: | Line 113: | ||
# Replace <code>"safeStorageBackend": "kwallet5"</code> with <code>"safeStorageBackend": "kwallet6"</code> (change 5 to 6) | # Replace <code>"safeStorageBackend": "kwallet5"</code> with <code>"safeStorageBackend": "kwallet6"</code> (change 5 to 6) | ||
# Start Signal | # Start Signal | ||
=== Bluetooth configuration not available === | |||
Add the following configuration (generally in hardware-configuration.nix): | |||
<syntaxHighlight lang=nix> | |||
hardware.bluetooth.enable = true; | |||
</syntaxHighlight> | |||
This will add the following packages: | |||
<syntaxHighlight lang=nix> | |||
[ | |||
bluedevil | |||
bluez-qt | |||
pkgs.openobex | |||
pkgs.obexftp | |||
] | |||
</syntaxHighlight> | |||
== Tips and tricks == | == Tips and tricks == | ||
| Line 213: | Line 207: | ||
==== Using the worktree of a local repository ==== | ==== Using the worktree of a local repository ==== | ||
{{Note|Since this relies on reading directly from the filesystem during the build, the impure mode has to be used, e.g.: <code>nixos-rebuild --impure …</code>}} | |||
Now one might not want to commit each and every change during development to iterate more quickly, but to just rebuild after having saved the latest changes. | Now one might not want to commit each and every change during development to iterate more quickly, but to just rebuild after having saved the latest changes. | ||
| Line 223: | Line 218: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
[[Category:Desktop environment]] | [[Category:Desktop environment]] | ||
[[Category:Applications]] | [[Category:Applications]] | ||
[[Category:KDE]] | [[Category:KDE]] | ||