A tiny GTK4 desktop app that installs, launches, toggles and configures T7Patch v3 — the community patch that makes multiplayer for Call of Duty: Black Ops III work again on Linux.
- One-click install of the latest T7Patch release
- Launch the game from the app
- Enable / disable the patch without uninstalling
- Edit
t7patch.conf(player name, network password, friends-only) in a real UI - Detects your BO3 install automatically (via Steam's
libraryfolders.vdf) - Auto-detects updates and offers to install them
Deutsch weiter unten · 🇩🇪 Deutsche Version
- Linux with a working Steam install
- Black Ops III owned in Steam
- Proton (Proton-GE or Proton Experimental — either works with T7Patch v3)
- GTK 4 + libadwaita (shipped with GNOME, KDE Plasma 6, and most modern desktops)
- Python 3.11+ and PyGObject
You don't need to install any of these by hand — ./install.sh does it for you.
It auto-detects your distro's package manager and installs whatever is
missing. See below.
git clone https://github.com/HeyIamUsingArchBtw/t7patch-manager
cd t7patch-manager
./install.shThe installer auto-detects your package manager and works on all major distros:
| Distro family | Package manager |
|---|---|
| Arch, CachyOS, Manjaro, EndeavourOS, Garuda | pacman |
| Debian, Ubuntu, Pop!_OS, Mint, Zorin | apt |
| Fedora, RHEL, Rocky, Alma, Nobara | dnf |
| openSUSE Tumbleweed / Leap | zypper |
| Void Linux | xbps |
| Alpine | apk |
| Solus | eopkg |
The script:
- detects your package manager and installs anything missing (Python 3.11+, PyGObject, GTK 4, libadwaita, pipx),
- verifies that
import gi; Gtk; Adwactually works from Python — if not, it auto-retries a second install pass, - puts
~/.local/binon your PATH (fish/bash/zsh detected), - installs the app via
pipx, then enablesinclude-system-site-packageson the pipx venv so it can see your distro's PyGObject, - registers a
.desktopentry + icon, and - offers to launch the app.
Additional flags:
./install.sh --yes— non-interactive; useful for scripts../install.sh --diagnose— print environment status without touching anything../install.sh --use-pip— skip pipx; use a plainvenvat~/.local/share/t7patch-manager/venv(last-resort fallback)../install.sh --skip-deps— don't touch system packages../install.sh --uninstall— reverse everything the installer put in place.
On unsupported package managers the script lists the packages you need and
continues with --skip-deps.
paru -S t7patch-manager
# or
yay -S t7patch-managerIf you'd rather do it by hand, install the system packages for your distro first:
# Arch / CachyOS / Manjaro
sudo pacman -S --needed python python-gobject gtk4 libadwaita python-pipx
# Debian / Ubuntu / Mint
sudo apt install python3 python3-gi python3-gi-cairo gir1.2-gtk-4.0 gir1.2-adw-1 pipx
# Fedora
sudo dnf install python3 python3-gobject gtk4 libadwaita pipxThen:
git clone https://github.com/HeyIamUsingArchBtw/t7patch-manager
cd t7patch-manager
pipx install .
# Let pipx see the system PyGObject:
echo 'include-system-site-packages = true' \
>> ~/.local/share/pipx/venvs/t7patch-manager/pyvenv.cfg- Open T7Patch Manager from your app menu.
- Click Install T7Patch v3.xx — the app downloads the latest release and drops the patch files into your BO3 folder.
- In the Steam launch options row, click Set automatically. The app writes the required Proton launch string into Steam's config for you. If Steam is still running, it offers to close Steam cleanly first (Steam overwrites its config file on exit, so this step is mandatory).
- Optional: click Edit… to set your in-game name and network password.
- Hit Play. Steam launches BO3 through Proton with the patch active.
If you'd rather do it by hand, the target launch string is
WINEDLLOVERRIDES="dsound=n,b" %command% — right-click BO3 in Steam →
Properties → Launch options.
Non-Steam BO3 (Lutris / Heroic / manual install / DRM-free copy):
- The app auto-detects installs under
~/Games/Call of Duty Black Ops III, Lutris/Heroic/Bottles prefixes, or you can point it at any folder via Preferences → BO3 install path. - If you added BO3 to Steam via Add a Non-Steam Game and want the Steam launch options set for that shortcut too, open Preferences → Steam launch options and click Detect — the app scans your Steam shortcuts and fills in the correct per-user AppID for you.
- If you don't use Steam at all, the launch-options auto-set doesn't apply
— you set
WINEDLLOVERRIDESin your Lutris/Heroic/Bottles launcher wrapper instead. The rest of the app (install/toggle patch, editt7patch.conf) still works.
The toggle at the top disables the patch (renames the DLLs to *.disabled)
whenever you want vanilla BO3 for a session, without deleting anything.
Performance mode & Performance monitoring:
Below the launch-options row you'll see two switches:
- Performance mode (GameMode) wraps BO3 in
gamemoderun. Feral GameMode temporarily bumps the CPU governor toperformance, pins the CPU frequency, and gives the game realtime-ish scheduling priority. On laptops and CPUs with aggressive power-saving this is often the single biggest fix for stutter and low 1% lows in menus and matches. - Performance monitoring (MangoHud) wraps BO3 in
mangohud. This draws an FPS/CPU/GPU overlay on top of the game so you can see whether a stutter is caused by GPU load, CPU load, or something else entirely.
If either tool isn't installed yet, flipping the switch to on prompts the app to install it for you: it detects your distro (Arch/CachyOS/Manjaro, Debian/Ubuntu/Mint, Fedora, openSUSE), asks for your password once via a polkit prompt, and shows a live log window with progress. On success it enables the wrapper automatically.
Both switches rewrite Steam's launch string for you — they add
gamemoderun and/or mangohud in front of %command% in the correct
order (GameMode outside, MangoHud inside, exactly what ProtonDB and the
MangoHud docs recommend). If Steam is running when you flip a switch,
the app offers to close it cleanly first, otherwise Steam would
overwrite the change when it exits. The switches are disabled if the
respective tool isn't installed, and also if you've set a custom launch
string in Preferences (because in that case the app can no longer safely
rewrite it for you).
If the installer or the app misbehaves, start here.
./install.sh --diagnoseThis checks Python, GTK 4 / libadwaita bindings, pipx, your Steam paths
and BO3 install, without changing anything on your system.
t7patch-managercommand not found after install. Restart your shell (or open a new terminal). The installer adds~/.local/binto your PATH, but the change only applies to new shells.- App won't start / GTK4 or libadwaita import error. Make sure your
distro's
python3-gi,gtk4, andlibadwaitapackages are installed. Debian/Ubuntu users also needgir1.2-adw-1. Then re-run./install.sh. pipxisn't available on your distro. Re-run with./install.sh --use-pipto install into a standalone venv at~/.local/share/t7patch-manager/venvinstead.- The app can't find your BO3 install. Open Preferences… from the menu
and set the BO3 path manually (the folder that contains
BlackOps3.exe). - T7Patch download fails / GitHub is blocked. Open Preferences… and
either point the app at a mirror URL, or download
Linux.Steamdeck.and.Manual.Windows.Install.zipyourself from Scroptss/T7Patch releases and set that local zip as the source override. - Something else went wrong. In the app, open the menu → Debug log…, copy the log, and open an issue on GitHub.
Do I still need dsound.dll.disabled chattr tricks / hosts blocks / depot
reverts?
No. T7Patch v3 fixed the February 2026 injection issue natively. The old
workarounds are obsolete.
Does this touch anything outside my BO3 folder?
No. It only writes to
~/.local/share/Steam/steamapps/common/Call of Duty Black Ops III/.
Where's the config?
Same folder — t7patch.conf. The GUI reads and writes that file.
- T7Patch v3 by Scroptss
- Original T7Patch by shiversoftdev
MIT — see LICENSE.
Ein winziges GTK4-Programm, das T7Patch v3 installiert, startet, ein-/ausschaltet und konfiguriert — den Community-Patch, der den Multiplayer von Call of Duty: Black Ops III unter Linux wieder zum Laufen bringt.
- T7Patch mit einem Klick installieren (neuestes Release, automatisch)
- BO3 direkt aus der App starten
- Patch ein- und ausschalten, ohne ihn zu deinstallieren
t7patch.confin einer richtigen UI editieren (Spielername, Netzwerk-Passwort, „nur Freunde")- Findet deinen BO3-Ordner selbst (über Steams
libraryfolders.vdf) - Prüft automatisch auf Updates
- Linux mit funktionierender Steam-Installation
- BO3 in Steam gekauft
- Proton (Proton-GE oder Proton Experimental — beides läuft mit T7Patch v3)
- GTK 4 + libadwaita (bei GNOME, KDE Plasma 6 und den meisten modernen Desktops schon dabei)
- Python 3.11+ mit PyGObject
Du musst nichts davon selbst installieren — ./install.sh erledigt das für
dich. Der Installer erkennt deinen Paketmanager und installiert automatisch
nach, was fehlt.
git clone https://github.com/HeyIamUsingArchBtw/t7patch-manager
cd t7patch-manager
./install.shDas Script erkennt deinen Paketmanager automatisch und funktioniert auf allen
gängigen Distributionen: pacman (Arch/CachyOS/Manjaro), apt (Debian/Ubuntu
und Derivate), dnf (Fedora/RHEL/Nobara), zypper (openSUSE), xbps (Void),
apk (Alpine), eopkg (Solus).
Das Script:
- erkennt deinen Paketmanager und installiert fehlende System-Pakete (Python 3.11+, PyGObject, GTK 4, libadwaita, pipx),
- prüft danach mit
import gi; Gtk; Adw, ob die Bindings wirklich importierbar sind — falls nicht, wird ein zweiter Install-Durchlauf gestartet, - trägt
~/.local/binin deinen PATH ein (fish/bash/zsh erkannt), - installiert die App via
pipxund aktiviertinclude-system-site-packagesim pipx-venv, damit dein System-PyGObject sichtbar bleibt, - registriert Desktop-Eintrag + Icon und
- bietet an, die App direkt zu starten.
Weitere Flags:
./install.sh --yes— nicht-interaktiv (alle Prompts automatisch „ja")../install.sh --diagnose— Umgebung prüfen ohne etwas zu ändern../install.sh --use-pip— pipx überspringen; fester venv als Fallback../install.sh --skip-deps— System-Pakete unangetastet lassen../install.sh --uninstall— alles rückgängig machen, was der Installer eingerichtet hat.
paru -S t7patch-managergit clone https://github.com/HeyIamUsingArchBtw/t7patch-manager
cd t7patch-manager
pipx install --system-site-packages .- T7Patch Manager aus dem App-Menü öffnen.
- Auf Install T7Patch v3.xx klicken — die App lädt das neueste Release herunter und legt die Patch-Dateien in deinen BO3-Ordner.
- In der Zeile Steam launch options auf Set automatically klicken. Die App trägt die benötigte Proton-Startzeile für dich in Steams Config ein. Läuft Steam gerade, bietet sie an, Steam vorher sauber zu beenden (Steam überschreibt seine Config-Datei beim Beenden aus dem RAM — daher ist das Schließen zwingend).
- Optional: Edit… → Spielername und Passwort setzen.
- Auf Play klicken. Steam startet BO3 mit aktivem Patch.
Wer es lieber selbst macht: der Zielstring ist
WINEDLLOVERRIDES="dsound=n,b" %command% — Rechtsklick auf BO3 in Steam →
Eigenschaften → Startoptionen.
Non-Steam BO3 (Lutris / Heroic / manuelle Installation / DRM-freie Kopie):
- Die App findet Installationen unter
~/Games/Call of Duty Black Ops III, in Lutris/Heroic/Bottles-Prefixes automatisch — oder du zeigst ihr den Ordner über Preferences → BO3 install path. - Wenn du BO3 über Nicht-Steam-Spiel hinzufügen in Steam eingetragen hast und die Steam-Launch-Options auch für diese Verknüpfung setzen willst: Preferences → Steam launch options → Detect klicken. Die App scannt deine Steam-Shortcuts und trägt die richtige benutzerspezifische AppID für dich ein.
- Ohne Steam überhaupt: das automatische Setzen der Launch-Options greift
nicht —
WINEDLLOVERRIDESmuss dann im Lutris-/Heroic-/Bottles-Wrapper gesetzt werden. Der Rest der App (Patch installieren/deaktivieren,t7patch.confbearbeiten) funktioniert trotzdem.
Der Schalter oben deaktiviert den Patch (benennt die DLLs zu *.disabled um)
wenn du mal Vanilla-BO3 haben willst — ohne etwas zu löschen.
Performance mode & Performance monitoring:
Unter der Launch-Options-Zeile findest du zwei Schalter:
- Performance mode (GameMode) wickelt BO3 in
gamemoderunein. Feral GameMode setzt den CPU-Governor temporär aufperformance, pinnt die CPU-Frequenz nach oben und gibt dem Spiel Echtzeit-nahe Scheduling-Priorität. Auf Laptops und CPUs mit aggressivem Power-Saving ist das oft der wichtigste Fix gegen Stotterer und eingebrochene 1%-Lows in Menüs und Runden. - Performance monitoring (MangoHud) wickelt BO3 in
mangohudein. Damit legt sich ein Overlay mit FPS-, CPU- und GPU-Werten übers Spiel, sodass du siehst ob ein Ruckler von der GPU-Last, der CPU-Last oder was ganz anderem kommt.
Ist eins der Tools noch nicht installiert, bietet die App beim Umlegen des Schalters die Installation an: sie erkennt deine Distro (Arch/CachyOS/Manjaro, Debian/Ubuntu/Mint, Fedora, openSUSE), fragt einmal per Polkit-Dialog nach deinem Passwort und zeigt ein Live-Log-Fenster mit Fortschritt. Bei Erfolg wird der Wrapper danach automatisch aktiviert.
Beide Schalter schreiben deinen Steam-Startstring für dich um — sie
setzen gamemoderun und/oder mangohud in der korrekten Reihenfolge
vor %command% (GameMode außen, MangoHud innen, wie ProtonDB und die
MangoHud-Doku es empfehlen). Läuft Steam gerade beim Umlegen, bietet
die App an, Steam vorher sauber zu beenden — sonst überschreibt Steam
die Änderung beim nächsten Beenden. Ist das jeweilige Tool nicht
installiert, oder hast du in den Einstellungen einen eigenen
Launch-String hinterlegt, sind die Schalter ausgegraut (im Custom-Fall,
weil die App den String dann nicht mehr sicher umschreiben kann).
Wenn beim Installieren oder Starten etwas schief geht, hier ansetzen.
System-Check ausführen
./install.sh --diagnosePrüft Python, GTK 4 / libadwaita, pipx, deine Steam-Pfade und die
BO3-Installation — ohne irgendetwas am System zu ändern.
Häufige Probleme
t7patch-managerist nach der Installation nicht auffindbar. Neue Shell öffnen (oder Terminal neu starten). Der Installer trägt~/.local/binin den PATH ein — das gilt nur für neu geöffnete Shells.- App startet nicht / GTK4 oder libadwaita Import-Fehler. Stell sicher,
dass die Pakete
python3-gi,gtk4undlibadwaitadeiner Distro installiert sind. Auf Debian/Ubuntu zusätzlichgir1.2-adw-1. Danach./install.sherneut ausführen. pipxgibt's auf deiner Distro nicht../install.sh --use-pipausführen — installiert dann in ein eigenständiges venv unter~/.local/share/t7patch-manager/venv.- App findet BO3 nicht. Im Menü Preferences… öffnen und den
BO3-Pfad manuell setzen (der Ordner, in dem
BlackOps3.exeliegt). - T7Patch-Download schlägt fehl / GitHub blockiert. In Preferences…
eine Mirror-URL setzen oder
Linux.Steamdeck.and.Manual.Windows.Install.zipselbst von den Scroptss/T7Patch Releases herunterladen und die lokale Zip-Datei als Quelle wählen. - Irgendwas anderes ist kaputt. In der App Menü → Debug log… öffnen, Log kopieren und ein Issue bei GitHub aufmachen.