diff --git a/scripts/debian-packager.sh b/scripts/debian-packager.sh index 76541e9417..ca82de652f 100755 --- a/scripts/debian-packager.sh +++ b/scripts/debian-packager.sh @@ -6,43 +6,46 @@ # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at https://mozilla.org/MPL/2.0/. -echo "creating debian package" +echo "Creating DEB Package" +pkgname="tachidesk-server" +PkgName="Tachidesk-Server" jar=$(ls ../server/build/*.jar | tail -n1) -release_ver=$(tmp="${jar%-*}" && echo "${tmp##*-}" | tr -d v) -orig_dir="tachidesk-$release_ver" # dir uses hyphen "-" -orig_tar_gz="tachidesk_$release_ver.orig.tar.gz" # orig file uses underscore "_" -package_name="tachidesk_$release_ver-1_all.deb" - -# copy artifacts -mkdir "$orig_dir" -cp "$jar" "$orig_dir/Tachidesk.jar" -cp -r "resources/debian" "$orig_dir" -cp "resources/tachidesk-browser-launcher-standalone.sh" "$orig_dir/debian" -cp "resources/tachidesk-debug-launcher-standalone.sh" "$orig_dir/debian" -cp "resources/tachidesk-electron-launcher-standalone.sh" "$orig_dir/debian" -cp "resources/tachidesk.desktop" "$orig_dir/debian" -cp "../server/src/main/resources/icon/faviconlogo.png" "$orig_dir/debian/tachidesk.png" - -# prepare -tar cvzf "$orig_tar_gz" "$orig_dir/Tachidesk.jar" -sed -i "s/\${version}/$release_ver/" "$orig_dir/debian/changelog" - -# build -mkdir "build" -mv $orig_dir $orig_tar_gz "build/" -cd "build/$orig_dir/debian" +pkgver="$(tmp="${jar%-*}" && echo "${tmp##*-}" | tr -d v)" +pkgrel=1 + +srcdir="$pkgname-$pkgver" # uses hyphen "-" +srctgz="${pkgname}_$pkgver.orig.tar.gz" # uses underscore "_" +deb="${pkgname}_$pkgver-${pkgrel}_all.deb" +Deb="${PkgName}_$pkgver-${pkgrel}_all.deb" + +# Prepare +mkdir "$srcdir/" +cp "$jar" "$srcdir/$pkgname.jar" +cp "resources/$pkgname-browser-launcher.sh" "$srcdir/" +cp "resources/$pkgname-debug-launcher.sh" "$srcdir/" +cp "resources/$pkgname-electron-launcher-debian.sh" "$srcdir/$pkgname-electron-launcher.sh" +cp "resources/$pkgname.desktop" "$srcdir/" +cp "../server/src/main/resources/icon/faviconlogo.png" "$srcdir/$pkgname.png" + +GZIP=-9 tar -cvzf "$srctgz" "$srcdir/" + +cp -r "resources/debian" "$srcdir/" +sed -i "s/\${pkgver}/$pkgver/" "$srcdir/debian/changelog" +sed -i "s/\${pkgrel}/$pkgrel/" "$srcdir/debian/changelog" + +# Build +mkdir "debuild/" +mv "$srctgz" "$srcdir/" "debuild/" sudo apt install devscripts build-essential dh-exec -# --lintian-opts --profile debian: build Debian packages on Ubuntu +# --lintian-opts --profile are for building Debian packages on Ubuntu +cd "debuild/$srcdir/debian" debuild -uc -us --lintian-opts --profile debian cd - -# clean build directory -mv "build/$package_name" "./" -rm -rf "build" - # clean up from possible previous runs -if [ -f "../server/build/$package_name" ]; then - rm "../server/build/$package_name" +if [ -f "../server/build/$Deb" ]; then + rm "../server/build/$Deb" fi -mv "$package_name" "../server/build/" +mv "debuild/$deb" "../server/build/$Deb" +rm -rf "debuild/" diff --git a/scripts/resources/debian/changelog b/scripts/resources/debian/changelog index 5cb4771d2a..49cc4983c6 100644 --- a/scripts/resources/debian/changelog +++ b/scripts/resources/debian/changelog @@ -1,4 +1,4 @@ -tachidesk (${version}-1) unstable; urgency=medium +tachidesk-server (${pkgver}-${pkgrel}) unstable; urgency=medium * See CHANGELOG.md on https://github.com/Suwayomi/Tachidesk-Server diff --git a/scripts/resources/debian/control b/scripts/resources/debian/control index b58b4a8755..6aba0c91ec 100755 --- a/scripts/resources/debian/control +++ b/scripts/resources/debian/control @@ -1,4 +1,4 @@ -Source: tachidesk +Source: tachidesk-server Section: web Priority: optional Maintainer: Mahor Foruzesh @@ -6,7 +6,7 @@ Build-Depends: debhelper-compat (= 12), dh-exec Standards-Version: 4.5.1 Homepage: https://github.com/Suwayomi/Tachidesk-Server -Package: tachidesk +Package: tachidesk-server Architecture: all Depends: ${misc:Depends}, default-jre-headless (>= 8) Description: Manga Reader diff --git a/scripts/resources/debian/copyright b/scripts/resources/debian/copyright index 47ca60c7f9..a815a45081 100755 --- a/scripts/resources/debian/copyright +++ b/scripts/resources/debian/copyright @@ -1,5 +1,5 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: tachidesk +Upstream-Name: tachidesk-server Upstream-Contact: https://discord.gg/DDZdqZWaHA Source: https://github.com/Suwayomi/Tachidesk-Server diff --git a/scripts/resources/debian/install b/scripts/resources/debian/install index df98c813a0..bf3c892126 100755 --- a/scripts/resources/debian/install +++ b/scripts/resources/debian/install @@ -1,9 +1,8 @@ #!/usr/bin/dh-exec -debian/tachidesk-browser-launcher-standalone.sh => usr/bin/tachidesk -debian/tachidesk-browser-launcher-standalone.sh => usr/bin/tachidesk-browser -debian/tachidesk-debug-launcher-standalone.sh => usr/bin/tachidesk-debug -debian/tachidesk-electron-launcher-standalone.sh => usr/bin/tachidesk-electron -Tachidesk.jar => usr/share/java/tachidesk/tachidesk.jar -debian/tachidesk.png usr/share/pixmaps/ -debian/tachidesk.desktop usr/share/applications/ +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-server.jar usr/share/java/tachidesk-server/ +tachidesk-server.png usr/share/pixmaps/ +tachidesk-server.desktop usr/share/applications/ diff --git a/scripts/resources/debian/source/include-binaries b/scripts/resources/debian/source/include-binaries index aad01de498..405559a768 100755 --- a/scripts/resources/debian/source/include-binaries +++ b/scripts/resources/debian/source/include-binaries @@ -1 +1 @@ -debian/tachidesk.png +tachidesk-server.png diff --git a/scripts/resources/tachidesk-browser-launcher-standalone.sh b/scripts/resources/tachidesk-browser-launcher-standalone.sh deleted file mode 100755 index aa0b845943..0000000000 --- a/scripts/resources/tachidesk-browser-launcher-standalone.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -exec /usr/bin/java -jar /usr/share/java/tachidesk/tachidesk.jar diff --git a/scripts/resources/tachidesk-browser-launcher.sh b/scripts/resources/tachidesk-browser-launcher.sh deleted file mode 100755 index dd6bf7a7c7..0000000000 --- a/scripts/resources/tachidesk-browser-launcher.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -./jre/bin/java -jar Tachidesk.jar \ No newline at end of file diff --git a/scripts/resources/tachidesk-debug-launcher.sh b/scripts/resources/tachidesk-debug-launcher.sh deleted file mode 100755 index 9d16982f09..0000000000 --- a/scripts/resources/tachidesk-debug-launcher.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -./jre/bin/java -Dsuwayomi.tachidesk.config.server.debugLogsEnabled=true -jar Tachidesk.jar diff --git a/scripts/resources/tachidesk-electron-launcher.sh b/scripts/resources/tachidesk-electron-launcher.sh deleted file mode 100755 index d1eaabc17b..0000000000 --- a/scripts/resources/tachidesk-electron-launcher.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -./jre/bin/java "-Dsuwayomi.tachidesk.config.server.webUIInterface=electron" "-Dsuwayomi.tachidesk.config.server.electronPath=electron/electron" -jar Tachidesk.jar \ No newline at end of file diff --git a/scripts/resources/tachidesk-server-browser-launcher.sh b/scripts/resources/tachidesk-server-browser-launcher.sh new file mode 100644 index 0000000000..16d63960ff --- /dev/null +++ b/scripts/resources/tachidesk-server-browser-launcher.sh @@ -0,0 +1,2 @@ +#!/bin/sh +exec /usr/bin/java -jar /usr/share/java/tachidesk-server/tachidesk-server.jar diff --git a/scripts/resources/tachidesk-debug-launcher-standalone.sh b/scripts/resources/tachidesk-server-debug-launcher.sh old mode 100755 new mode 100644 similarity index 51% rename from scripts/resources/tachidesk-debug-launcher-standalone.sh rename to scripts/resources/tachidesk-server-debug-launcher.sh index 46f67ab628..dabd62a0ca --- a/scripts/resources/tachidesk-debug-launcher-standalone.sh +++ b/scripts/resources/tachidesk-server-debug-launcher.sh @@ -1,2 +1,2 @@ #!/bin/sh -exec /usr/bin/java -Dsuwayomi.tachidesk.config.server.debugLogsEnabled=true -jar /usr/share/java/tachidesk/tachidesk.jar +exec /usr/bin/java -Dsuwayomi.tachidesk.config.server.debugLogsEnabled=true -jar /usr/share/java/tachidesk-server/tachidesk-server.jar diff --git a/scripts/resources/tachidesk-electron-launcher-standalone.sh b/scripts/resources/tachidesk-server-electron-launcher-debian.sh old mode 100755 new mode 100644 similarity index 65% rename from scripts/resources/tachidesk-electron-launcher-standalone.sh rename to scripts/resources/tachidesk-server-electron-launcher-debian.sh index 3d46615fe9..c221da9c85 --- a/scripts/resources/tachidesk-electron-launcher-standalone.sh +++ b/scripts/resources/tachidesk-server-electron-launcher-debian.sh @@ -1,14 +1,12 @@ #!/bin/sh - if [ ! -f /usr/bin/electron ]; then - echo "Electron executable was not found! + echo "Electron executable was not found In order to run this launcher, you need Electron installed. You can install it with these commands: sudo apt install npm -sudo npm install electron -g -" - exit 1 +sudo npm install electron -g" + 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/tachidesk.jar +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-server-electron-launcher.sh b/scripts/resources/tachidesk-server-electron-launcher.sh new file mode 100644 index 0000000000..8812f5c75e --- /dev/null +++ b/scripts/resources/tachidesk-server-electron-launcher.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +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-server.desktop b/scripts/resources/tachidesk-server.desktop new file mode 100644 index 0000000000..deb7e66e68 --- /dev/null +++ b/scripts/resources/tachidesk-server.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Type=Application +Name=Tachidesk-Server +Comment=Manga Reader +Exec=/usr/bin/java -jar /usr/share/java/tachidesk-server/tachidesk-server.jar "\\$@" +Icon=tachidesk-server +Terminal=false +Categories=Network; diff --git a/scripts/resources/tachidesk.desktop b/scripts/resources/tachidesk.desktop deleted file mode 100755 index 3e16a4a6e7..0000000000 --- a/scripts/resources/tachidesk.desktop +++ /dev/null @@ -1,8 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Tachidesk -Comment=Manga Reader -Exec=/usr/bin/java -jar /usr/share/java/tachidesk/tachidesk.jar "\\$@" -Icon=tachidesk -Terminal=false -Categories=Network; \ No newline at end of file diff --git a/scripts/unix-bundler.sh b/scripts/unix-bundler.sh index 1d6a800884..d92217c69a 100755 --- a/scripts/unix-bundler.sh +++ b/scripts/unix-bundler.sh @@ -57,11 +57,11 @@ fi unzip $electron -d $release_name/electron # copy artifacts -cp $jar $release_name/Tachidesk.jar +cp $jar $release_name/Tachidesk-Server.jar if [ $os = linux ]; then - cp "resources/tachidesk-browser-launcher.sh" $release_name - cp "resources/tachidesk-debug-launcher.sh" $release_name - cp "resources/tachidesk-electron-launcher.sh" $release_name + cp "resources/tachidesk-server-browser-launcher.sh" $release_name + cp "resources/tachidesk-server-debug-launcher.sh" $release_name + cp "resources/tachidesk-server-electron-launcher.sh" $release_name elif [ $os = macOS ]; then cp "resources/Tachidesk Browser Launcher.command" $release_name cp "resources/Tachidesk Debug Launcher.command" $release_name