PF

ProtonFix

Linux Gaming Troubleshooter

Linux Gaming Troubleshooter

ProtonFix

Deterministic log analysis for Linux gaming.

Upload a Steam, Proton, Wine, DXVK, VKD3D, or Vulkan log. ProtonFix runs 71 pattern fingerprints first. GPT-4.1-mini is only called when no fingerprint matches — not by default.

71 fingerprints17 PII redaction categoriesMIT licenseSQLite — no external databaseSelf-hosted — your data stays local

Pipeline

How ProtonFix works

01

Parse

Raw log text is tokenised. Proton version, Steam AppID, game name, DXVK / Mesa build strings, and error messages are extracted into structured evidence.

02

Match fingerprints

71 pattern definitions are evaluated against the extracted evidence. Each match is scored by severity, category priority, and co-occurrence weights.

03

Resolve root cause

ROOT_CAUSE_GRAPH links fingerprints to their upstream causes. Downstream symptoms are pruned. The highest-ranked root node becomes the primary finding.

04

AI fallback — if needed

When no fingerprint matches, GPT-4.1-mini is called with the structured parse context. Most logs never reach this step.

Steps 01–03 are fully deterministic — no network calls, no model inference. Step 04 is gated behind a check: if the fingerprint engine returns any result, the AI call is skipped entirely.

Coverage

Supported technologies

ProtonFix parses and cross-references log output from these runtimes, compatibility layers, and GPU stacks.

  • Steam
  • Proton
  • Proton-GE
  • Wine
  • Wine-GE
  • DXVK
  • VKD3D-Proton
  • Vulkan
  • Mesa / RADV
  • AMDGPU
  • NVIDIA
  • Intel ANV
  • Gamescope
  • GameMode
  • MangoHud

Example

What a diagnosis looks like

A representative output from the deterministic engine. This result required zero AI calls — the root cause was matched directly from the log.

Diagnosis

⚡ Deterministic Engine

File: steam_proton_620.log

Game: Portal 2

Proton: 8.0-5

Confidence: 91%

Severity:🔴 HIGH

Summary

Vulkan initialisation failed immediately after launch. DXVK could not create a Vulkan device, causing the renderer to crash. Root cause matched from the ICD error string — no AI fallback used.

Primary Cause

Missing or Broken Vulkan Driver

VULKAN_DRIVER_MISSING

🔴 HIGH

No Vulkan ICD loader was found at runtime. DXVK and VKD3D both require a working Vulkan driver to initialise. This failure blocks all DirectX translation layers.

Known fixes

sudo apt install mesa-vulkan-drivers
vulkaninfo
Restart Steam after driver installation

Privacy

What gets collected

Log submission is anonymous. PII is detected and removed automatically before anything is stored.

No account required

Log submission is anonymous. No sign-up, no session cookies, no tracking pixels.

IP stored as a hash

Submission IP is converted to a 16-character SHA-256 truncation before being written to disk. The plain-text IP is never persisted.

PII stripped before storage

17 redaction categories run before every save: Linux and Windows home paths, Steam IDs, usernames, UUIDs, MAC addresses, hostnames, and email addresses.

Data stays on your server

Submissions are stored in SQLite on the host running ProtonFix. Nothing is forwarded to third parties except the optional OpenAI fallback call.

Open Source

Built in the open

The fingerprint database, causal dependency graph, and confidence scoring engine are plain Python dicts — no black boxes, no vendor lock-in.