prepare for electron
This commit is contained in:
@@ -72,8 +72,8 @@ jobs:
|
|||||||
- name: make windows packages
|
- name: make windows packages
|
||||||
run: |
|
run: |
|
||||||
cd master/scripts
|
cd master/scripts
|
||||||
./windows32-bundler.sh
|
./windows-bundler.sh win32
|
||||||
./windows64-bundler.sh
|
./windows-bundler.sh win64
|
||||||
|
|
||||||
- name: Checkout preview branch
|
- name: Checkout preview branch
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
|
|||||||
@@ -71,8 +71,8 @@ jobs:
|
|||||||
- name: make windows packages
|
- name: make windows packages
|
||||||
run: |
|
run: |
|
||||||
cd master/scripts
|
cd master/scripts
|
||||||
./windows32-bundler.sh
|
./windows-bundler.sh win32
|
||||||
./windows64-bundler.sh
|
./windows-bundler.sh win64
|
||||||
|
|
||||||
- name: Upload Release
|
- name: Upload Release
|
||||||
uses: xresloader/upload-to-github-release@master
|
uses: xresloader/upload-to-github-release@master
|
||||||
|
|||||||
@@ -6,30 +6,38 @@
|
|||||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
# 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/.
|
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
||||||
|
|
||||||
echo "Downloading jre..."
|
if [ $1 = "win32" ]; then
|
||||||
|
jre="OpenJDK8U-jre_x86-32_windows_hotspot_8u292b10.zip"
|
||||||
jre="OpenJDK8U-jre_x86-32_windows_hotspot_8u292b10.zip"
|
arch="win32"
|
||||||
if [ ! -f $jre ]; then
|
else
|
||||||
curl -L "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u292-b10/OpenJDK8U-jre_x86-32_windows_hotspot_8u292b10.zip" -o $jre
|
jre="OpenJDK8U-jre_x64_windows_hotspot_8u292b10.zip"
|
||||||
|
arch="win64"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
jre_dir="jdk8u292-b10-jre"
|
||||||
|
|
||||||
echo "creating windows bundle"
|
echo "creating windows bundle"
|
||||||
|
|
||||||
jar=$(ls ../server/build/Tachidesk-*.jar)
|
jar=$(ls ../server/build/Tachidesk-*.jar)
|
||||||
jar_name=$(echo $jar | cut -d'/' -f4)
|
jar_name=$(echo $jar | cut -d'/' -f4)
|
||||||
release_name=$(echo $jar_name | cut -d'.' -f4 --complement)-win32
|
release_name=$(echo $jar_name | cut -d'.' -f4 --complement)-$arch
|
||||||
|
|
||||||
|
|
||||||
# make release dir
|
# make release dir
|
||||||
mkdir $release_name
|
mkdir $release_name
|
||||||
|
|
||||||
|
echo "Dealing with jre..."
|
||||||
|
|
||||||
|
if [ ! -f $jre ]; then
|
||||||
|
curl -L "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u292-b10/$jre" -o $jre
|
||||||
|
fi
|
||||||
unzip $jre
|
unzip $jre
|
||||||
|
mv $jre_dir $release_name/jre
|
||||||
|
|
||||||
# move jre
|
# copy artifacts
|
||||||
mv jdk8u292-b10-jre $release_name/jre
|
|
||||||
|
|
||||||
cp $jar $release_name/Tachidesk.jar
|
cp $jar $release_name/Tachidesk.jar
|
||||||
|
|
||||||
cp "resources/Tachidesk Launcher-win32.exe" "$release_name/Tachidesk Launcher.exe"
|
cp "resources/Tachidesk Launcher-$arch.exe" "$release_name/Tachidesk Launcher.exe"
|
||||||
cp "resources/Tachidesk Launcher.bat" $release_name
|
cp "resources/Tachidesk Launcher.bat" $release_name
|
||||||
cp "resources/Tachidesk Debug Launcher.bat" $release_name
|
cp "resources/Tachidesk Debug Launcher.bat" $release_name
|
||||||
cp "resources/Tachidesk Webview Launcher.bat" $release_name
|
cp "resources/Tachidesk Webview Launcher.bat" $release_name
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
# Copyright (C) Contributors to the Suwayomi project
|
|
||||||
#
|
|
||||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
||||||
# 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/.
|
|
||||||
|
|
||||||
Write-Output "Downloading jre..."
|
|
||||||
|
|
||||||
$jre="OpenJDK8U-jre_x86-32_windows_hotspot_8u292b10.zip"
|
|
||||||
if (!(Test-Path $jre)) {
|
|
||||||
Invoke-WebRequest -Uri "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u292-b10/OpenJDK8U-jre_x86-32_windows_hotspot_8u292b10.zip" -OutFile $jre -UseBasicParsing
|
|
||||||
}
|
|
||||||
|
|
||||||
Write-Output "creating windows bundle"
|
|
||||||
|
|
||||||
$jar=$(Get-ChildItem ../server/build/Tachidesk-*.jar)
|
|
||||||
$release_name=$jar.BaseName + "-win32"
|
|
||||||
|
|
||||||
# make release dir
|
|
||||||
New-Item -ItemType Directory $release_name
|
|
||||||
|
|
||||||
Expand-Archive $jre -DestinationPath "./" -ErrorAction SilentlyContinue
|
|
||||||
|
|
||||||
# move jre
|
|
||||||
Move-Item "jdk8u292-b10-jre" "$release_name/jre"
|
|
||||||
|
|
||||||
Copy-Item $jar.FullName "$release_name/Tachidesk.jar"
|
|
||||||
|
|
||||||
Copy-Item "resources/Tachidesk Launcher-win32.exe" $release_name
|
|
||||||
Copy-Item "resources/Tachidesk Launcher.bat" $release_name
|
|
||||||
Copy-Item "resources/Tachidesk Debug Launcher.bat" $release_name
|
|
||||||
Copy-Item "resources/Tachidesk Webview Launcher.bat" $release_name
|
|
||||||
|
|
||||||
$zip_name="$release_name.zip"
|
|
||||||
Compress-Archive -CompressionLevel Optimal -DestinationPath $zip_name -Path $release_name -Force -ErrorAction SilentlyContinue
|
|
||||||
|
|
||||||
Remove-Item -Force -Recurse $release_name
|
|
||||||
|
|
||||||
Move-Item $zip_name "../server/build/" -ErrorAction SilentlyContinue
|
|
||||||
@@ -1,39 +0,0 @@
|
|||||||
# Copyright (C) Contributors to the Suwayomi project
|
|
||||||
#
|
|
||||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
||||||
# 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/.
|
|
||||||
|
|
||||||
Write-Output "Downloading jre..."
|
|
||||||
|
|
||||||
$jre="OpenJDK8U-jre_x64_windows_hotspot_8u292b10.zip"
|
|
||||||
if (!(Test-Path $jre)) {
|
|
||||||
Invoke-WebRequest -Uri "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u292-b10/OpenJDK8U-jre_x64_windows_hotspot_8u292b10.zip" -OutFile $jre -UseBasicParsing
|
|
||||||
}
|
|
||||||
|
|
||||||
Write-Output "creating windows bundle"
|
|
||||||
|
|
||||||
$jar=$(Get-ChildItem ../server/build/Tachidesk-*.jar)
|
|
||||||
$release_name=$jar.BaseName + "-win64"
|
|
||||||
|
|
||||||
# make release dir
|
|
||||||
New-Item -ItemType Directory $release_name
|
|
||||||
|
|
||||||
Expand-Archive $jre -DestinationPath "./" -ErrorAction SilentlyContinue
|
|
||||||
|
|
||||||
# move jre
|
|
||||||
Move-Item "jdk8u292-b10-jre" "$release_name/jre"
|
|
||||||
|
|
||||||
Copy-Item $jar.FullName "$release_name/Tachidesk.jar"
|
|
||||||
|
|
||||||
Copy-Item "resources/Tachidesk Launcher-win64.exe" $release_name
|
|
||||||
Copy-Item "resources/Tachidesk Launcher.bat" $release_name
|
|
||||||
Copy-Item "resources/Tachidesk Debug Launcher.bat" $release_name
|
|
||||||
Copy-Item "resources/Tachidesk Webview Launcher.bat" $release_name
|
|
||||||
|
|
||||||
$zip_name="$release_name.zip"
|
|
||||||
Compress-Archive -CompressionLevel Optimal -DestinationPath $zip_name -Path $release_name -Force -ErrorAction SilentlyContinue
|
|
||||||
|
|
||||||
Remove-Item -Force -Recurse $release_name
|
|
||||||
|
|
||||||
Move-Item $zip_name "../server/build/" -ErrorAction SilentlyContinue
|
|
||||||
@@ -1,42 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Copyright (C) Contributors to the Suwayomi project
|
|
||||||
#
|
|
||||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
||||||
# 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 "Downloading jre..."
|
|
||||||
|
|
||||||
jre="OpenJDK8U-jre_x64_windows_hotspot_8u292b10.zip"
|
|
||||||
if [ ! -f $jre ]; then
|
|
||||||
curl -L "https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u292-b10/OpenJDK8U-jre_x64_windows_hotspot_8u292b10.zip" -o $jre
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "creating windows bundle"
|
|
||||||
|
|
||||||
jar=$(ls ../server/build/Tachidesk-*.jar)
|
|
||||||
jar_name=$(echo $jar | cut -d'/' -f4)
|
|
||||||
release_name=$(echo $jar_name | cut -d'.' -f4 --complement)-win64
|
|
||||||
|
|
||||||
# make release dir
|
|
||||||
mkdir $release_name
|
|
||||||
|
|
||||||
unzip $jre
|
|
||||||
|
|
||||||
# move jre
|
|
||||||
mv jdk8u292-b10-jre $release_name/jre
|
|
||||||
|
|
||||||
cp $jar $release_name/Tachidesk.jar
|
|
||||||
|
|
||||||
cp "resources/Tachidesk Launcher-win64.exe" "$release_name/Tachidesk Launcher.exe"
|
|
||||||
cp "resources/Tachidesk Launcher.bat" $release_name
|
|
||||||
cp "resources/Tachidesk Debug Launcher.bat" $release_name
|
|
||||||
cp "resources/Tachidesk Webview Launcher.bat" $release_name
|
|
||||||
|
|
||||||
zip_name=$release_name.zip
|
|
||||||
zip -9 -r $zip_name $release_name
|
|
||||||
|
|
||||||
rm -rf $release_name
|
|
||||||
|
|
||||||
mv $zip_name ../server/build/
|
|
||||||
@@ -65,9 +65,6 @@ dependencies {
|
|||||||
implementation(project(":AndroidCompat"))
|
implementation(project(":AndroidCompat"))
|
||||||
implementation(project(":AndroidCompat:Config"))
|
implementation(project(":AndroidCompat:Config"))
|
||||||
|
|
||||||
// webview
|
|
||||||
implementation(files("lib/WebView.jar"))
|
|
||||||
|
|
||||||
// uncomment to test extensions directly
|
// uncomment to test extensions directly
|
||||||
// implementation(fileTree("lib/"))
|
// implementation(fileTree("lib/"))
|
||||||
|
|
||||||
@@ -78,7 +75,7 @@ dependencies {
|
|||||||
val MainClass = "ir.armor.tachidesk.MainKt"
|
val MainClass = "ir.armor.tachidesk.MainKt"
|
||||||
application {
|
application {
|
||||||
mainClass.set(MainClass)
|
mainClass.set(MainClass)
|
||||||
applicationDefaultJvmArgs = listOf("-Dir.armor.tachidesk.openInWebview=true")
|
// applicationDefaultJvmArgs = listOf("-Dir.armor.tachidesk.openInWebview=true")
|
||||||
}
|
}
|
||||||
|
|
||||||
sourceSets {
|
sourceSets {
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
WebView.jar is taken from https://github.com/shannah/webviewjar
|
|
||||||
Binary file not shown.
@@ -80,7 +80,6 @@ object JavalinSetup {
|
|||||||
config.enableCorsForAllOrigins()
|
config.enableCorsForAllOrigins()
|
||||||
}.events { event ->
|
}.events { event ->
|
||||||
event.serverStarted {
|
event.serverStarted {
|
||||||
println("started")
|
|
||||||
if (hasWebUiBundled && serverConfig.initialOpenInBrowserEnabled) {
|
if (hasWebUiBundled && serverConfig.initialOpenInBrowserEnabled) {
|
||||||
Browser.openInBrowser()
|
Browser.openInBrowser()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ package ir.armor.tachidesk.server.util
|
|||||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
* 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/. */
|
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||||
|
|
||||||
import ca.weblite.webview.WebViewCLIClient
|
|
||||||
import dorkbox.util.Desktop
|
import dorkbox.util.Desktop
|
||||||
import ir.armor.tachidesk.server.serverConfig
|
import ir.armor.tachidesk.server.serverConfig
|
||||||
|
|
||||||
@@ -17,26 +16,13 @@ object Browser {
|
|||||||
|
|
||||||
private val webViewInstances = mutableListOf<Any>()
|
private val webViewInstances = mutableListOf<Any>()
|
||||||
|
|
||||||
private fun createWebView() =
|
|
||||||
WebViewCLIClient.Builder()
|
|
||||||
.size(800, 600)
|
|
||||||
.title("Tachidesk")
|
|
||||||
.resizable(true)
|
|
||||||
.url(appBaseUrl)
|
|
||||||
.build()
|
|
||||||
.also {
|
|
||||||
webViewInstances.add(it)
|
|
||||||
}
|
|
||||||
|
|
||||||
fun openInBrowser() {
|
fun openInBrowser() {
|
||||||
|
|
||||||
val openInWebView = System.getProperty("ir.armor.tachidesk.openInWebview")?.toBoolean()
|
val openInWebView = System.getProperty("ir.armor.tachidesk.openInWebview")?.toBoolean()
|
||||||
|
|
||||||
if (openInWebView == true) {
|
if (openInWebView == true) {
|
||||||
try {
|
try {
|
||||||
Thread {
|
// TODO
|
||||||
createWebView()
|
|
||||||
}.start()
|
|
||||||
} catch (e: Throwable) { // cover both java.lang.Exception and java.lang.Error
|
} catch (e: Throwable) { // cover both java.lang.Exception and java.lang.Error
|
||||||
e.printStackTrace()
|
e.printStackTrace()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user