Skip to content

Commit

Permalink
New package: mindustry-7.0_b146
Browse files Browse the repository at this point in the history
  • Loading branch information
MIvanchev committed Oct 24, 2024
1 parent 83d592e commit d85684f
Show file tree
Hide file tree
Showing 5 changed files with 179 additions and 0 deletions.
1 change: 1 addition & 0 deletions srcpkgs/mindustry-server
2 changes: 2 additions & 0 deletions srcpkgs/mindustry/files/mindustry
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#!/bin/sh
exec /usr/bin/java -jar /usr/share/mindustry/Mindustry.jar "$@"
2 changes: 2 additions & 0 deletions srcpkgs/mindustry/files/mindustry-server
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#!/bin/sh
exec /usr/bin/java -jar /usr/share/mindustry/server-release.jar "$@"
114 changes: 114 additions & 0 deletions srcpkgs/mindustry/patches/local-arc.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
diff '--color=auto' -Naur a/build.gradle b/build.gradle
--- a/build.gradle 2024-10-22 17:02:02.872062571 +0200
+++ b/build.gradle 2024-10-21 16:04:59.582642809 +0200
@@ -1,10 +1,14 @@
buildscript{
ext{
- getArcHash = {
- return new Properties().with{ p -> p.load(file('gradle.properties').newReader()); return p }["archash"]
- }
+ arcHash = property("archash")
+
+ localArc = !project.hasProperty("release") && new File(rootDir.parent, 'Arc').exists() && !project.hasProperty("noLocalArc")

- arcHash = getArcHash()
+ arcModule = { String name ->
+ //skip to last submodule
+ name = name.substring(name.lastIndexOf(':') + 1)
+ return "com.github.Anuken${localArc ? "" : ".Arc"}:$name:$arcHash"
+ }
}

repositories{
@@ -16,8 +20,8 @@
}

dependencies{
- classpath "com.github.Anuken.Arc:packer:$arcHash"
- classpath "com.github.Anuken.Arc:arc-core:$arcHash"
+ classpath arcModule(":extensions:packer")
+ classpath arcModule(":arc-core")
}
}

@@ -48,20 +52,6 @@
return new File(projectDir.parent, '../Mindustry-Debug').exists() && !project.hasProperty("release") && project.hasProperty("args")
}

- localArc = {
- return !project.hasProperty("release") && !project.hasProperty("noLocalArc") && new File(projectDir.parent, '../Arc').exists()
- }
-
- arcModule = { String name ->
- if(localArc()){
- return project(":Arc:$name")
- }else{
- //skip to last submodule
- if(name.contains(':')) name = name.split(':').last()
- return "com.github.Anuken.Arc:$name:${getArcHash()}"
- }
- }
-
generateDeployName = { String platform ->
if(platform == "windows"){
platform += "64"
@@ -331,8 +321,8 @@
api arcModule("extensions:fx")
api arcModule("extensions:arcnet")
api "com.github.Anuken:rhino:$rhinoVersion"
- if(localArc() && debugged()) api arcModule("extensions:recorder")
- if(localArc()) api arcModule(":extensions:packer")
+ if(localArc && debugged()) api arcModule("extensions:recorder")
+ if(localArc) api arcModule(":extensions:packer")

annotationProcessor 'com.github.Anuken:jabel:0.9.0'
compileOnly project(":annotations")
@@ -423,7 +413,7 @@

dependencies{
implementation 'com.squareup:javapoet:1.12.1'
- implementation "com.github.Anuken.Arc:arc-core:$arcHash"
+ implementation arcModule("arc-core")
}
}

diff '--color=auto' -Naur a/settings.gradle b/settings.gradle
--- a/settings.gradle 2024-10-22 17:02:31.778129695 +0200
+++ b/settings.gradle 2024-10-22 17:04:44.499440184 +0200
@@ -34,33 +34,9 @@
}

