Es gibt Tage, da startet man den Rechner, trinkt einen Kaffee und benutzt einfach sein System.
Und dann gibt es Tage mit Hyprland, Noctalia, PipeWire und WirePlumber.
An so einem Tag fühlt sich der Desktop nicht wie ein sauber eingerichtetes System an, sondern eher wie eine Kindergartengruppe kurz vor dem Mittagsschlaf. Einer malt an die Wand, einer versteckt die Schuhe, einer schreit wegen Pixeln, und irgendwo hat jemand den HDMI-Soundausgang in die Bauklotzkiste gelegt.
Akt 1: Noctalia startet keine Programme mehr
Angefangen hat alles eigentlich harmlos.
Hyprland 0.55 brachte Lua-Config mit. Also wurde aus meiner alten, gemütlichen hyprland.conf plötzlich eine hyprland.lua mit Modulen, Funktionen und diesem leisen Gefühl, dass meine Desktop-Config jetzt ein kleines Softwareprojekt ist.
Die Config lief irgendwann.
Hyprland war zufrieden.
Ich war vorsichtig optimistisch.
Dann kam Noctalia um die Ecke und sagte sinngemäß:
„Programme starten? Nein! Keine Lust!“
Der App Launcher öffnete sich zwar, sah hübsch aus, tat wichtig, aber sobald ich Vivaldi, Thunar oder sonst etwas starten wollte, passierte ungefähr so viel wie bei einem Drucker ohne Papier und Lebenswillen.
Der Grund war am Ende ziemlich logisch: Noctalia nutzte intern noch den alten Hyprland-Dispatch-Stil:
hyprctl dispatch -- exec ...
Mit Lua-Config war das plötzlich nicht mehr passend. Hyprland 0.55 wollte die neue Lua-kompatible Variante:
hl.dsp.exec_cmd(...)
Also wurde Noctalia manuell gepatcht, damit der Launcher wieder Programme starten konnte.
Und natürlich, wirklich natürlich, kam kurz danach ein Noctalia-Update mit:
Add Hyprland lua config support
Danke. Sehr nett. Gestern noch selbst im Maschinenraum mit dem Schraubendreher unterwegs, heute sagt upstream:
„Ach ja, haben wir jetzt auch.“
Linux-Timing. Immer wieder ein kleines Gedicht mit Schraubenschlüssel.
Akt 2: Hyprland und der rechte Bildschirmrand des Grauens
Kaum starteten Programme wieder, fing Hyprland an, sich wegen Monitor-Scale zu benehmen wie ein Lineal mit Vertrauensproblemen.
Im Dwindle-Layout gingen Fenster rechts minimal über den Bildschirmrand. Erst nur ein Stückchen. So wenig, dass man denkt:
„Ach komm, ist doch egal.“
Ist es nicht.
Es ist nie egal.
Wenn ein Fenster rechts zwei Pixel verschwindet, sieht man es. Immer. Beim Arbeiten. Beim Tippen. Beim Atmen. Es sitzt da wie ein kleiner visueller Splitter im Auge.
Der erste Verdacht war: Gaps. Also Außenabstand hoch. Sah aber falsch aus, weil dann das Verhältnis links/rechts nicht mehr stimmte. Das war kein Fix, das war nur ein schiefer Bilderrahmen, der den Riss in der Wand eleganter aussehen lässt.
Dann kam der Scale ins Spiel:
scale = 1.07
3440x1440 mit 1.07 sieht erstmal harmlos aus, aber mathematisch ist das so eine kleine Gemeinheit:
3440 / 1.07 = 3214.95
1440 / 1.07 = 1345.79
Hyprland muss also runden. Dwindle rechnet. Fenster werden gesetzt. Und rechts bleibt irgendein Restpixel-Matsch übrig.
Klingt übertrieben, aber genau solche krummen Werte können bei Fractional Scaling richtig nervige Rundungsfehler erzeugen.
Kurz wurde mit 1.075 experimentiert, weil:
3440 / 1.075 = 3200
Das half erst. Dann half es plötzlich zu viel. Hyprland rundete den Wert effektiv auf 1.08, und das Fenster fuhr rechts aus dem Monitor wie ein Einkaufswagen mit kaputtem Rad.
Am Ende war die schönere Lösung ein sauberer Bruch:
scale = 16 / 15
Das ergibt:
3440 / (16/15) = 3225
1440 / (16/15) = 1350
Glatt. Sauber. Hyprland meckert nicht. Der rechte Rand bleibt da, wo er hingehört.
Ein Monitor-Scale als Bruch.
Weil der Desktop sonst Drama macht.
Natürlich.
Akt 3: PipeWire versteckt den HDMI-Sound
Nachdem Noctalia wieder Programme startete und Hyprland aufgehört hatte, Fenster in den Nachbarmonitor zu fantasieren, dachte ich:
„Jetzt ist Ruhe.“
Das war fast niedlich naiv…
Denn dann war der HDMI-Soundausgang weg.
Nicht komplett weg. Das wäre zu einfach gewesen.
Nein, das System entschied sich für die besonders nervige Variante: Der HDMI-Audiochip war da, ALSA sah ihn, PipeWire sah die Karte, der Monitor wurde sogar korrekt erkannt.
HDA NVidia
CU34G2XP
HDMI / DisplayPort
Aber in der Audio-Auswahl?
Nichts.
Noctalia zeigte ihn nicht an. PipeWire hatte keinen passenden Sink erzeugt. WirePlumber stand daneben und tat so, als wäre das alles völlig normal.
Die Karte existierte.
Das Profil existierte.
Der Ausgang war verfügbar.
Nur der tatsächlich auswählbare Audio-Sink fehlte.
Das ist ungefähr so, als würde dir jemand sagen:
„Die Tür ist da, der Schlüssel ist da, das Haus ist da, aber reingehen ist heute leider nicht vorgesehen.“
Die Lösung war absurd simpel:
pactl set-card-profile alsa_card.pci-0000_09_00.1 off
pactl set-card-profile alsa_card.pci-0000_09_00.1 output:hdmi-stereo
Einmal aus.
Einmal an.
Plötzlich war der Sink da:
AD104 High Definition Audio Controller Digitales Stereo (HDMI)
CU34G2XP
alsa_output.pci-0000_09_00.1.hdmi-stereo
Und endlich wieder Musik.
Nicht, weil etwas installiert wurde.
Nicht, weil ein Treiber fehlte.
Sondern weil PipeWire/WirePlumber offenbar kurz vergessen hatte, aus einem vorhandenen Gerät auch einen benutzbaren Ausgang zu machen.
Der Kindergartenbericht
Wenn man das alles zusammenfasst, klingt es wie ein Gruppenprotokoll:
- Noctalia wollte keine Programme starten.
- Hyprland wollte wegen Scale und Pixeln diskutieren.
- PipeWire hatte den HDMI-Ausgang irgendwo im Flur liegen lassen.
- WirePlumber hat so getan, als wäre das Konzept „Audioausgang“ optional.
- Ich saß davor und wollte eigentlich nur meinen Desktop benutzen.
Und genau das ist Linux manchmal.
Nicht schlecht.
Nicht kaputt.
Nur sehr… beteiligt.
Jede Komponente macht ihren Job. Meistens. Aber sobald ein größeres Update kommt, stehen alle zusammen im Raum und zeigen aufeinander.
Hyprland sagt:
„Ich rendere nur.“
Noctalia sagt:
„Ich klicke nur Knöpfe.“
PipeWire sagt:
„Ich route nur Audio.“
WirePlumber sagt:
„Ich entscheide nur.“
Und irgendwo dazwischen sitzt man selbst und sagt:
„Ich wollte doch nur Vivaldi starten und Musik hören.“
Fazit
Am Ende läuft wieder alles:
- Noctalia startet Programme.
- Hyprland nutzt Lua sauber.
- Der Monitor-Scale ist mathematisch brav.
- Dwindle bleibt im Bildschirm.
- HDMI-Audio ist zurück.
- Musik läuft.
- Die Immersion lebt wieder.
Aber dieser kleine Fehler-Reigen war schon beeindruckend.
So ein Desktop ist manchmal keine Maschine.
Eher eine kleine, fiese Kindergartengruppe mit Root-Rechten.
Und an manchen Tagen muss man halt einmal durch das Zimmer gehen und sagen:
Du startest jetzt Programme.
Du bleibst im Bildschirm.
Und du gibst mir gefälligst meinen HDMI-Sound zurück.
Danach ist wieder Frieden.
Bis zum nächsten Update. 😄