beefyi

Void and X11 Desktop Notes

Tiny desktop notes that are too useful to leave buried in my journal.

General Void Stuff

ProtonVPN with WireGuard

Copy the downloaded WireGuard config into place, lock it down, then bring it up.

sudo cp ~/Downloads/uk-free-1.conf /etc/wireguard/proton.conf
sudo chmod 600 /etc/wireguard/proton.conf
sudo wg-quick up proton
sudo resolvconf -u

elogind already running as PID

If Void complains that elogind is already running as a PID, remove the service link from /var/service.

sudo unlink /var/service/elogind

Source: Void Linux Reddit thread.

XFCE Stuff

XFCE clock format

I like an inline date and time format. I do not know why XFCE does not make this the obvious default, but this is what I use. Make sure you select Time, not Date.

%Y-%m-%d %H:%M:%S

i3 Stuff

Dedicated i3 scratchpad terminal

exec --no-startup-id alacritty --class scratchterm,scratchterm

for_window [class="scratchterm"] floating enable
for_window [class="scratchterm"] move scratchpad

bindsym $mod+minus [class="scratchterm"] scratchpad show, move position center

LightDM i3 session with dbus

I ran into this on Void Linux, where some desktop helpers were acting weird under i3. The main one was Thunar not detecting disks and removable media properly. Launching the session with dbus-run-session fixed it.

[Desktop Entry]
Name=i3
Comment=improved dynamic tiling window manager
Exec=dbus-run-session -- i3
TryExec=i3
Type=XSession
X-LightDM-DesktopName=i3
DesktopNames=i3
Keywords=tiling;wm;windowmanager;window;manager;

X11 Stuff

Xorg monitor layout

This is my monitor setup. Feel free to steal it and adjust the identifiers, positions, and rotations for yourself. You can use ARandR to figure out the layout.

Put the monitor layout in /etc/X11/xorg.conf.d/10-monitor.conf.

Section "Monitor"
    Identifier "DP-0"
    Option "PreferredMode" "1920x1080"
    Option "Rotate" "left"
    Option "Position" "0 0"
EndSection

Section "Monitor"
    Identifier "DP-4"
    Option "Primary" "true"
    Option "PreferredMode" "1920x1080"
    Option "Rotate" "normal"
    Option "Position" "1080 420"
EndSection

Of course NVIDIA has to be special. If you are using the NVIDIA driver, use a screen MetaModes layout instead.

Section "ServerLayout"
    Identifier "Layout0"
    Screen 0 "Screen0"
EndSection

Section "Device"
    Identifier "Device0"
    Driver "nvidia"
EndSection

Section "Screen"
    Identifier "Screen0"
    Device "Device0"
    DefaultDepth 24
    Option "MetaModes" "DP-0: 1920x1080 +0+0 { Rotation=left }, DP-4: 1920x1080 +1080+420 { Rotation=normal }"
EndSection

Xorg keyboard layout

I am from the UK, so I need a gb keyboard layout. Shocking, I know. Put this in /etc/X11/xorg.conf.d/00-keyboard.conf.

Section "InputClass"
    Identifier "system-keyboard"
    MatchIsKeyboard "on"
    Option "XkbLayout" "gb"
EndSection

X11 touchpad config

Sometimes I need to use a laptop, because yes, I am a digital nomad with a ThinkPad. Put this in /etc/X11/xorg.conf.d/30-touchpad.conf and change MatchProduct to match your own touchpad from xinput list.

Section "InputClass"
    Identifier "ELAN06C7 Touchpad libinput"
    MatchProduct "ELAN06C7:00 04F3:3193 Touchpad"
    Driver "libinput"

    Option "Tapping" "on"
    Option "ClickMethod" "clickfinger"
    Option "ScrollMethod" "twofinger"
    Option "NaturalScrolling" "true"
EndSection

Firefox middle mouse scrolling

If you are coming from Windows, you probably already have this enabled there. It is the thing where clicking the middle mouse button lets you scroll by moving the mouse. I do not really use it much anymore, but sometimes I do, so here is where Firefox hides it. Firefox calls this auto-scrolling.

Settings > General > Browsing > Use autoscrolling