mirror of
https://github.com/Suwayomi/TachideskJUI.git
synced 2025-12-10 14:52:03 +01:00
SetupTachideskJar is now a required task, and it auto-updates the jar if needed
This commit is contained in:
8
.github/workflows/Build.yml
vendored
8
.github/workflows/Build.yml
vendored
@@ -16,14 +16,14 @@ jobs:
|
||||
arch: x64
|
||||
os: ubuntu-latest
|
||||
shell: bash
|
||||
build: setupTachideskJar packageUberJarForCurrentOS packageDeb
|
||||
build: packageUberJarForCurrentOS packageDeb
|
||||
setupCl: ./scripts/SetupClUnix.sh
|
||||
|
||||
- runtime: linux-centos-x64
|
||||
arch: x64
|
||||
os: ubuntu-latest
|
||||
shell: bash
|
||||
build: setupTachideskJar packageRpm
|
||||
build: packageRpm
|
||||
setupCl: ./scripts/SetupClUnix.sh
|
||||
|
||||
- runtime: osx-x64
|
||||
@@ -31,7 +31,7 @@ jobs:
|
||||
os: macOS-latest
|
||||
shell: bash
|
||||
build: |
|
||||
setupTachideskJar packageUberJarForCurrentOS \
|
||||
packageUberJarForCurrentOS \
|
||||
packageDmg notarizeDmg \
|
||||
-Pcompose.desktop.mac.sign=true \
|
||||
-Pcompose.desktop.mac.signing.identity=${{ secrets.APPLE_IDENTITY }} \
|
||||
@@ -43,7 +43,7 @@ jobs:
|
||||
arch: x64
|
||||
os: windows-latest
|
||||
shell: powershell
|
||||
build: setupTachideskJar packageUberJarForCurrentOS packageMsi
|
||||
build: packageUberJarForCurrentOS packageMsi
|
||||
setupCl: ./scripts/SetupClWindows.ps1
|
||||
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
@@ -67,9 +67,7 @@ Join Tachidesk's [discord server](https://discord.gg/wgPyb7hE5d) to hang out wit
|
||||
### Prerequisite: Software dependencies
|
||||
You need this software packages installed in order to build this project:
|
||||
- Java Development Kit and Java Runtime Environment version 15, this can be handled by IntelliJ
|
||||
### Prerequisite: Getting Tachidesk.jar
|
||||
Run `./gradlew setupTachideskJar`, it will add the required Tachidesk jar to the resources. Note that you will have to delete it and run the task again if the required version has been bumped
|
||||
### building a jar for your OS
|
||||
### Building a jar for your OS
|
||||
Run `./gradlew packageUberJarForCurrentOS`, the resulting built jar file will be `build/compose/TachideskJUI-os-arch-X.Y.Z.jar`.
|
||||
|
||||
|
||||
|
||||
@@ -1,18 +1,20 @@
|
||||
import Config.tachideskVersion
|
||||
import de.undercouch.gradle.tasks.download.Download
|
||||
import org.gradle.api.Project
|
||||
import org.gradle.api.Task
|
||||
import org.gradle.api.tasks.Copy
|
||||
import org.gradle.api.tasks.Delete
|
||||
import org.gradle.api.tasks.Exec
|
||||
import org.gradle.api.tasks.bundling.Zip
|
||||
import org.gradle.kotlin.dsl.KotlinClosure1
|
||||
import org.gradle.kotlin.dsl.TaskContainerScope
|
||||
import org.gradle.kotlin.dsl.register
|
||||
import org.gradle.nativeplatform.platform.internal.DefaultNativePlatform
|
||||
import java.io.File
|
||||
import Config.tachideskVersion
|
||||
import org.gradle.api.Project
|
||||
import org.gradle.api.Task
|
||||
import org.gradle.api.tasks.bundling.Zip
|
||||
import java.util.jar.JarFile
|
||||
|
||||
private const val tachideskGroup = "tachidesk"
|
||||
private const val deleteOldTachideskTask = "deleteOldTachidesk"
|
||||
private const val downloadTask = "downloadTar"
|
||||
private const val extractTask = "extractTar"
|
||||
private const val androidScriptTask = "runGetAndroid"
|
||||
@@ -45,8 +47,20 @@ private fun Project.tmpDir() = File(rootDir, "tmp")
|
||||
|
||||
fun TaskContainerScope.registerTachideskTasks(project: Project) {
|
||||
with(project) {
|
||||
register<Delete>(deleteOldTachideskTask) {
|
||||
group = tachideskGroup
|
||||
val tachideskJar = File(rootDir, "src/main/resources/Tachidesk.jar")
|
||||
onlyIf {
|
||||
tachideskJar.exists() && JarFile(tachideskJar).use {
|
||||
it.manifest?.mainAttributes?.getValue("Specification-Version") != tachideskVersion
|
||||
}
|
||||
}
|
||||
delete(tachideskJar)
|
||||
}
|
||||
|
||||
register<Download>(downloadTask) {
|
||||
group = tachideskGroup
|
||||
mustRunAfter(deleteOldTachideskTask)
|
||||
onlyIfTachideskDoesntExist(rootDir)
|
||||
|
||||
val tmpDir = tmpDir()
|
||||
@@ -175,6 +189,7 @@ fun TaskContainerScope.registerTachideskTasks(project: Project) {
|
||||
group = tachideskGroup
|
||||
|
||||
dependsOn(
|
||||
deleteOldTachideskTask,
|
||||
downloadTask,
|
||||
extractTask,
|
||||
androidScriptTask,
|
||||
@@ -190,6 +205,6 @@ fun TaskContainerScope.registerTachideskTasks(project: Project) {
|
||||
}
|
||||
|
||||
named("processResources") {
|
||||
mustRunAfter(runAllTachideskTasks)
|
||||
dependsOn(runAllTachideskTasks)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user