Das Windowmanagersterben geht weiter
Geschrieben am 29-05-2026 - ⧖ 2 minDiesmal: mangowm In Welchen Wayland compositor hättens denn gerne?
hab ich geschrieben das ich auf mangowm gewechselt
bin und war auch wunschlos glücklich. Bis zum ..k/a.. irgendeinem Update, denn
da wurde die IPC-Schnittstelle mmsg umgestellt; wieso das wichtig ist? Nun..
aus Faulheit und weil halt.
Bisher hatte ich ein simples Shellscript, mit dem ich via "rofi" das Layout
wechseln konnte; das sah so aus:
#!/bin/sh
selection =$( printf \
"T (Tile)
G (Grid)
M (Monocle)
K (Deck)
CT (Center Tile)
RT (Right Tile)
VS (Vertical Scroller)
VT (Vertical Tile)
VG (Vertical Grid)
VK (Vertical Deck)
TG (Tile Grid Mix)
S (Scroller)" | rofi -theme ~/.config/rofi/rose.rasi -run drun -dmenu -i -l 12 -p "" )
layout =" $( echo " $ selection " | awk '{print $1}' ) "
[ -n " $ layout " ] && mmsg -l " $ layout "
Jetzt gibt es kein -l mehr und auch keine wirkliche Alternative dazu, denn
jetzt muss ich die Ausgabe von mmsg get monitor HDMI-A-2 parsen. Wieso das
Scheisse ist wollt ihr wissen? Gute Frage. Die Ausgabe sieht nämlich so aus:
{"name":"HDMI-A-2","active":true,"x":1920,"y":10,"width":1920,"height":1080,"scale":1,"layout_index":7,"layout_symbol":"VS","last_open_surface":"rofi","tags":[{"index":1,"is_active":true,"is_urgent":false,"layout":"VS","client_count":1},{"index":2,"is_active":false,"is_urgent":false,"layout":"T","client_count":1},{"index":3,"is_active":false,"is_urgent":false,"layout":"T","client_count":1},{"index":4,"is_active":false,"is_urgent":false,"layout":"T","client_count":0},{"index":5,"is_active":false,"is_urgent":false,"layout":"T","client_count":0},{"index":6,"is_active":false,"is_urgent":false,"layout":"T","client_count":0},{"index":7,"is_active":false,"is_urgent":false,"layout":"T","client_count":0},{"index":8,"is_active":false,"is_urgent":false,"layout":"T","client_count":0},{"index":9,"is_active":false,"is_urgent":false,"layout":"T","client_count":0}],"active_tags":[1],"active_client":{"id":28,"title":" ~","appid":"foot"},"keymode":"default","keyboardlayout":"enu"}
Und da jetzt das Layout von "tag3" auslesen und ändern.. viel Spaß dabei, denn
das wird sogar mit ./jq eklig. Abgesehen davon gibt es
jetzt die Variable MANGO_INSTANCE_SIGNATURE, welche gesetzt wird bzw. werden
muss, damit mmsg mit dem Socket kommunizieren kann. Mango setzt die beim
Start, aber halt nur außerhalb von Tmux, denn wenn man Tmux startet, muss man
die Option "update-environment" um diese Variable erweitern, denn sonst bekommt
man ein freundliches
Error: MANGO_INSTANCE_SIGNATURE is not set. Did you run 'mmsg' in mango?
zu lesen.
Wieso macht man sowas? Ernsthaft? Wie kommt man auf die Idee ständig an bereits
bestehender und funktionierender Software rumzubasteln bis man einen User nach
dem anderem vergrault? Wayne.. ich wollte eh schon lange mal wieder einen neuen
Windowmanager installieren, denn ich hab ja sonst nichts zu tun ^^