From ae904753f784f61e25dc06c013497ee1c7b43701 Mon Sep 17 00:00:00 2001 From: Constantin Piber <59023762+cpiber@users.noreply.github.com> Date: Sat, 28 Jun 2025 23:04:13 +0200 Subject: [PATCH] systemd: use startup script, X server (#1482) * systemd: use startup script * script: Start X server using `xvfb-run` if DISPLAY is not set --- scripts/resources/pkg/suwayomi-server.sh | 8 +++++++- scripts/resources/pkg/systemd/suwayomi-server.service | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/scripts/resources/pkg/suwayomi-server.sh b/scripts/resources/pkg/suwayomi-server.sh index 30792184..981ec5de 100644 --- a/scripts/resources/pkg/suwayomi-server.sh +++ b/scripts/resources/pkg/suwayomi-server.sh @@ -1,4 +1,10 @@ #!/bin/sh export LD_PRELOAD="/usr/share/java/suwayomi-server/bin/catch_abort.so" -exec /usr/bin/java -jar /usr/share/java/suwayomi-server/bin/Suwayomi-Server.jar + +if [ -z "$DISPLAY" ] && command -v Xvfb >/dev/null; then + echo "-- START: Spawning X server using xvfb-run --" + exec xvfb-run /usr/bin/java "$@" -jar /usr/share/java/suwayomi-server/bin/Suwayomi-Server.jar +else + exec /usr/bin/java "$@" -jar /usr/share/java/suwayomi-server/bin/Suwayomi-Server.jar +fi diff --git a/scripts/resources/pkg/systemd/suwayomi-server.service b/scripts/resources/pkg/systemd/suwayomi-server.service index 1020800e..16852960 100644 --- a/scripts/resources/pkg/systemd/suwayomi-server.service +++ b/scripts/resources/pkg/systemd/suwayomi-server.service @@ -10,7 +10,7 @@ Group=suwayomi-server SyslogIdentifier=suwayomi-server EnvironmentFile=/etc/suwayomi/server.conf -ExecStart=/usr/bin/java $JAVA_ARGS -Dsuwayomi.tachidesk.config.server.rootDir="${TACHIDESK_ROOT_DIR}" -jar /usr/share/java/suwayomi-server/bin/Suwayomi-Server.jar +ExecStart=/usr/bin/suwayomi-server $JAVA_ARGS -Dsuwayomi.tachidesk.config.server.rootDir="${TACHIDESK_ROOT_DIR}" Restart=on-failure ProtectSystem=full