💾 Archived View for anjune.lol › gmi › kwin-standalone.gmi captured on 2023-06-16 at 16:19:25. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-01-29)

➡️ Next capture (2023-07-22)

-=-=-=-=-=-=-

monolalia → M’kay Computer → Standalone kwin wallpaper workaround

So for no particular practical reason (now that I broke my other monitor and its presence can no longer confuse the hell out of Plasma) I started cobbling together a mini-DE out of kwin, kwin-tiling, polybar, rofi, clipmenu, i3lock, and other odds and ends.

Why not go with a dedicated tiler? Because I have a million shortcuts and window rules in kwin and would really rather not have to recreate them all. Because kwin-tiling gets me the mouse-friendly dynamic tiling I want, with a variety of actually useful layouts. Because it's GUI-customisable and I already know my way around it. Because the Desktop Grid is damn useful!

Have you ever tried to use kwin without Plasma, though? Yeah, so there's no wallpaper unless you disable the compositor (there goes the Desktop Grid!). kwin's compositor does something or other to cover up the X11 root window and all the fehs in the world can't do nuthin' about it.

The solution was stupidly simple: force a feh window to ACT LIKE a desktop background. What does kwin have window rules for, right? (It doesn't just work with feh, of course. It could be a video, or zombo.com. You can do anything at zombo.com.)

In ~/.config/kwinrulesrc:

Description=Window settings for feh
acceptfocusrule=2
closeablerule=2
desktop=-1
desktoprule=2
position=0,0
positionrule=2
skippager=true
skippagerrule=2
skiptaskbar=true
skiptaskbarrule=2
title=feh [1 of 1] - /home/anj/.local/share/wallpapers/current-wallpaper.png
titlematch=1
type=1
typerule=2
wmclass=feh
wmclassmatch=1

In System Settings terms, that's

Windows class (application): Exact Match, feh
Match whole window class: No 
Window types: All selected
Window title: Exact Match, feh [1 of 1] - /home/anj/.local/share/wallpapers/current-wallpaper.png
Position: Force, 0x0
Virtual Desktop: Force, All Desktops
Skip taskbar: Force, Yes
Skip pager: Force, Yes
Accept focus: Force, No
Closeable: Force, No
Set window type: Force, Desktop

(Also, exempt feh from tiling in your tiling script's settings.)

(ALSO, set QT_QPA_PLATFORMTHEME=kde when forgoing Plasma so Qt stuff will continue to use your lovingly configured colours, styles, icons, fonts, and so forth.)

Here's a picture:

../pictures/kwin-standalone.png