55 lines
1.4 KiB
Groovy
55 lines
1.4 KiB
Groovy
task packageNsis_processResources(type: Copy) {
|
|
dependsOn preparePackaging
|
|
|
|
from ('src/packaging/nsis') {
|
|
exclude 'left_side.png'
|
|
}
|
|
from('LICENSE') {
|
|
rename 'LICENSE', 'LICENSE.txt'
|
|
}
|
|
into 'build/tmp/packaging/workingDir'
|
|
}
|
|
|
|
task packageNsis_generateIcon(type: Exec) {
|
|
mustRunAfter preparePackaging
|
|
|
|
executable 'convert'
|
|
args files('src/main/resources/assets/icons/*.original.png').files*.path
|
|
args 'build/tmp/packaging/workingDir/logo.ico'
|
|
}
|
|
|
|
task packageNsis_generateLeftSide(type: Exec) {
|
|
mustRunAfter preparePackaging
|
|
|
|
executable 'convert'
|
|
args 'src/packaging/nsis/left_side.png'
|
|
args '-alpha', 'off'
|
|
args 'BMP3:build/tmp/packaging/workingDir/left_side.bmp'
|
|
}
|
|
|
|
task packageNsis(type: Exec) {
|
|
description 'Builds the project and creates a Windows NSIS installer.'
|
|
group 'Progressia'
|
|
|
|
dependsOn requestWindowsDependencies
|
|
dependsOn build
|
|
dependsOn resolveVersion
|
|
dependsOn preparePackaging
|
|
|
|
dependsOn packageNsis_processResources
|
|
dependsOn packageNsis_generateIcon
|
|
dependsOn packageNsis_generateLeftSide
|
|
|
|
doFirst {
|
|
mkdir 'build/packages'
|
|
}
|
|
|
|
executable 'makensis'
|
|
args '-NOCONFIG'
|
|
args "-DPROJECT_NAME=${project.name}"
|
|
args "-DPROJECT_VERSION=${ -> project.version}"
|
|
args "-DMAIN_JAR_FILE=${ -> project.tasks.jar.archiveFileName.get()}"
|
|
args "-DOUTPUT_DIR=${project.buildDir.absolutePath}/packages"
|
|
args 'build/tmp/packaging/workingDir/config.nsi'
|
|
}
|