Een verdwenen menubalk terugtoveren in KDE Plasma

Kortgeleden kwam een nieuwe versie van KDE Plasma uit. Dat was een mooie gelegenheid om eens in een configuratieprobleempje te duiken, waar ik op mijn desktop al langere tijd mee zat. Ik was de menubalken in mijn programma's kwijt.

Voor degenen die daar niet zo in thuis zijn: KDE Plasma is, zoals dat mooi heet, een Desktop Environment onder Linux. Het is een complete set van "hoe zien venstertjes eruit" tot en met een hele rits programma's. Andere Desktop Environments zijn bijvoorbeeld Gnome, XFCE en Cinnamon. Het is één van de voordelen van Linux: je kunt je systeem aanpassen aan jouw wensen, in plaats van dat je veroordeeld bent tot wat een bedrijf in Cupertino of Redmond voor jou Het Beste™ acht.

KDE is daarbij al langere tijd mijn favoriet, het werkt prettig, ziet er netjes uit (vooral het nieuwe Breeze Twilight-thema oogt kek) en biedt diverse opties om het een en ander aan je smaak aan te passen. Zo kun je, mocht dat zo je ding zijn omdat je in het verleden langere tijd met MacOS hebt gewerkt, een globale menubalk maken, die altijd bovenin beeld aanwezig is, en waarin dan alle programma-menu's terecht komen:

Ja, lachen, het heeft wel wat, maar toch niet helemaal, Dus ik smijt die balk weer weg... en dan komen de menu's niet automatisch terug in de applicaties. Hm. Oeps. Geen idee waar daar de instelling voor zit, ik kom wel een menu-in-de-titelbalk tegen, waarmee er een hamburgertje in de titelbalk terechtkomt waar dan het applicatiemenu onder zit. Een klik extra, dus ook niet echt optimaal (hoewel het natuurlijk wel ruimte spaart).

Nou was ik er afgelopen week toch wel klaar mee, dus ik ben eens dieper gaan graven, en de oorzaak en oplossing zijn eigenlijk best logisch: op het moment dat je die globale menubalk neerzet, regelt KDE volautomatisch voor je dat de menubalken in de applicaties zelf niet meer getoond worden. Dat doet KDE door, zodra je een applicatie voor het eerst start, de configuratie ervan aan te vullen met een MenuBar=Disabled. Ik denk niet dat ik hoef uit te tekenen wat dat doet.

Als je de globale menubalk weer wegsmijt, haalt KDE echter die configuratieregeltjes niet automagisch weer weg, en ook dat is wel logisch - er staat niet bij of ze automatisch zijn geplaatst of een bewuste actie van de gebruiker waren, dus dan wordt er gegokt op veilig, en blijft het regeltje staan.

Gelukkig zijn die configuratiebestanden zelf makkelijk te vinden en aan te passen. Je kunt ze vinden met een grepje:

grep -r MenuBar=Disabled .config

# Daar komt dan bijvoorbeeld dit lijstje uit:
# .config/session/systemsettings_102068f03ab7558721159060027481774900000028680093_1590600275_205845:MenuBar=Disabled
# .config/session/dolphin_dolphin_dolphin:MenuBar=Disabled
# .config/kinfocenterrc:MenuBar=Disabled
# .config/konsolerc:MenuBar=Disabled
# .config/systemsettingsrc:MenuBar=Disabled
# .config/dolphinrc:MenuBar=Disabled

De regel eruit vissen doe je met sed en een loopje (dat ongetwijfeld efficiënter kan dan dit, ik ben geen bash-god):

for file in $(grep -rl MenuBar=Disabled .config); do sed -i '/^MenuBar=Disabled$/d' $file; done

Uiteraard zorg je dat je zoveel mogelijk de apps voor die tijd gesloten hebt. Daarna zijn alle menu's weer in de vensters te vinden zoals voorheen.

Glorieus!

Je gebruikt een browser die Google's FLOC gebruikt en daarmee op je spioneert. Lees hier meer over waarom dat een slecht idee is.