Graphical Configuration

First setup xorg and graphics.

Graphics

Install graphics drivers, my main system is nvidia.

pacman -S nvidia lib32-nvidia-utils

Xorg

pacman -S xorg-server

Set dpi in ~/.Xresources, I use 192 for my 4k screen.

nano ~/.Xresources
Xft.dpi: 192

Nvidia - Tearing Fix

My Nvidia card tears. This removes the tearing.

Desktop

nano /etc/X11/xorg.conf.d/20-nvidia.conf
Section "Screen"
    Identifier     "Screen0"
    Option         "metamodes" "nvidia-auto-select +0+0 { ForceFullCompositionPipeline = On }"
    Option         "AllowIndirectGLXProtocol" "off"
    Option         "TripleBuffer" "on"
EndSection

Laptop

To fix laptop using DRM kernel mode setting.

nvidia 364.16 adds support for DRM kernel mode setting.

Add the nvidia-drm.modeset=1 kernel parameter, and add nvidia, nvidia_modeset, nvidia_uvm and nvidia_drm to mkinitcpio modules.

Pacman hook

To update initramfs after an NVIDIA driver upgrade, use a pacman hook:

/etc/pacman.d/hooks/nvidia.hook
[Trigger]
Operation=Install
Operation=Upgrade
Operation=Remove
Type=Package
Target=nvidia

[Action]
Depends=mkinitcpio
When=PostTransaction
Exec=/usr/bin/mkinitcpio -P

Setup a Window Manager or Desktop Environment

KDE Plasma

Install KDE Plasma package as well as some KDE meta-packages. I dont install kdeaccessibility-meta, kdeedu-meta, kdegames-meta, .kdemultimedia-meta, kdepim-meta, kdesdk-meta, kdewebdev-meta.

Choose phonon-qt5-gstreamer, libx264, cronie, phonon-qt4-gstreamer.

pacman -S plasma kdeadmin-meta kdebase-meta kdegraphics-meta kdenetwork-meta kdeutils-meta

I disable baloo since it seems to make my system chug.

balooctl disable

Display Manager

I use sddm, simple and works well. For an onscreen keyboard install qt5-virtualkeyboard.

pacman -S sddm qt5-virtualkeyboard

Setup config at /etc/sddm.conf.d/sddm.conf.

nano /etc/sddm.conf.d/sddm.conf

Tell it to start a desktop file from /usr/share/xsessions/, set dpi, and user.

# Set DPI based on display
ServerArguments=-nolisten tcp -dpi 192

# Name of session file for autologin session
Session=plasma.desktop

# Username for autologin session
User=john

# Current theme name
Current=breeze

Enable sddm.

systemctl enable sddm

Reboot into KDE!

VNC

Can access current display or create new session.

System

To access the entire system over vnc, install tigervnc.

Configure startup run vncserver.

Setup a systemd unit to start vnc, note this connects to physical display, other options are available. Change user.

nano /etc/systemd/system/x0vncserver.service
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=john
ExecStart=/usr/bin/sh -c '/usr/bin/x0vncserver -display :0 -rfbport 5900 -passwordfile /home/john/.vnc/passwd &'

[Install]
WantedBy=multi-user.target
systemctl start x0vncserver

Fonts

Install ttf-google-fonts-git (AUR).

aursync --update --temp --chroot ttf-google-fonts-git

Last updated