mirror of
https://github.com/Suwayomi/Suwayomi-Server.git
synced 2026-07-03 02:44:34 -05:00
Automated debian package building (#287)
* Automate debian package building Move wxs files to scripts/resources/msi/ Define icon's path inside script instead of hardcoding it in wxs * Revert back Windows script improvments * Remove copyright year. Use uppercase for first letter of foruzesh * Seperate deb from tar code with defining new debian-x64 arch * Add ./unix-bundler.sh debian-x64 * Fix mistake * Remove unneeded change of license
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
#/bin/bash
|
||||
#!/bin/bash
|
||||
|
||||
# Copyright (C) Contributors to the Suwayomi project
|
||||
#
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
electron_version="v14.0.0"
|
||||
|
||||
if [ $1 = "linux-x64" ]; then
|
||||
if [ $1 = "linux-x64" ] || [ $1 = "debian-x64" ]; then
|
||||
jre="OpenJDK8U-jre_x64_linux_hotspot_8u302b08.tar.gz"
|
||||
jre_release="jdk8u302-b08"
|
||||
jre_url="https://github.com/adoptium/temurin8-binaries/releases/download/$jre_release/$jre"
|
||||
@@ -40,11 +40,9 @@ jar=$(ls ../server/build/*.jar | tail -n1)
|
||||
jar_name=$(echo $jar | cut -d'/' -f4)
|
||||
release_name=$(echo $jar_name | sed 's/.jar//')-$arch
|
||||
|
||||
|
||||
# make release dir
|
||||
mkdir $release_name
|
||||
|
||||
|
||||
echo "Dealing with jre..."
|
||||
if [ ! -f $jre ]; then
|
||||
curl -L $jre_url -o $jre
|
||||
@@ -60,7 +58,7 @@ unzip $electron -d $release_name/electron
|
||||
|
||||
# copy artifacts
|
||||
cp $jar $release_name/Tachidesk.jar
|
||||
if [ $os = linux ]; then
|
||||
if [ $os = linux ] || [ $os = debian ]; 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
|
||||
@@ -77,6 +75,34 @@ if [ $os = linux ]; then
|
||||
elif [ $os = macOS ]; then
|
||||
archive_name=$release_name.zip
|
||||
zip -9 -r $archive_name $release_name
|
||||
elif [ $os = debian ]; then
|
||||
release_ver=$(tmp="${jar%-*}" && echo "${tmp##*-}" | tr -d v)
|
||||
archive_name="tachidesk_$release_ver-1_amd64.deb"
|
||||
orig_dir="tachidesk-$release_ver" # dir uses hyphen "-"
|
||||
orig_tar_gz="tachidesk_$release_ver.orig.tar.gz" # orig file uses underscore "_"
|
||||
icon="../server/src/main/resources/icon/faviconlogo.png"
|
||||
|
||||
# prepare required resources
|
||||
mv "$release_name" "$orig_dir"
|
||||
tar cvzf $orig_tar_gz $orig_dir
|
||||
|
||||
cp -r "resources/debian" "$orig_dir/"
|
||||
cp "resources/tachidesk.desktop" "$orig_dir/debian/tachidesk.desktop"
|
||||
cp "$icon" "$orig_dir/debian/tachidesk.png"
|
||||
sed -i "s/\${version}/$release_ver/" "$orig_dir/debian/changelog"
|
||||
|
||||
# build deb package
|
||||
mkdir -p "build"
|
||||
mv $orig_dir $orig_tar_gz "build/"
|
||||
cd "build/$orig_dir/debian"
|
||||
sudo apt install devscripts build-essential dh-exec
|
||||
debuild -uc -us
|
||||
cd -
|
||||
|
||||
# clean up debuild outouts
|
||||
mv "build/$archive_name" "./"
|
||||
mv "build/$orig_dir" $release_name
|
||||
rm -rf "build"
|
||||
fi
|
||||
|
||||
rm -rf $release_name
|
||||
|
||||
Reference in New Issue
Block a user