From d1b6a8944e095124b6b5f7f9d982754c72667ba0 Mon Sep 17 00:00:00 2001 From: ckoch Date: Fri, 17 Jul 2026 19:52:25 -0400 Subject: [PATCH] Seed Sunshine with encoder=software before first start MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 --- files/console/usr/bin/bc250-sunshine-autostart | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/files/console/usr/bin/bc250-sunshine-autostart b/files/console/usr/bin/bc250-sunshine-autostart index 96df4bb..2c5c960 100644 --- a/files/console/usr/bin/bc250-sunshine-autostart +++ b/files/console/usr/bin/bc250-sunshine-autostart @@ -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