Skip to main content

KDE Plasma

Base KDE Plasma packages for the full Plasma experience. Bundle with other packages to prevent package conflicts providing the same functionality.

TIP: Include any and all packages you want installed in a list to pacman. That way pacman will resolve package dependencies correctly and not install packages that would cause conflicts with other packages later on in the setup; e.g. the plasma group installs pulseaudio as a dependency of plasma-pa, but pulseaudio and pipewire (see below) are conflicting packages, meaning they can't both be installed at the same time prompting you to remove one or the other. Explicitly selected packages take precedence over packages auto-selected via dependencies.

pacman -S plasma plasma-wayland-session kde-applications 

Setting up display manager

Start SDDM on boot

Start the Simple Desktop Display Manager (SDDM) on boot to be presented with a graphical login screen.

systemctl enable sddm

Set Keymap for SDDM

NOTE: Executing this command while chrooted into an installation will produce an error that the locale could not be found. Set after rebooting the system, press CTRL + ALT + F3 when SDDM shows up (or any F-key between 2 and 7) to switch tty, log in via the command line and execute the command as root.

localectl set-x11-keymap de

Generate well-known user directories

xdg-user-dirs-update

KDE Wallet

KDE Wallet is the integrated password manager and secret store of KDE Plasma. It stores passwords to websites, WiFi networks, network shares, SSH keys and more.

Unlock Wallet automatically on login

Install kwallet-pam (already part of the plasma package group).

There are several caveats to consider:

  • Only blowfish encryption is supported
  • Wallet cannot be unlocked with auto-login
  • Wallet cannot be unlocked when logging in with a fingerprint
  • Wallet must be named kdewallet (default name)
  • When choosing to secure Wallet with a password it must match the user password
  • Disabling automatic closing of Wallet may be desired to keep it from asking for the password after every use

You could also use no password for your Wallet. If doing so you might want to enable prompts whenever an application tries to access the Wallet to prevent unwanted read/write access to it.

When setting up with SDDM as display manager (default for Plasma) no further PAM configuration is necessary, as the config comes with SDDM.

Using Wallet to store SSH key passphrases

Install ksshaskpass (already part of the plasma package group).

Autostart .desktop entry

Create ~/.config/autostart/ssh-add.desktop with following contents:

[Desktop Entry]
Exec=ssh-add -q
Name=ssh-add
Type=Application

NOTE: this .desktop file will only unlock SSH private keys with the default names. If you named your keys differently you also have to pass their path to ssh-add -q:

[Desktop Entry]
Exec=ssh-add -q ~/.ssh/key1 ~/.ssh/key2 ~/.ssh/key3
Name=ssh-add
Type=Application

Setting ksshaskpass as SSH agent

Next create ~/.config/plasma-workspace/env/askpass.sh with following contents:

#!/bin/sh

export SSH_ASKPASS='/usr/bin/ksshaskpass'

And make the file executable:

chmod +x ~/.config/plasma-workspace/env/askpass.sh

This will set ksshaskpass as the default SSH agent passphrase store and make graphical password prompts work.

Wallet for Google Chrome password store

To make Google Chrome use Wallet as a password store launch it with --password-store=kwallet5 or --password-store=detect. To make this persistent, add the argument to ~/.config/chrome-flags.conf.

NOTE: Different flavors of Chromium-based browsers use a different file name:

  • Chromium: chromium-flags.conf
  • Google Chrome DEV:chrome-dev-flags.conf
  • Vivaldi: vivaldi-stable.conf
See also: Making flags persistent

Misc additional packages

Additional packages you might want:

Name Description
freerdp Support for the Remote Desktop Protocol used for remote login to MS Windows machines
kimageformats Support for additional image formats in Dolphin and Gwenview
ksshaskpass ssh-add helper that uses kwallet and kpassworddialog
fwupd Firmware update manager; allows UEFI capsule updates in Discover if supported by firmware
packagekit-qt5 Manage Arch packages in Discover
appstream-qt Adds AppStream support for Discover
pacman -S freerdp kimageformats ksshaskpass fwupd packagekit-qt5