Skip to main content

KDE Plasma Installation

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 

Video Acceleration

Drivers for hardware accelerated desktop rendering, improving performance and fidelity.

Intel

pacman -S mesa vulkan-intel intel-media-driver libva-intel-driver
yay -S intel-hybrid-codec-driver

AMDGPU

pacman -S xf86-video-amdgpu libva-mesa-driver vulkan-radeon amdvlk 

Nvidia

Nouveau open source driver

pacman -S libva-mesa-driver mesa-vdpau
yay -S nouveau-fw

Proprietary driver

pacman -S nvidia nvidia-utils # Includes Vulkan driver

Audio (& screen capture)

Use PipeWire as a more current and modern low-latency sound server. Also better suited for WebRTC screen sharing and recording in Wayland sessions.

pacman -S pipewire pipewire-pulse pipewire-jack pipewire-alsa wireplumber xdg-desktop-portal-kde

Bluetooth

pacman -S bluez bluez-utils
systemctl enable bluetooth

Spell Checking

pacman -S hunspell hunspell-de hunspell-en_US hyphen hyphen-de 

Printing

pacman -S cups logrotate system-config-printer
systemctl enable cups
systemctl enable logrotate.timer

Firefox

pacman -S firefox firefox-i18n-de
echo "MOZ_ENABLE_WAYLAND=1" >> /etc/environment
echo "MOZ_WEBRENDER=1" >> /etc/environment

Alternatively, navigate to about:config and set gfx.webrender.all to true to enable WebRender compositor.

Hardware Decoding

Utilizing GPU hardware accelerated decoding of video content results in smoother playback of HD content and beyond, while reducing CPU load and saving battery. Set the following in about:config to enable hardware accelerated video playback in Firefox:

Setting key Value Description
media.ffmpeg.vaapi.enabled true Make Firefox use VA-API to enable hardware accelerated video decoding
media.ffvpx.enabled false Disable internal VP8/9 software decoders
media.rdd-vpx.enabled false Prevent Firefox trying to put some video decoding in a remote video process
media.navigator.mediadatadecoder_vpx_enabled true Enables hardware decoding for WebRTC (web based video conferencing)

Plasma Integration

Control media playback from KDE

For better integration of Firefox into the KDE Plasma desktop, install the Plasma Integration add-on either via the Mozilla Add-on page or via AUR:

TIP: To prevent duplicate entries in the Media Player widget or tray icon, set media.hardwaremediakeys.enabled to false. This disables the media entry from Firefox and only uses the one from the Plasma integration add-on.

yay -S firefox-extension-plasma-integration

Make Firefox use KDE Dialogs

By default, Firefox uses GTK file and print dialogs, even on KDE. To change this to KDE native dialogs set one of the following:

  • Set widget.use-xdg-desktop-portal to true in about:config
  • Launch Firefox with GTK_USE_PORTAL=1 environment variable

Google Chrome

yay -S google-chrome

Tweaks

To enable hardware accelerated video decoding (with open source drivers) create a file at ~/.config/chrome-flags.conf and add the following line in it:

--enable-features=VaapiVideoDecoder

Furthermore, visit chrome://flags and set the following options to further tweak performance (use the search field to filter):

Setting key Value Description
#enable-webrtc-pipewire-capturer Enabled Uses PipeWire to capture the screen in Wayland sessions
#enable-gpu-rasterization Enabled Uses GPU for rasterization, boosting performance
#enable-zero-copy Enabled Accesses GPU memory directly, boosting performance
#ozone-platform-hint Auto Auto-detects which windowsing system is currently in use (X11, Wayland)

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

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