KDE: Difference between revisions
m →Installation: feat: link to PLM |
|||
| (25 intermediate revisions by 14 users not shown) | |||
| Line 1: | Line 1: | ||
[https://kde.org | [https://kde.org/plasma-desktop/ KDE Plasma] is a desktop environment that aims to be simple by default, powerful when needed. | ||
== Installation == | == Installation == | ||
To use KDE Plasma, add this to your configuration.nix: | |||
{{file| | {{file|3={ | ||
{ | # Enable Plasma | ||
services.desktopManager.plasma6.enable = true; | services.desktopManager.plasma6.enable = true; | ||
# Default display manager for Plasma | |||
services.displayManager.sddm = { | |||
enable = true; | |||
# To use Wayland (Experimental for SDDM) | |||
wayland.enable = true; | |||
}; | |||
# Optionally enable xserver | |||
services.xserver.enable = true; | services.xserver.enable = true; | ||
}|name=configuration.nix|lang=nix}}{{Warning|SDDM is no longer supported on the unstable branch, users on unstable should use [[KDE#Plasma Login Manager|Plasma Login Manager]] instead. See configuration later in this page.}} | |||
== Configuration == | == Configuration == | ||
=== Excluding applications from the default install === | === Excluding applications from the default install === | ||
| Line 38: | Line 27: | ||
Some optional packages can be excluded if they are not needed at the cost of functionality. | Some optional packages can be excluded if they are not needed at the cost of functionality. | ||
Optional packages: [https://github.com/NixOS/nixpkgs/blob/nixos-24.11/nixos/modules/services/desktop-managers/plasma6.nix#L159-L174 plasma6.nix] | |||
{{File|3={ | |||
environment.plasma6.excludePackages = with pkgs.kdePackages; [ | |||
plasma-browser-integration | |||
konsole | |||
elisa | |||
]; | |||
}|name=configuration.nix|lang=nix}} | |||
=== Plasma Login Manager === | |||
[https://github.com/KDE/plasma-login-manager Plasma Login Manager] is currently only available in unstable. If you are on unstable you can enable it with the following configuration. | |||
{{File|3={ | |||
services.displayManager.plasma-login-manager = { | |||
enable = true; | |||
}; | |||
}|name=configuration.nix|lang=nix}} | |||
} | |||
=== Default Wayland/X11 session === | === Default Wayland/X11 session === | ||
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: | ||
{{File|3={ | |||
services | services.displayManager.defaultSession = "plasmax11"; | ||
}|name=configuration.nix|lang=nix}} | |||
== Troubleshooting == | == Troubleshooting == | ||
| Line 138: | Line 78: | ||
# 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> | |||
=== Brightness and Color brightness control sets gamma instead of brightness on external monitors === | |||
To allow <code>powerdevil</code> (and by extension the "Brightness and Color" status tray menu) to control brightness on supported monitors directly instead of adjusting gamma, [[Backlight#Via ddcutil|configure your system to enable ddcutil]], and allow your user to use DDC/CI without root. | |||
== Tips and tricks == | == Tips and tricks == | ||
| Line 213: | Line 175: | ||
==== 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 186: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
[[Category:Desktop environment]] | [[Category:Desktop environment]] | ||
[[Category:Applications]] | [[Category:Applications]] | ||
[[Category:KDE]] | [[Category:KDE]] | ||