wolf: add Cemu TV-audio-stuck diagnostic block to the generated README

Copyable follow-up for the existing Cubeb/PulseAudio hang note: checks
whether a full Wolf restart has actually happened, whether PulseAudio
inside the Desktop container has any sinks at all, and pulls Cemu's own
log.txt plus its current <Audio> settings.xml block — narrows "stuck on
Disabled" down to a container-level audio problem vs. Cemu's own
device-switch path before guessing at a fix.

Verified the heredoc escaping by rendering the write_readme block through
a real bash heredoc and confirming $WOLF_DIR interpolates while every
other $ stays literal in the output.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLX1yYKJExGSXmgUhxKQG6
This commit is contained in:
Claude
2026-09-03 19:23:20 +00:00
parent cbfc28c2dd
commit 2dcfaafc87
+27
View File
@@ -5065,6 +5065,33 @@ time Cemu launches from ES-DE too.
repo, not just reconnecting) reliably cleared it in testing, giving a
fresh PulseAudio session to work with. Reconnect to a fresh Desktop
session afterward and try again.
**If the TV device stays stuck on "Disabled" and won't take a real
device at all** (not just a one-time hang), this narrows down whether
it's PulseAudio itself with nothing to offer inside the container, or
Cemu choking on a device it can actually see:
\`\`\`bash
# Has this been a full Wolf restart, not just a reconnect, since it broke?
sudo ./setup.sh wolf
# Does PulseAudio inside the Desktop container see any output devices at all?
CONTAINER=\$(docker ps --format '{{.Names}}' | grep -i WolfDesktop | head -1)
docker exec "\$CONTAINER" pactl list short sinks
docker exec "\$CONTAINER" pactl info | grep -i "default sink"
# Cemu's own log — it logs audio device init/errors directly
GAME_DIR=\$(grep '^GAME_STORAGE_DIR=' $WOLF_DIR/.env | cut -d= -f2-)
find "\$GAME_DIR/retro-home/Cemu" -iname "log.txt" -exec cat {} \\;
# What settings.xml currently has for Audio (even while stuck "disabled")
cat "\$GAME_DIR/retro-home/Cemu/settings.xml" 2>/dev/null | grep -A5 -i "<Audio"
\`\`\`
An empty \`pactl list short sinks\` means there's no real fix on Cemu's
side to chase — the container itself has no audio sink for anything to
attach to. A populated sink list with Cemu still stuck points at Cemu's
own device-switch path instead, and \`log.txt\` / the \`<Audio>\` block
above are what to paste back for that to get root-caused rather than
guessed at.
6. **Adding a second controller and the first one ends up driving both
characters?** That's not a Cemu-specific bug — see
"Multiple controllers" above (\`./manage.sh controllers\`).