KDE: Difference between revisions
Langfingaz (talk | contribs) →Excluding applications from the default install: Update link from NixOS 24.11 to 25.11 |
Don't need ddcutil in system packages |
||
| (5 intermediate revisions by 2 users not shown) | |||
| Line 19: | Line 19: | ||
# Optionally enable xserver | # 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 [[ | }|name=configuration.nix|lang=nix}}{{Warning|[[SDDM]] is no longer supported on the unstable branch, users on unstable should use [[Plasma Login Manager]] instead. See configuration options on the Plasma Login Manager page.}} | ||
== Configuration == | == Configuration == | ||
| Line 35: | Line 35: | ||
elisa | elisa | ||
]; | ]; | ||
}|name=configuration.nix|lang=nix}} | }|name=configuration.nix|lang=nix}} | ||
| Line 54: | Line 44: | ||
services.displayManager.defaultSession = "plasmax11"; | services.displayManager.defaultSession = "plasmax11"; | ||
}|name=configuration.nix|lang=nix}} | }|name=configuration.nix|lang=nix}} | ||
=== Unlock KDE Wallet with LUKS password === | |||
When using LUKS disk encryption and autologin in your display manager, it is possible to unlock KDE Wallet with the LUKS password. Set the LUKS password, login password, and KWallet keyring password all to the same string, and for NixOS 25.11 and below use the following configuration: | |||
<syntaxhighlight lang="nix"> | |||
{ | |||
boot.initrd.systemd.enable = true; | |||
systemd.services.display-manager.serviceConfig.KeyringMode = "inherit"; | |||
security.pam.services.sddm-autologin.text = pkgs.lib.mkBefore '' | |||
auth optional ${pkgs.systemd}/lib/security/pam_systemd_loadkey.so | |||
auth include sddm | |||
''; | |||
} | |||
</syntaxhighlight> | |||
For Plasma Login Manager in NixOS 26.05 or above, use: | |||
<syntaxhighlight lang="nix"> | |||
{ | |||
boot.initrd.systemd.enable = true; | |||
systemd.services.plasmalogin.serviceConfig.KeyringMode = "inherit"; | |||
security.pam.services.plasmalogin-autologin.rules.auth = { | |||
systemd_loadkey = { | |||
order = 0; | |||
control = "optional"; | |||
modulePath = "${pkgs.systemd}/lib/security/pam_systemd_loadkey.so"; | |||
}; | |||
plasmalogin = { | |||
order = 1; | |||
control = "include"; | |||
modulePath = "plasmalogin"; | |||
}; | |||
}; | |||
} | |||
</syntaxhighlight> | |||
== Troubleshooting == | == Troubleshooting == | ||
| Line 99: | Line 124: | ||
=== Brightness and Color brightness control sets gamma instead of brightness on external monitors === | === 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. | 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. Note that you do not need to add <code>ddcutil</code> to your system packages because PowerDevil uses libddcutil. | ||
=== Plasma wallpaper reverts back to default after a Nix GC === | |||
When setting a wallpaper, Plasma may save the path as a <code>/nix/store/*/share/wallpapers</code> path instead of <code>/run/current-system/sw/share/wallpapers/</code>. To fix this, open <code>$XDG_CONFIG_HOME/plasma-org.kde.plasma.desktop-appletsrc</code> and manually change the paths. | |||
=== No available locale settings in the Plasma system settings === | |||
The "Region & Language" page in the Plasma system settings is somewhat broken on NixOS. Instead, edit the <code>$XDG_CONFIG_HOME/plasma-localerc</code> file. | |||
== Tips and tricks == | == Tips and tricks == | ||