Seed Sunshine with encoder=software before first start

Sunshine segfaults (exit 139, crash loop) probing the Vulkan H.264
encoder on the BC-250 — the GPU has no VCN/video-encode hardware and
the failed probe crashes instead of falling through. Software x264 is
the only viable encoder on this chip anyway. Seeded only if no config
exists, so user edits are never overwritten.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-17 19:52:25 -04:00
co-authored by Claude Fable 5
parent 6194756d2a
commit d1b6a8944e
@@ -6,4 +6,14 @@
[ -r /etc/bc250-console.conf ] && . /etc/bc250-console.conf
[ "$(id -un)" = "${CONSOLE_KID_USER:-kid}" ] || exit 0
flatpak info dev.lizardbyte.app.Sunshine >/dev/null 2>&1 || exit 0
# BC-250 has no video-encode hardware, and Sunshine SEGFAULTS probing the
# Vulkan H.264 encoder on this GPU (crash loop, exit 139). Seed the config
# with the software encoder before first start; never clobber user edits.
SUNSHINE_CONF="$HOME/.var/app/dev.lizardbyte.app.Sunshine/config/sunshine/sunshine.conf"
if [ ! -e "$SUNSHINE_CONF" ]; then
mkdir -p "$(dirname "$SUNSHINE_CONF")"
echo "encoder = software" > "$SUNSHINE_CONF"
fi
exec systemctl --user enable --now app-dev.lizardbyte.app.Sunshine.service