PerGameMangoConfig erkennt das gerade gestartete Spiel, ermittelt die Steam- oder
Heroic-App-ID, legt automatisch eine passende MangoHud-Konfiguration an
und merkt sich deren Pfad dauerhaft. Kein Suchen, kein Überschreiben – auch nicht
unter Wayland.
Die App überwacht laufende Prozesse, ordnet sie einem Spiel zu und schlägt die passende MangoHud-Konfiguration vor. Ein Klick genügt – ab danach läuft der Rest automatisch.
Überwacht /proc und findet auch Wine- und Proton-Prozesse. Der vollständige
Prozessname wird über /proc/PID/exe und cmdline ermittelt, weil
/proc/PID/comm auf 15 Zeichen gekürzt ist.
Die SteamAppId wird durch die Elternkette bis zu 20 Ebenen gesucht – bei Proton-Spielen steht sie nicht im Prozess selbst, sondern im Launcher.
Aus dem gewählten Profil entsteht eine .conf-Datei im passenden Ordner.
Eine bestehende Datei wird vorher mit Zeitstempel gesichert.
Mit der Checkbox „Config merken" wird der Pfad unter dem Spielnamen in
mymangopergames.ini gespeichert. Danach wird nicht mehr gesucht.
MangoHud kann direkt in die Steam-Launch-Optionen geschrieben werden, sodass der HUD ohne manuellen Eingriff erscheint.
Über pgc lassen sich Profile wählen und speichern – auch wenn das Fenster
keinen Fokus hat. Unter Wayland der einzige zuverlässige Weg.
| Reiter | Inhalt |
|---|---|
| Favorites | Favoritenliste, direkt startbar |
| All my Games | Alle erkannten Spiele mit Status |
| Game/MangoHud | Spieldetails, Profilwahl und Config-Text |
| Settings | Einstellungen, Merk-Checkbox, INI-Pfade |
| Profiles/Info | Referenz aller 49 MangoHud-Parameter aus mango.csv |
Profile liegen in ~/mymangopergames/profiles.ini, jeweils als eigener INI-Abschnitt.
Die mitgelieferten sind:
| Profil | Zweck |
|---|---|
| None | Kein Profil – der Text im Feld wird unverändert gespeichert |
| STD | Standard-Layout |
| MINI | Kompakt, wenig Overlay |
| NOVRAM | Ohne RAM-/GPU-Ausgabe |
Eigene Profile lassen sich einfach in profiles.ini ergänzen.
| Pfad | Inhalt |
|---|---|
| ~/mymangopergames/mymangopergames.ini | Spiel → gemerkter Config-Pfad (correktconf) |
| ~/mymangopergames/profiles.ini | MangoHud-Profile |
| ~/mymangopergames/laucher.ini | Launcher, Pfade und Parameter |
| ~/mymangopergames/pgc_commands.log | Befehlswarteschlange für pgc |
| ~/.config/MangoHud/ | Erzeugte MangoHud-Konfigurationen |
| ~/.cache/heroic-covers/ | Zwischengespeicherte Cover-Bilder |
pgcUnter Wayland lassen sich Fenster nicht zuverlässig in den Vordergrund holen, und globale Tastenkürzel greifen nicht immer. Deshalb liest die App viermal pro Sekunde eine Warteschlangen-Datei. Andere Programme – Skripte, Launcher, Tastenbindungen – schreiben einfach eine Zeile hinein.
Befehle, die vor dem Programmstart in der Datei stehen, werden ignoriert. Es werden nur Zeilen ausgeführt, die nach dem Start dazukommen. Die App schreibt die Datei selbst nie – das würde die Lesezugriffe blockieren.
pgc liegt im Projektordner. Damit es ohne Pfad aufrufbar ist:
# ln -sf aus dem Projektordner ausführen:
mkdir -p ~/.local/bin
ln -sf /pfad/zu/PerGameMangoConfig/pgc ~/.local/bin/pgcpgc --checkBei gültigem Link: pgc: Skript gefunden: /pfad/…/pgc
pgc MINIWählt das Profil MINI und speichert die Config. Das Ergebnis steht im Log-Tab.
Der Klassiker: cd ~ && sudo ln -s "$PWD/pgc" /usr/local/bin/pgc
erzeugt einen Link auf ~/pgc – dort liegt keine Datei, und pgc wird
nicht gefunden. sudo ist außerdem unnötig, weil ~/.local/bin in bash,
zsh und fish automatisch im PATH liegt.
| Befehl | Wirkung |
|---|---|
| pgc MINI | Profil MINI wählen und Config speichern – ein Profilname ohne Schlüsselwort wirkt genauso, z. B. pgc STD |
| pgc PROFILE MINI | Profil nur wählen, nichts speichern |
| pgc PROFILES | Alle verfügbaren Profile ins Log schreiben |
| Befehl | Wirkung |
|---|---|
| pgc CONF /pfad/x.conf | Zielpfad der Config setzen; vorhandene Datei wird geladen |
| pgc SAVE | Config in die .conf-Datei schreiben |
| pgc SAVEINI | Spielzuordnung in mymangopergames.ini speichern |
| pgc CORRECTCONF | Merk-Eintrag umschalten: merken bzw. löschen |
| pgc DEFAULT | Standard-Config laden |
| Befehl | Wirkung |
|---|---|
| pgc START | Markiertes Spiel starten |
| pgc LOOKUP | Steam-Lookup ausführen |
| pgc OK | Favorit starten (auch GO) |
| pgc FAVUP | Favorit nach oben |
| pgc FAVDOWN | Favorit nach unten |
| pgc FAVREMOVE | Favorit entfernen |
| pgc TAB 2 | Reiter wechseln (0–4) |
| Befehl | Wirkung |
|---|---|
| pgc PING | Kurze Bestätigung ins Log – Lebt-Nachricht |
| pgc STATUS | Spiel, Profil, Config-Pfade ins Log schreiben |
| pgc HELP | Befehlsliste (auch ?) |
Mehrere Befehle passieren in eine Zeile, getrennt mit ; oder |:
# Profil wählen, Ziel setzen, speichern
pgc "PROFILE MINI;CONF ~/.config/MangoHud/mini.conf;SAVE"
# dieselbe Kette mit |
pgc "PROFILE STD|CONF ~/.config/MangoHud/std.conf|SAVE"echo "PROFILE MINI;SAVE" >> ~/mymangopergames/pgc_commands.log
Beim Start prüft die App, ob pgc bereitsteht, und schreibt das Ergebnis
in den Log-Tab. Fehlt der Helper oder ist der Link kaputt, steht der fertige Befehl
zum Kopieren dabei – mit dem tatsächlich gefundenen Pfad.
| Meldung | Bedeutung |
|---|---|
| [OK] pgc ist installiert | Alles bereit |
| [WARN] nicht im PATH | ln -sf-Befehl wird angezeigt |
| [WARN] nicht ausführbar | chmod +x wird angezeigt |
| [WARN] nicht gefunden | cp und chmod werden angezeigt |
Voraussetzung ist Gambas3 und MangoHud. Das Projektverzeichnis kann einfach an
einen beliebigen Ort gelegt werden – die App selbst schreibt ausschließlich nach
~/mymangopergames und ~/.config/MangoHud.
sudo pacman -S gambas3 gambas3-gb-image gambas3-gb-settings \
gambas3-gb-form gambas3-gb-desktop gambas3-gb-guisudo pacman -S mangohud # offizielles Repo
yay -S mangohud-git # oder aktuelle AUR-Versionsudo pacman -S python curlsudo apt update
sudo apt install gambas3 gambas3-gb-image gambas3-gb-settings \
gambas3-gb-form gambas3-gb-desktop gambas3-gb-guiAuf manchen Debian-Versionen heißt das Paket
gambas3-gb-gui oder nur gambas3. Prüfen mit
apt search gambas3.
sudo apt install mangohudsudo apt install python3 curlsudo dnf install gambas3sudo dnf install mangohudsudo dnf install python3 curl./launch_steam.sh
# oder direkt:
gambas3 PerGameMangoConfig/PerGameMangoConfig.gambasNach Quelltextänderungen genügt gbc3 -a nicht – es
erzeugt nur die kompilierten Klassen unter .gambas/. Das Startprogramm
entsteht mit:
cd PerGameMangoConfig
rm -rf .gambas && gbc3 -a
gambas3 --make "$PWD"gbc3 -a meldet trotzdem OK, wenn ein Symbol fehlt, das erst
zur Lauftime gebraucht wird. Deshalb nach jedem Umbau einmal starten und das Log prüfen.
Im .project sind Menüeinträge für Arch, Debian, Fedora und Ubuntu hinterlegt
(Spiele/Werkzeuge). Wer den Eintrag manuell möchte, legt eine Desktop-Datei an:
[Desktop Entry]
Type=Application
Name=PerGameMangoConfig
Comment=MangoHud-Konfiguration pro Spiel
Exec=/pfad/zu/PerGameMangoConfig/launch_steam.sh
Icon=pergamemangoconfig
Terminal=false
Categories=Game;Utility;Die App legt ~/mymangopergames selbst an. Vorhandene Dateien werden
nicht überschrieben.
Ein Spiel starten und in der App auf All my Games bzw. Game/MangoHud wechseln. Der Prozess wird erkannt.
Profil wählen, Zielpfad prüfen, Config merken aktivieren und Spiel merken klicken. Ab jetzt wird der Pfad direkt verwendet.
Launch-Option in Steam: mangohud %command%
pgc verlinkenSiehe oben – nur nötig, wenn die App von außen gesteuert werden soll.
Häufige Fragen und die Ursachen dahinter.
Der Link zeigt auf eine Datei, die es nicht gibt. Fast immer so entstanden:
# falsch, wenn im Home-Verzeichnis ausgeführt:
sudo ln -s "$PWD/pgc" /usr/local/bin/pgc
# -> Link zeigt auf ~/pgcRichtig – ohne sudo, weil ~/.local/bin schon im
PATH liegt:
mkdir -p ~/.local/bin
ln -sf /pfad/zu/PerGameMangoConfig/pgc ~/.local/bin/pgc
pgc --checkWarum im Log steht, was zu tun ist: Die App prüft beim Start den Zustand und gibt den fertigen Befehl aus.
Der Prozessname ist gbr3, nicht PerGameMangoConfig.
pgc prüft pgrep -x gbr3 und liest dann die Kommandozeile.
Ein pgrep -f PerGameMangoConfig wäre unbrauchbar, weil es den eigenen
Aufruf mitmatcht.
Drei mögliche Gründe:
; oder | wurde als Trenner
verwendet – jedes Zeilenende ist ein eigener Befehl.Im Log-Tab steht jede Zeile als [INFO] Externer Befehl: …. Damit
lässt sich genau sehen, was angekommen ist.
MangoHud muss in Steam unter den Launch-Optionen stehen:
mangohud %command%. Wird die Steam-Automatik benutzt, ist nach einer
Änderung an der VDF ein Neustart von Steam nötig – die Steam-Sitzung hält die
Library im Speicher.
Nach dem Speichern erinnert die App im Log daran, dass MangoHud
manuell zu aktivieren ist – Taste Shift+F4.
Bei Wine/Proton ist der Prozessname gekürzt – /proc/PID/comm
erlaubt nur 15 Zeichen. Die App liest deshalb /proc/PID/exe und
/proc/PID/cmdline aus. Trotzdem kann die Zuordnung scheitern, wenn:
Abhilfe: pgc LOOKUP oder den Namen von Hand in die Liste übernehmen.
Beim Speichern wird eine Sicherung mit Zeitstempel neben die Datei gelegt:
datei.conf.20260927_142530. Vorhandene Dateien werden nie gelöscht.
Damit gar nichts erst überschrieben wird, Config merken aktivieren – dann wird der bestätigte Pfad verwendet und nicht neu gesucht.
Die Cover kommen von SteamGridDB und Heroic. Es braucht eine
Internetverbindung und ein installiertes curl. Die Bilder werden unter
~/.cache/heroic-covers/ zwischengespeichert.
KDE skaliert X11- und Proton-Fenster dann selbst, was zu Auflösungsproblemen führen kann. Die App warnt beim Start. Lösung: unter Systemeinstellungen → Anzeige → Skalierung auf „Anwendung skalieren" umstellen, oder Wayland-Support des Spiels nutzen.
Der Bau mit gbc3 -a erzeugt kein ausführbares
Programm. Nötig ist:
cd PerGameMangoConfig
rm -rf .gambas && gbc3 -a
gambas3 --make "$PWD"Danach PerGameMangoConfig.gambas neu starten. Prüfen, ob die Datei
aktuell ist: ls -la PerGameMangoConfig.gambas – der Zeitstempel muss
gerade sein.
In ~/mymangopergames/profiles.ini einen neuen Abschnitt anlegen,
z. B. [ULTRA], darunter die MangoHud-Parameter als
schlüssel=wert. Die vollständige Liste aller 49 Parameter steht im
Reiter Profiles/Info und in mango.csv.
Danach pgc PROFILE ULTRA.
Ja – das ist der Hauptzweck. Alles, was eine Zeile in
~/mymangopergames/pgc_commands.log schreiben kann:
#!/bin/bash
# Profil beim Spielstart automatisch setzen
pgc "PROFILE MINI;CONF ~/.config/MangoHud/mini.conf;SAVE"Unter Wayland funktioniert das ohne Fenster-Fokus, im Gegensatz zu Tastenkürzeln.
Sie bezieht sich nur auf den externen Helper pgc:
| Meldung | Bedeutung |
|---|---|
| [OK] pgc ist installiert | externe Steuerung einsatzbereit |
| [WARN] nicht im PATH | ln -sf-Befehl steht dabei |
| [WARN] nicht ausführbar | chmod +x steht dabei |
| [WARN] nicht gefunden | cp und chmod stehen dabei |
Die App selbst läuft auch ohne pgc – die Meldung betrifft nur die
Bequemlichkeit, Befehle ohne Pfad aufzurufen.