Running MATCH in WSL 2 + WSLg
Running MATCH in WSL 2 + WSLg
Goal: run MATCH under WSL 2 with working audio and no crashes.
(All steps below apply only to WSL — regular Linux users don’t need them.)
🧱 1. Check your WSL version
In Windows PowerShell:
wsl --version
Expected output:
WSL version: 2.3.x Kernel version: 5.x WSLg version: 1.x.x
If WSLg is missing, update and restart:
wsl --update wsl --shutdown
🎧 2. Check the sound server
Inside WSL:
ls /mnt/wslg
If you see PulseServer — great, sound proxy is available.
📦 3. Install required packages
These packages enable full PulseAudio/PipeWire support and fix the
Failed loading libpulse-simple.so.0 error.
sudo apt update sudo apt install -y \ libpulse0 libpulse-mainloop-glib0 libpulse-simple0 \ libasound2 pulseaudio-utils
Fedora:
sudo dnf install -y pulseaudio-libs pulseaudio-utils alsa-lib
Arch / Manjaro:
sudo pacman -S --needed pulseaudio pulseaudio-alsa alsa-lib # or, for PipeWire systems: sudo pacman -S --needed pipewire pipewire-pulse alsa-lib
🔌 4. Connect to the WSLg audio server
Add to the end of ~/.bashrc (or ~/.zshrc):
export PULSE_SERVER=unix:/mnt/wslg/PulseServer export SDL_AUDIODRIVER=pulse
Apply changes:
source ~/.bashrc
🔊 5. Test system audio
pactl info paplay /usr/share/sounds/alsa/Front_Center.wav
If you hear “Front Center” — 🎉 sound works!
🕹 6. Run the game
./MATCH # or python MATCH.py
If everything is set correctly, the game will start with audio and without the
libpulse-simple.so.0 error.
🧩 7. If audio still glitches
That’s a WSLg limitation, not the game. You can run in a safe silent mode:
SDL_AUDIODRIVER=dummy ./MATCH
Also ensure your code initializes audio with a fallback (already present in MATCH).
💡 Optional tweaks
- Limit FPS to reduce CPU load:
clock = pygame.time.Clock()<br>...<br>clock.tick(60) - Increase audio buffer to reduce crackling:
pygame.mixer.pre_init(48000, -16, 2, 2048) - Avoid fullscreen mode in WSLg — windowed works more reliably.
✅ Result
| Before | After |
|---|---|
| pygame.error: dsp: No such audio device | ✅ no longer appears |
| Failed loading libpulse-simple.so.0 | ✅ fixed |
| No sound | ✅ sound works |
| Crackling / freeze | ⚠️ minimal or gone (WSLg limits still apply) |
> WSL2 environment detected
> PulseAudio connection established [OK]
> MATCH running with sound
> enjoy minimalist precision across systems
Built with: Python + pygame • Cross-Platform Beta
Get MATCH
MATCH
Minimalist Competitive Puzzle
| Status | In development |
| Author | Vovkinshteynplay |
| Genre | Puzzle |
| Tags | 2D, competitive, Fast-Paced, Indie, Local multiplayer, precise, Retro, strategic |
| Languages | English |
| Accessibility | High-contrast |
More posts
- MATCH is now available on Linux and macOS!4 days ago
- Beta 0.8.1: bugfixes applied and UI clarity enchanted!4 days ago
- Autosaves were introduced with Beta 0.8!4 days ago
- MATCH Beta is live now!5 days ago
Leave a comment
Log in with itch.io to leave a comment.