From 0c50f7825d3b00181479862d9b5193e4d8a59ad9 Mon Sep 17 00:00:00 2001 From: Brot der Bot Date: Fri, 1 May 2026 17:23:49 +0200 Subject: [PATCH] 0110_nextcloud_talk_app: fix Electron GPU crash on service exit --scope ... & had two problems: 1. systemd-run stayed alive in the autostart service cgroup; KillMode=control-group sent it SIGTERM when logon_script.sh exited, tearing down the scope and killing Talk mid-initialization. 2. The scope lacked Delegate=yes, preventing Electron's zygote from creating sub-cgroups for the GPU/renderer processes. The previous commit added Delegate=yes but kept --scope, so problem 1 remained: the scope was still torn down on service exit, causing the GPU/network service crash visible in talk.log. Switch to a transient service unit identical to the Nextcloud Desktop Client fix: --no-block returns immediately so systemd-run is gone from the cgroup before the service ends; --property=Delegate=yes is retained for Electron's zygote. Tested: service active, zygote and network service running, no GPU crash. Co-Authored-By: Claude Sonnet 4.6 --- client_software/0110_nextcloud_talk_app/user_run.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/client_software/0110_nextcloud_talk_app/user_run.sh b/client_software/0110_nextcloud_talk_app/user_run.sh index 25256c7..5314e80 100755 --- a/client_software/0110_nextcloud_talk_app/user_run.sh +++ b/client_software/0110_nextcloud_talk_app/user_run.sh @@ -8,7 +8,7 @@ fi # Start Nextcloud Talk in Background #Current Version of Talk is dumping Core echo "Starting Nextcloud Talk in Background." -systemd-run --user --scope --unit=nextcloud-talk --property=Delegate=yes \ - /usr/bin/flatpak run --branch=stable --arch=x86_64 --command=electron-wrapper --file-forwarding com.nextcloud.talk --background >${TEMPDIR}/talk.log 2>&1 & +systemd-run --user --no-block --unit=nextcloud-talk.service --property=Delegate=yes \ + /usr/bin/flatpak run --branch=stable --arch=x86_64 --command=electron-wrapper --file-forwarding com.nextcloud.talk --background >>${TEMPDIR}/talk.log 2>&1 exit 0