Share ES-DE's emulator/config mounts with the Wolf Desktop app

The 'desktop' Wolf app (ghcr.io/games-on-whales/desktop:edge, full XFCE
session) had mounts=[] — no access to emulators/ or the persistent
.config/.local/share home ES-DE/RetroArch use. That meant there was no way
to run a standalone emulator like Cemu outside ES-DE's single-app Sway
kiosk session, which matters because a second top-level window from an
app (e.g. Cemu's own Settings/Input dialogs) can fail to ever get mapped
or focused there — confirmed live: clicking Cemu's General Settings
highlighted the menu entry but no dialog ever appeared, with no way to
recover control short of killing ES-DE.

Give Desktop the same emulators -> ~/Applications and retro-home(-data)
-> .config/.local/share mounts esde/retroarch already use, so Cemu (or
any other standalone emulator) can be launched directly from a real
multi-window XFCE session instead, using the exact same settings.xml the
next ES-DE-launched session will read.

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-02 20:34:04 +00:00
parent 910a49f12f
commit d954c605b0
+26 -2
View File
@@ -1721,7 +1721,19 @@ CATALOG = {
name='WolfDesktop', title='Desktop',
icon='https://games-on-whales.github.io/wildlife/apps/desktop/assets/icon.png',
image='ghcr.io/games-on-whales/desktop:edge',
mounts=[],
# Shares the SAME persistent home (.config/.local/share) and
# emulators/ -> ~/Applications mount as esde/retroarch below — a real
# XFCE multi-window session is a much more reliable place to run a
# standalone emulator's own GUI (Settings/Input dialogs) than inside
# ES-DE's single-app Sway kiosk session, where a second top-level
# window (e.g. Cemu's own Settings dialog) can fail to ever get
# mapped/focused. Whatever gets configured here (Cemu's settings.xml,
# controllerProfiles/, etc.) is read by the exact same app the next
# time it's launched through ES-DE, since it's the same mounted home.
mounts=[f'{games}/retro-home:/home/retro/.config:rw',
f'{games}/retro-home-data:/home/retro/.local/share:rw',
f'{games}/emulators:/mnt/games/emulators:rw',
f'{games}/emulators:/home/retro/Applications:rw'],
env=STD_ENV, cap_add=STD_CAP, security_opt=[], ipc_mode='host',
ulimits=[], privileged=False,
),
@@ -3124,7 +3136,19 @@ CATALOG = {
name='WolfDesktop', title='Desktop',
icon='https://games-on-whales.github.io/wildlife/apps/desktop/assets/icon.png',
image='ghcr.io/games-on-whales/desktop:edge',
mounts=[],
# Shares the SAME persistent home (.config/.local/share) and
# emulators/ -> ~/Applications mount as esde/retroarch below — a real
# XFCE multi-window session is a much more reliable place to run a
# standalone emulator's own GUI (Settings/Input dialogs) than inside
# ES-DE's single-app Sway kiosk session, where a second top-level
# window (e.g. Cemu's own Settings dialog) can fail to ever get
# mapped/focused. Whatever gets configured here (Cemu's settings.xml,
# controllerProfiles/, etc.) is read by the exact same app the next
# time it's launched through ES-DE, since it's the same mounted home.
mounts=[f'{games}/retro-home:/home/retro/.config:rw',
f'{games}/retro-home-data:/home/retro/.local/share:rw',
f'{games}/emulators:/mnt/games/emulators:rw',
f'{games}/emulators:/home/retro/Applications:rw'],
env=STD_ENV, cap_add=STD_CAP, security_opt=[], ipc_mode='host',
ulimits=[], privileged=False,
),