if(!hasProperty("release")){
- if(new File(settingsDir, '../Arc').exists()){
- use(
- ':Arc',
- ':Arc:arc-core',
- ':Arc:extensions',
- ':Arc:extensions:freetype',
- ':Arc:extensions:recorder',
- ':Arc:extensions:arcnet',
- ':Arc:extensions:packer',
- ':Arc:extensions:g3d',
- ':Arc:extensions:fx',
- ':Arc:extensions:flabel',
- ':Arc:extensions:discord',
- ':Arc:extensions:profiling',
- ':Arc:natives',
- ':Arc:natives:natives-desktop',
- ':Arc:natives:natives-android',
- ':Arc:natives:natives-ios',
- ':Arc:natives:natives-freetype-desktop',
- ':Arc:natives:natives-freetype-android',
- ':Arc:natives:natives-freetype-ios',
- ':Arc:backends',
- ':Arc:backends:backend-sdl',
- ':Arc:backends:backend-android',
- ':Arc:backends:backend-robovm',
- ':Arc:backends:backend-headless'
- )
+ if(new File(rootDir.parent, 'Arc').exists()){
+ println("Compiling with localArc")
+ includeBuild("../Arc")
}

if(new File(settingsDir, '../Mindustry-Debug').exists()){
60 changes: 60 additions & 0 deletions srcpkgs/mindustry/template
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Template file for 'mindustry'
pkgname=mindustry
version=7.0.b146
revision=1
_build=${version##*.b}
hostmakedepends="openjdk17"
depends="virtual?java-runtime desktop-file-utils hicolor-icon-theme"
short_desc="Automation tower defense RTS"
maintainer="Mihail Ivanchev <contact@ivanchev.net>"
license="GPL-3.0-or-later"
homepage="https://mindustrygame.github.io/"
distfiles="https://github.com/Anuken/Arc/archive/refs/tags/v${_build}.tar.gz>Arc.tar.gz
https://github.com/Anuken/Mindustry/archive/refs/tags/v${_build}.tar.gz>Mindustry.tar.gz"
checksum="30cc1b00968aaec8dbb76a2dad6439c7d7418970fafe24c350b2be4e68c3e5d6
aa1684d87d9f3e1d1a2da415b5e055ea6493fe31398748447927bd903019adbd"
skip_extraction="Arc.tar.gz Mindustry.tar.gz"
nocross="Build involves JNI steps which are incompatible with cross builds"
build_wrksrc=Mindustry-${_build}
patch_args="-Np1 --directory=${build_wrksrc}"

# TODO: Make sure this template doesn't download anything. Currently not possible
# because Void's Gradle version is incompatible.

# TODO: Mindustry will not run on JRE<17, but we have no way to check this because
# virtual?java-runtime>=17 doesn't seem to work.

case "$XBPS_TARGET_MACHINE" in
i686*) broken="Couldn't load shared library 'libarc.so' for target: Linux, 32-bit" ;;
*-musl) broken="Couldn't load shared library" ;;
esac

# JAVA_HOME needs to be set because otherwise gradle fails to find Java.

export JAVA_HOME=/usr/lib/jvm/openjdk17

post_extract() {
vsrcextract -C Arc Arc.tar.gz
vsrcextract -C ${build_wrksrc} Mindustry.tar.gz
}

do_build() {
./gradlew --no-daemon dist -Pbuildversion="${_build}" desktop:dist server:dist
}

do_install() {
vmkdir usr/share/mindustry
vinstall desktop/build/libs/Mindustry.jar 644 usr/share/mindustry
vbin ${FILESDIR}/mindustry
vinstall core/assets/icons/icon_64.png 644 usr/share/icons/hicolor/64x64/apps mindustry.png
}

mindustry-server_package() {
short_desc+=" (server)"
pkg_install() {
vmkdir usr/share/mindustry
vinstall server/build/libs/server-release.jar 644 usr/share/mindustry
vbin ${FILESDIR}/mindustry-server
vinstall core/assets/icons/icon_64.png 644 usr/share/icons/hicolor/64x64/apps mindustry-server.png
}
}

0 comments on commit d85684f

Please sign in to comment.