diff options
author | Mahor | 2022-06-07 09:28:05 +0430 |
---|---|---|
committer | Mahor | 2022-06-07 09:28:05 +0430 |
commit | 39b33177edc4651a3ebdebcb52ba82a49322c0c8 (patch) | |
tree | 3ae98873f48f6bda629a6531a8d29d2bf5c37351 | |
parent | b9c7e6347c5e45246d69cc20d164243c35c62e77 (diff) | |
download | aur-39b33177edc4651a3ebdebcb52ba82a49322c0c8.tar.gz |
add systemd service
-rw-r--r-- | PKGBUILD | 22 | ||||
-rw-r--r-- | tachidesk-server.conf | 5 | ||||
-rw-r--r-- | tachidesk-server.service | 31 | ||||
-rw-r--r-- | tachidesk-server.sysusers | 2 | ||||
-rw-r--r-- | tachidesk-server.tmpfiles | 2 |
5 files changed, 57 insertions, 5 deletions
@@ -3,7 +3,7 @@ pkgname=tachidesk pkgver=0.6.3_r1100 -pkgrel=1 +pkgrel=2 __pkgname=tachidesk-server __PkgName=Tachidesk-Server __pkgver="${pkgver%_*}" @@ -18,12 +18,20 @@ provides=("$pkgname" "$__pkgname") conflicts=("$pkgname-preview") __jar=$__PkgName-v$__pkgver-$__revnum.jar source=("$url/releases/download/v$__pkgver/$__jar" + "$__pkgname.service" + "$__pkgname.sysusers" + "$__pkgname.tmpfiles" + "$__pkgname.conf" "$__pkgname.desktop" "$__pkgname.png" "$__pkgname-browser-launcher.sh" "$__pkgname-debug-launcher.sh" "$__pkgname-electron-launcher.sh") sha256sums=('533afe39862d2af2826b9c8b5e31653b63ffd13c3fc20512e33814caa39eb5ca' + 'b8ae15e5dec2d20bedf4827b56a65d48b0155bd86a21147604fb714ee4208c59' + 'd968233df273640b51cd3daf61bab809df6fb844bee92f4f5887c09d95c482aa' + '715b5ad6ecdcab24f7a7663c3b606654a6c7bd6323540d29ad1440b0116e046d' + 'f0645eb6855fcb854dd42c000ad0ca1895b67017234d79a93cefb9b90e9b3ef6' '7ec4e0722d0312384672ccd01d939cce0fe356cf16d23f3473e7502cdddbccd3' '7528715b5b8d8360a9fd7dc096b51fd52bf3da671167e224b6cb637437fc4831' '1a075de252d4d1e4a025e26d379985995893e03d2ac9182ab8a48624b7076470' @@ -33,11 +41,15 @@ sha256sums=('533afe39862d2af2826b9c8b5e31653b63ffd13c3fc20512e33814caa39eb5ca' noextract=("$__jar") package() { - install -Dm644 "$srcdir/$__jar" "$pkgdir/usr/share/java/$__pkgname/$__pkgname.jar" - install -Dm644 "$srcdir/$__pkgname.desktop" "$pkgdir/usr/share/applications/$__pkgname.desktop" - install -Dm644 "$srcdir/$__pkgname.png" "$pkgdir/usr/share/pixmaps/$__pkgname.png" + install -Dm644 "$srcdir/$__jar" "$pkgdir/usr/share/java/$__pkgname/$__pkgname.jar" + install -Dm644 "$srcdir/$__pkgname.service" "$pkgdir/usr/lib/systemd/system/$__pkgname.service" + install -Dm644 "$srcdir/$__pkgname.conf" "$pkgdir/etc/$pkgname/server.conf" + install -Dm644 "$srcdir/$__pkgname.sysusers" "$pkgdir/usr/lib/sysusers.d/$__pkgname.conf" + install -Dm644 "$srcdir/$__pkgname.tmpfiles" "$pkgdir/usr/lib/tmpfiles.d/$__pkgname.conf" + install -Dm644 "$srcdir/$__pkgname.desktop" "$pkgdir/usr/share/applications/$__pkgname.desktop" + install -Dm644 "$srcdir/$__pkgname.png" "$pkgdir/usr/share/pixmaps/$__pkgname.png" install -Dm755 "$srcdir/$__pkgname-browser-launcher.sh" "$pkgdir/usr/bin/$__pkgname-browser" install -Dm755 "$srcdir/$__pkgname-debug-launcher.sh" "$pkgdir/usr/bin/$__pkgname-debug" install -Dm755 "$srcdir/$__pkgname-electron-launcher.sh" "$pkgdir/usr/bin/$__pkgname-electron" - ln -sr "$pkgdir/usr/bin/$__pkgname-browser" "$pkgdir/usr/bin/$pkgname" # keep backwards compatibility + ln -sr "$pkgdir/usr/bin/$__pkgname-browser" "$pkgdir/usr/bin/$pkgname" # keep backwards compatibility } diff --git a/tachidesk-server.conf b/tachidesk-server.conf new file mode 100644 index 000000000000..acc64b005b78 --- /dev/null +++ b/tachidesk-server.conf @@ -0,0 +1,5 @@ +TACHIDESK_ROOT_DIR="/var/lib/tachidesk" + +# Extra arguments passed to the java command +# The default value disables the system tray icon, and launching a browser on service start. +JAVA_ARGS=-Dsuwayomi.tachidesk.config.server.initialOpenInBrowserEnabled=false -Dsuwayomi.tachidesk.config.server.systemTrayEnabled=false diff --git a/tachidesk-server.service b/tachidesk-server.service new file mode 100644 index 000000000000..a72f4c497784 --- /dev/null +++ b/tachidesk-server.service @@ -0,0 +1,31 @@ +[Unit] +Description=A free and open source manga reader server that runs extensions built for Tachiyomi. +Wants=network-online.target +After=network-online.target + +[Service] +Type=simple +User=tachidesk +Group=tachidesk +SyslogIdentifier=tachidesk + +EnvironmentFile=/etc/tachidesk/server.conf +ExecStart=/usr/bin/java $JAVA_ARGS -Dsuwayomi.tachidesk.config.server.rootDir="${TACHIDESK_ROOT_DIR}" -jar /usr/share/java/tachidesk-server/tachidesk-server.jar +Restart=on-failure + +ProtectSystem=full +ProtectHome=true +PrivateTmp=yes +PrivateDevices=yes +ProtectClock=yes +ProtectKernelTunables=yes +ProtectKernelModules=yes +ProtectKernelLogs=yes +ProtectControlGroups=yes +RestrictSUIDSGID=yes +RestrictRealtime=yes +RestrictNamespaces=yes +NoNewPrivileges=yes + +[Install] +WantedBy=multi-user.target diff --git a/tachidesk-server.sysusers b/tachidesk-server.sysusers new file mode 100644 index 000000000000..8a666c246277 --- /dev/null +++ b/tachidesk-server.sysusers @@ -0,0 +1,2 @@ +#Type Name ID GECOS Home directory Shell +u tachidesk - "Tachidesk Manga Server" /var/lib/tachidesk diff --git a/tachidesk-server.tmpfiles b/tachidesk-server.tmpfiles new file mode 100644 index 000000000000..d967daa87b0b --- /dev/null +++ b/tachidesk-server.tmpfiles @@ -0,0 +1,2 @@ +#Type Path Mode User Group Age Argument +d /var/lib/tachidesk 0755 tachidesk tachidesk |