From 4c0e295db252e580bbb68ed284dbeb835b164c52 Mon Sep 17 00:00:00 2001 From: Douglas Teles Date: Thu, 25 Jun 2026 23:06:48 -0300 Subject: [PATCH] es-menu: wire up AUTO FRAME DELAY and ship wg-quick for WIREGUARD VPN Two ES menu items that wrote settings nothing consumed / called a missing binary, found in the menu audit: - AUTO FRAME DELAY (Latency menu) persisted `.video_frame_delay_auto` to system.cfg, but setsettings.sh never translated it into retroarch.cfg, so the toggle did nothing. Add set_frame_delay(): ON/OFF -> RetroArch `video_frame_delay_auto = true/false`, AUTO leaves the cfg default. - WIREGUARD VPN toggle runs `wg-quick up/down`, but the wireguard-tools package only installed `wg`, so every toggle silently failed. wg-quick is the upstream bash helper (src/wg-quick/linux.bash); install it. Runtime deps (bash, ip, wg, iptables) are all present. Co-Authored-By: Claude Opus 4.8 --- packages/network/wireguard-tools/package.mk | 6 ++++++ .../packages/archr/sources/scripts/setsettings.sh | 11 +++++++++++ 2 files changed, 17 insertions(+) diff --git a/packages/network/wireguard-tools/package.mk b/packages/network/wireguard-tools/package.mk index b1c5498cac..936394a010 100644 --- a/packages/network/wireguard-tools/package.mk +++ b/packages/network/wireguard-tools/package.mk @@ -25,6 +25,12 @@ makeinstall_target() { mkdir -p ${INSTALL}/usr/bin cp ${PKG_DIR}/scripts/wg-keygen ${INSTALL}/usr/bin cp ${PKG_BUILD}/src/wg ${INSTALL}/usr/bin + # wg-quick is the upstream interface up/down helper (a bash script). The + # ES "WIREGUARD VPN" toggle runs `wg-quick up/down`, but only `wg` was + # installed, so the toggle silently failed. Ship the Linux variant; its + # runtime deps (bash, ip, wg, iptables) are all present. + cp ${PKG_BUILD}/src/wg-quick/linux.bash ${INSTALL}/usr/bin/wg-quick + chmod +x ${INSTALL}/usr/bin/wg-quick mkdir -p ${INSTALL}/usr cp -R ${PKG_DIR}/config ${INSTALL}/usr diff --git a/projects/ArchR/packages/archr/sources/scripts/setsettings.sh b/projects/ArchR/packages/archr/sources/scripts/setsettings.sh index 9c2a334e32..25a2e5070d 100755 --- a/projects/ArchR/packages/archr/sources/scripts/setsettings.sh +++ b/projects/ArchR/packages/archr/sources/scripts/setsettings.sh @@ -845,6 +845,16 @@ function set_runahead() { esac } +function set_frame_delay() { + # AUTO FRAME DELAY menu (configName.video_frame_delay_auto): "" = AUTO + # (leave retroarch.cfg default), "1" = ON, "0" = OFF. RetroArch expects a + # bool, so map ON/OFF to true/false and leave AUTO untouched. + case "$(game_setting video_frame_delay_auto)" in + 1) add_setting "none" "video_frame_delay_auto" "true" ;; + 0) add_setting "none" "video_frame_delay_auto" "false" ;; + esac +} + function set_audiolatency() { add_setting "audiolatency" "audio_latency" } @@ -1284,6 +1294,7 @@ set_savestates & set_autosave & set_netplay & set_runahead & +set_frame_delay & set_audiolatency & set_analogsupport & set_tatemode &