diff --git a/scripts/bundler.sh b/scripts/bundler.sh index 952f65c68..6ca428936 100755 --- a/scripts/bundler.sh +++ b/scripts/bundler.sh @@ -38,6 +38,8 @@ main() { trap "rm -rf $RELEASE_NAME/" RETURN mkdir "$RELEASE_NAME/" + download_launcher + case "$OS" in debian-all) RELEASE="$RELEASE_NAME.deb" @@ -152,6 +154,12 @@ move_release_to_output_dir() { mv "$RELEASE" "$OUTPUT_DIR/" } +download_launcher() { + LAUNCHER_URL=$(curl -s "https://api.github.com/repos/Suwayomi/Tachidesk-Launcher/releases/latest" | grep "browser_download_url" | grep ".jar" | head -n 1 | cut -d '"' -f 4) + curl -L "$LAUNCHER_URL" -o "Tachidesk-Launcher.jar" + mv "Tachidesk-Launcher.jar" "$RELEASE_NAME/Tachidesk-Launcher.jar" +} + download_jre_and_electron() { if [ ! -f "$JRE" ]; then curl -L "$JRE_URL" -o "$JRE" @@ -175,29 +183,23 @@ copy_linux_package_assets_to() { local output_dir output_dir="$(readlink -e "$1" || exit 1)" - cp "scripts/resources/pkg/tachidesk-server-browser-launcher.sh" "$output_dir/" - cp "scripts/resources/pkg/tachidesk-server-debug-launcher.sh" "$output_dir/" - cp "scripts/resources/pkg/tachidesk-server-electron-launcher.sh" "$output_dir/" - cp "scripts/resources/pkg/tachidesk-server.desktop" "$output_dir/" + cp "scripts/resources/pkg/tachidesk-launcher.sh" "$output_dir/" + cp "scripts/resources/pkg/tachidesk-launcher.desktop" "$output_dir/" cp "scripts/resources/pkg/systemd"/* "$output_dir/" cp "server/src/main/resources/icon/faviconlogo.png" \ "$output_dir/tachidesk-server.png" } make_linux_bundle() { - cp "$JAR" "$RELEASE_NAME/Tachidesk-Server.jar" - cp "scripts/resources/tachidesk-server-browser-launcher.sh" "$RELEASE_NAME/" - cp "scripts/resources/tachidesk-server-debug-launcher.sh" "$RELEASE_NAME/" - cp "scripts/resources/tachidesk-server-electron-launcher.sh" "$RELEASE_NAME/" + cp "$JAR" "$RELEASE_NAME/bin/Tachidesk-Server.jar" + cp "scripts/resources/tachidesk-launcher.sh" "$RELEASE_NAME/" tar -I "gzip -9" -cvf "$RELEASE" "$RELEASE_NAME/" } make_macos_bundle() { - cp "$JAR" "$RELEASE_NAME/Tachidesk-Server.jar" - cp "scripts/resources/Tachidesk Browser Launcher.command" "$RELEASE_NAME/" - cp "scripts/resources/Tachidesk Debug Launcher.command" "$RELEASE_NAME/" - cp "scripts/resources/Tachidesk Electron Launcher.command" "$RELEASE_NAME/" + cp "$JAR" "$RELEASE_NAME/bin/Tachidesk-Server.jar" + cp "scripts/resources/Tachidesk Launcher.command" "$RELEASE_NAME/" zip -9 -r "$RELEASE" "$RELEASE_NAME/" } @@ -257,10 +259,8 @@ make_windows_bundle() { #WINEARCH=win32 wine "$rcedit" "$RELEASE_NAME/electron/electron.exe" \ # --set-icon "$icon" - cp "$JAR" "$RELEASE_NAME/Tachidesk-Server.jar" - cp "scripts/resources/Tachidesk Browser Launcher.bat" "$RELEASE_NAME" - cp "scripts/resources/Tachidesk Debug Launcher.bat" "$RELEASE_NAME" - cp "scripts/resources/Tachidesk Electron Launcher.bat" "$RELEASE_NAME" + cp "$JAR" "$RELEASE_NAME/bin/Tachidesk-Server.jar" + cp "scripts/resources/Tachidesk Launcher.bat" "$RELEASE_NAME" zip -9 -r "$RELEASE" "$RELEASE_NAME" } diff --git a/scripts/resources/Tachidesk Browser Launcher.bat b/scripts/resources/Tachidesk Browser Launcher.bat deleted file mode 100644 index cf1d75edd..000000000 --- a/scripts/resources/Tachidesk Browser Launcher.bat +++ /dev/null @@ -1 +0,0 @@ -start "" jre/bin/javaw -jar Tachidesk-Server.jar \ No newline at end of file diff --git a/scripts/resources/Tachidesk Browser Launcher.command b/scripts/resources/Tachidesk Browser Launcher.command deleted file mode 100755 index 2b7311fe0..000000000 --- a/scripts/resources/Tachidesk Browser Launcher.command +++ /dev/null @@ -1,3 +0,0 @@ -cd "`dirname "$0"`" - -./jre/Contents/Home/bin/java -jar Tachidesk-Server.jar \ No newline at end of file diff --git a/scripts/resources/Tachidesk Debug Launcher.bat b/scripts/resources/Tachidesk Debug Launcher.bat deleted file mode 100644 index 4e14e1dd2..000000000 --- a/scripts/resources/Tachidesk Debug Launcher.bat +++ /dev/null @@ -1,7 +0,0 @@ -:: cleaner output -@echo off - -jre\bin\java -Dsuwayomi.tachidesk.config.server.debugLogsEnabled=true -jar Tachidesk-Server.jar - -:: Prevent cmd from closing when Tachidesk crashes -pause \ No newline at end of file diff --git a/scripts/resources/Tachidesk Debug Launcher.command b/scripts/resources/Tachidesk Debug Launcher.command deleted file mode 100755 index f46456a37..000000000 --- a/scripts/resources/Tachidesk Debug Launcher.command +++ /dev/null @@ -1,3 +0,0 @@ -cd "`dirname "$0"`" - -./jre/Contents/Home/bin/java -Dsuwayomi.tachidesk.config.server.debugLogsEnabled=true -jar Tachidesk-Server.jar diff --git a/scripts/resources/Tachidesk Electron Launcher.bat b/scripts/resources/Tachidesk Electron Launcher.bat deleted file mode 100644 index 59e990414..000000000 --- a/scripts/resources/Tachidesk Electron Launcher.bat +++ /dev/null @@ -1 +0,0 @@ -jre\bin\javaw "-Dsuwayomi.tachidesk.config.server.webUIInterface=electron" "-Dsuwayomi.tachidesk.config.server.electronPath=electron/electron.exe" -jar Tachidesk-Server.jar \ No newline at end of file diff --git a/scripts/resources/Tachidesk Electron Launcher.command b/scripts/resources/Tachidesk Electron Launcher.command deleted file mode 100755 index 98231819b..000000000 --- a/scripts/resources/Tachidesk Electron Launcher.command +++ /dev/null @@ -1,3 +0,0 @@ -cd "`dirname "$0"`" - -./jre/Contents/Home/bin/java "-Dsuwayomi.tachidesk.config.server.webUIInterface=electron" "-Dsuwayomi.tachidesk.config.server.electronPath=electron/Electron.app/Contents/MacOS/Electron" -jar Tachidesk-Server.jar \ No newline at end of file diff --git a/scripts/resources/Tachidesk Launcher.bat b/scripts/resources/Tachidesk Launcher.bat new file mode 100644 index 000000000..05e52cfb2 --- /dev/null +++ b/scripts/resources/Tachidesk Launcher.bat @@ -0,0 +1 @@ +start "" jre/bin/javaw -jar Tachidesk-Launcher.jar \ No newline at end of file diff --git a/scripts/resources/Tachidesk Launcher.command b/scripts/resources/Tachidesk Launcher.command new file mode 100644 index 000000000..dcd19680a --- /dev/null +++ b/scripts/resources/Tachidesk Launcher.command @@ -0,0 +1,3 @@ +cd "`dirname "$0"`" + +./jre/Contents/Home/bin/java -jar Tachidesk-Launcher.jar \ No newline at end of file diff --git a/scripts/resources/deb/install b/scripts/resources/deb/install index b727cfff3..b84fb813c 100755 --- a/scripts/resources/deb/install +++ b/scripts/resources/deb/install @@ -1,12 +1,11 @@ #!/usr/bin/dh-exec -Tachidesk-Server.jar usr/share/java/tachidesk-server/ +Tachidesk-Server.jar usr/share/java/tachidesk-server/bin/ +Tachidesk-Launcher.jar usr/share/java/tachidesk-server/ tachidesk-server.png usr/share/pixmaps/ tachidesk-server.desktop usr/share/applications/ tachidesk-server.service usr/lib/systemd/system/ tachidesk-server.sysusers => usr/lib/sysusers.d/tachidesk-server.conf tachidesk-server.tmpfiles => usr/lib/tmpfiles.d/tachidesk-server.conf tachidesk-server.conf => etc/tachidesk/server.conf -tachidesk-server-browser-launcher.sh => usr/bin/tachidesk-server-browser -tachidesk-server-debug-launcher.sh => usr/bin/tachidesk-server-debug -tachidesk-server-electron-launcher.sh => usr/bin/tachidesk-server-electron +tachidesk-launcher.sh => usr/bin/tachidesk-launcher diff --git a/scripts/resources/msi/tachidesk-server-x64.wxs b/scripts/resources/msi/tachidesk-server-x64.wxs index 509469253..3acad6843 100755 --- a/scripts/resources/msi/tachidesk-server-x64.wxs +++ b/scripts/resources/msi/tachidesk-server-x64.wxs @@ -15,6 +15,7 @@ + @@ -31,53 +32,30 @@ - + - - - + + - - - - - - - - - - - - - - - - - + - - + - diff --git a/scripts/resources/msi/tachidesk-server-x86.wxs b/scripts/resources/msi/tachidesk-server-x86.wxs index d0493053c..e4c734752 100755 --- a/scripts/resources/msi/tachidesk-server-x86.wxs +++ b/scripts/resources/msi/tachidesk-server-x86.wxs @@ -11,6 +11,7 @@ + @@ -27,53 +28,30 @@ - + - - - + + - - - - - - - - - - - - - - - - - + - - + - diff --git a/scripts/resources/pkg/systemd/tachidesk-server.service b/scripts/resources/pkg/systemd/tachidesk-server.service index ffacabd23..9a6d410f8 100644 --- a/scripts/resources/pkg/systemd/tachidesk-server.service +++ b/scripts/resources/pkg/systemd/tachidesk-server.service @@ -10,7 +10,7 @@ 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 +ExecStart=/usr/bin/java $JAVA_ARGS -Dsuwayomi.tachidesk.config.server.rootDir="${TACHIDESK_ROOT_DIR}" -jar /usr/share/java/tachidesk-server/bin/Tachidesk-Server.jar Restart=on-failure ProtectSystem=full diff --git a/scripts/resources/pkg/tachidesk-server.desktop b/scripts/resources/pkg/tachidesk-launcher.desktop similarity index 89% rename from scripts/resources/pkg/tachidesk-server.desktop rename to scripts/resources/pkg/tachidesk-launcher.desktop index 312b5da17..b640f794f 100644 --- a/scripts/resources/pkg/tachidesk-server.desktop +++ b/scripts/resources/pkg/tachidesk-launcher.desktop @@ -2,7 +2,7 @@ Type=Application Name=Tachidesk-Server Comment=Manga Reader -Exec=/usr/bin/java -jar /usr/share/java/tachidesk-server/Tachidesk-Server.jar "\\$@" +Exec=/usr/bin/java -jar /usr/share/java/tachidesk-server/Tachidesk-Launcher.jar "\\$@" Icon=tachidesk-server Terminal=false Categories=Network; diff --git a/scripts/resources/pkg/tachidesk-server-browser-launcher.sh b/scripts/resources/pkg/tachidesk-launcher.sh similarity index 82% rename from scripts/resources/pkg/tachidesk-server-browser-launcher.sh rename to scripts/resources/pkg/tachidesk-launcher.sh index 6dac7fe45..a6bf45a1f 100644 --- a/scripts/resources/pkg/tachidesk-server-browser-launcher.sh +++ b/scripts/resources/pkg/tachidesk-launcher.sh @@ -1,3 +1,3 @@ #!/bin/sh -exec /usr/bin/java -jar /usr/share/java/tachidesk-server/Tachidesk-Server.jar +exec /usr/bin/java -jar /usr/share/java/tachidesk-server/Tachidesk-Launcher.jar diff --git a/scripts/resources/pkg/tachidesk-server-debug-launcher.sh b/scripts/resources/pkg/tachidesk-server-debug-launcher.sh deleted file mode 100644 index bb90590e3..000000000 --- a/scripts/resources/pkg/tachidesk-server-debug-launcher.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -exec /usr/bin/java \ - -Dsuwayomi.tachidesk.config.server.debugLogsEnabled=true \ - -jar /usr/share/java/tachidesk-server/Tachidesk-Server.jar diff --git a/scripts/resources/pkg/tachidesk-server-electron-launcher.sh b/scripts/resources/pkg/tachidesk-server-electron-launcher.sh deleted file mode 100644 index 14bcf9320..000000000 --- a/scripts/resources/pkg/tachidesk-server-electron-launcher.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/sh - -if [ ! -f /usr/bin/electron ]; then - echo "Electron executable was not found! -In order to run this launcher, you need Electron installed." - exit 1 -fi - -exec /usr/bin/java \ - -Dsuwayomi.tachidesk.config.server.webUIInterface=electron \ - -Dsuwayomi.tachidesk.config.server.electronPath=/usr/bin/electron \ - -jar /usr/share/java/tachidesk-server/Tachidesk-Server.jar diff --git a/scripts/resources/tachidesk-launcher.sh b/scripts/resources/tachidesk-launcher.sh new file mode 100644 index 000000000..0e66d00df --- /dev/null +++ b/scripts/resources/tachidesk-launcher.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +exec ./jre/bin/java -jar ./Tachidesk-Launcher.jar diff --git a/scripts/resources/tachidesk-server-browser-launcher.sh b/scripts/resources/tachidesk-server-browser-launcher.sh deleted file mode 100644 index 0e3d5067f..000000000 --- a/scripts/resources/tachidesk-server-browser-launcher.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -exec ./jre/bin/java -jar ./Tachidesk-Server.jar diff --git a/scripts/resources/tachidesk-server-debug-launcher.sh b/scripts/resources/tachidesk-server-debug-launcher.sh deleted file mode 100644 index 86ffc3109..000000000 --- a/scripts/resources/tachidesk-server-debug-launcher.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -exec ./jre/bin/java \ - -Dsuwayomi.tachidesk.config.server.debugLogsEnabled=true \ - -jar ./Tachidesk-Server.jar diff --git a/scripts/resources/tachidesk-server-electron-launcher.sh b/scripts/resources/tachidesk-server-electron-launcher.sh deleted file mode 100644 index e95c6460c..000000000 --- a/scripts/resources/tachidesk-server-electron-launcher.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh - -exec ./jre/bin/java \ - -Dsuwayomi.tachidesk.config.server.webUIInterface=electron \ - -Dsuwayomi.tachidesk.config.server.electronPath=./electron/electron \ - -jar ./Tachidesk-Server.jar