Compare commits

..
3 Commits
Author SHA1 Message Date
Outis 70f3bfbd85 Merge pull request #427 from outis1one/claude/wolf-pair-port-conflict-7nz8qg
Claude/wolf pair port conflict 7nz8qg
2026-09-02 22:09:24 -04:00
Claude 2c93a2c7fd Fix unbound APP_KEYS variable in install_wolf()'s app injector
install_wolf()'s own copy of the app-injection step used $APP_KEYS instead
of its actual variable $_APP_KEYS (the underscore-prefixed name is
install_wolf()'s own; APP_KEYS is manage.sh's separate copy's variable).
Confirmed live: under 'set -u' without 'set -e' this was a non-fatal
"APP_KEYS: unbound variable" error printed mid-install right after "Wolf
restarted with updated config" — the script kept going, but the
Steam-storage-location success message never printed.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLX1yYKJExGSXmgUhxKQG6
2026-09-03 02:06:28 +00:00
Claude 5c3a38b9f0 Set APPIMAGE_EXTRACT_AND_RUN=1 on the Desktop app so AppImages can run
ghcr.io/games-on-whales/xfce has no libfuse2/libfuse3 at all (checked
against its own Dockerfile) and, unlike es-de's Dockerfile (which sets
this exact env var), no fallback either. Confirmed live: launching Cemu's
AppImage from a terminal inside the Desktop session failed outright with
the standard "AppImages require FUSE to run" error, even though the same
AppImage runs fine when ES-DE launches it — es-de's container already
carries this env var, xfce's doesn't. Adding it makes every AppImage
self-extract into a temp dir and run from there instead of trying to
FUSE-mount itself, matching how ES-DE already handles them.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLX1yYKJExGSXmgUhxKQG6
2026-09-02 21:53:38 +00:00
+27 -3
View File
@@ -1742,7 +1742,16 @@ CATALOG = {
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',
# ghcr.io/games-on-whales/xfce has no libfuse2/libfuse3 at all (checked
# against its own Dockerfile) and, unlike es-de's own Dockerfile
# (which sets this exact env var for the same reason), no fallback
# either — confirmed live: launching an AppImage (Cemu) straight from
# this container failed outright with the standard "AppImages require
# FUSE to run" error. APPIMAGE_EXTRACT_AND_RUN=1 makes every AppImage
# self-extract into a temp dir and run from there instead of trying
# to FUSE-mount itself, matching what already makes AppImages work
# fine when ES-DE launches them.
env=STD_ENV + ['APPIMAGE_EXTRACT_AND_RUN=1'], cap_add=STD_CAP, security_opt=[], ipc_mode='host',
ulimits=[], privileged=False,
),
}
@@ -3194,7 +3203,16 @@ CATALOG = {
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',
# ghcr.io/games-on-whales/xfce has no libfuse2/libfuse3 at all (checked
# against its own Dockerfile) and, unlike es-de's own Dockerfile
# (which sets this exact env var for the same reason), no fallback
# either — confirmed live: launching an AppImage (Cemu) straight from
# this container failed outright with the standard "AppImages require
# FUSE to run" error. APPIMAGE_EXTRACT_AND_RUN=1 makes every AppImage
# self-extract into a temp dir and run from there instead of trying
# to FUSE-mount itself, matching what already makes AppImages work
# fine when ES-DE launches them.
env=STD_ENV + ['APPIMAGE_EXTRACT_AND_RUN=1'], cap_add=STD_CAP, security_opt=[], ipc_mode='host',
ulimits=[], privileged=False,
),
}
@@ -3359,7 +3377,13 @@ PYEOF
# Nothing else to do for Steam storage: Wolf's state folder lives on the
# game drive, so Steam installs, games, and Proton prefixes land there
# automatically the first time you connect. No fix-perms, no symlinks.
if echo "$APP_KEYS" | grep -qw steam; then
# _APP_KEYS, not APP_KEYS — this install-time copy uses the
# underscore-prefixed name (set earlier in install_wolf()); APP_KEYS
# is manage.sh's own copy's variable name. Confirmed live: this was
# a silent no-op under 'set -u' without 'set -e' (bash prints
# "APP_KEYS: unbound variable" and just continues), so the Steam
# storage-location message never printed but nothing else broke.
if echo "$_APP_KEYS" | grep -qw steam; then
log_success "Steam will install games to $WOLF_STATE_DIR (on the game drive)"
fi
else