Waydaw

Ableton Live 12 on Linux

LinuxBashWineKDE WaylandAudio Production
Role
Independent developer and investigator
Context
Run Ableton Live, Max for Live, MIDI tools, and Windows plugins on Linux
Implemented
Launchers, recovery tools, logs, 59 focused diagnostics, and investigation documentation
Constraint
Diagnostics must be explicit, non-mutating, and safe for a shared Wine prefix
Outcome
A reproducible working environment with evidence behind each compatibility decision
Status
Active personal tooling used on KDE Plasma Wayland

I produce music in Ableton Live, and I run Linux. Waydaw is a harness that makes the two work together: one shared Wine prefix for Ableton Live 12, Max for Live, Bome MIDI Translator, and Windows VST plugins, with explicit launchers, logs, and recovery commands on KDE Plasma Wayland.

It’s bash-first and minimal: installs nothing, touches nothing it doesn’t own, and everything it assumes is something you can verify.

01

An environment you can interrogate

The harness ships 59 focused commands, and ./bin/check verifies the environment in one pass: Wine, the prefix, the Ableton executable, display compatibility, and PipeWire, warning instead of guessing. The rest of bin/ reads like a debugging diary: auth-liveness probes, DXVK loader audits, window-flicker capture, and MIDI route inspection. Each one was built to answer a specific question that came up in a real session. This output is a live capture from my machine.

Terminal showing waydaw bin/check output with PASS and WARN lines, and a listing of harness commands
  • Bash with strict mode throughout; a single WINEPREFIX so DAW, MIDI tooling, plugin scanners, and licenses all see one consistent Windows environment.
  • A trail of investigation documents records the why, not just the how. They include window presentation contracts, message-pump starvation experiments, thread backtrace captures with gdb and winedbg, and explicit criteria for when a technique earns its way into the stable launcher.
  • Diagnostics never modify anything: probes don't write to the registry, don't reconfigure the prefix, and leave the session running.

Like what you see? I'm available for full-stack and automation work.

Get in touch