mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-06-11 19:14:05 +09:00
proper bootstrap codes
This commit is contained in:
@@ -30,5 +30,6 @@
|
|||||||
"MENU_LABEL_DELETE": "Delete",
|
"MENU_LABEL_DELETE": "Delete",
|
||||||
"MENU_OPTIONS_JVM_HEAP_MAX": "Max JVM Heap Memory",
|
"MENU_OPTIONS_JVM_HEAP_MAX": "Max JVM Heap Memory",
|
||||||
"MENU_OPTIONS_AUTOSAVE": "Autosave",
|
"MENU_OPTIONS_AUTOSAVE": "Autosave",
|
||||||
"CONTEXT_TIME_MINUTE_PLURAL": "Minutes"
|
"CONTEXT_TIME_MINUTE_PLURAL": "Minutes",
|
||||||
|
"MENU_LABEL_SYSTEM_INFO": "System Info"
|
||||||
}
|
}
|
||||||
@@ -29,5 +29,6 @@
|
|||||||
"MENU_LABEL_DELETE": "삭제",
|
"MENU_LABEL_DELETE": "삭제",
|
||||||
"MENU_OPTIONS_JVM_HEAP_MAX": "최대 JVM 힙 메모리",
|
"MENU_OPTIONS_JVM_HEAP_MAX": "최대 JVM 힙 메모리",
|
||||||
"MENU_OPTIONS_AUTOSAVE": "자동 저장",
|
"MENU_OPTIONS_AUTOSAVE": "자동 저장",
|
||||||
"CONTEXT_TIME_MINUTE_PLURAL": "분"
|
"CONTEXT_TIME_MINUTE_PLURAL": "분",
|
||||||
|
"MENU_LABEL_SYSTEM_INFO": "시스템 정보"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,12 +23,12 @@ cp $SRCFILES/AppRun $DESTDIR/AppRun
|
|||||||
chmod +x $DESTDIR/AppRun
|
chmod +x $DESTDIR/AppRun
|
||||||
|
|
||||||
# Copy over a Java runtime
|
# Copy over a Java runtime
|
||||||
cp -r "../out/$RUNTIME" $DESTDIR/
|
mkdir $DESTDIR/out
|
||||||
|
cp -r "../out/$RUNTIME" $DESTDIR/out/
|
||||||
|
|
||||||
# Copy over all the assets and a jarfile
|
# Copy over all the assets and a jarfile
|
||||||
cp -r "../assets_release" $DESTDIR/
|
cp -r "../assets_release" $DESTDIR/
|
||||||
mv $DESTDIR/assets_release $DESTDIR/assets
|
mv $DESTDIR/assets_release $DESTDIR/assets
|
||||||
mkdir $DESTDIR/out
|
|
||||||
cp "../out/TerrarumBuild.jar" $DESTDIR/out/
|
cp "../out/TerrarumBuild.jar" $DESTDIR/out/
|
||||||
|
|
||||||
# Pack everything to AppImage
|
# Pack everything to AppImage
|
||||||
|
|||||||
@@ -23,12 +23,12 @@ cp $SRCFILES/AppRun $DESTDIR/AppRun
|
|||||||
chmod +x $DESTDIR/AppRun
|
chmod +x $DESTDIR/AppRun
|
||||||
|
|
||||||
# Copy over a Java runtime
|
# Copy over a Java runtime
|
||||||
cp -r "../out/$RUNTIME" $DESTDIR/
|
mkdir $DESTDIR/out
|
||||||
|
cp -r "../out/$RUNTIME" $DESTDIR/out/
|
||||||
|
|
||||||
# Copy over all the assets and a jarfile
|
# Copy over all the assets and a jarfile
|
||||||
cp -r "../assets_release" $DESTDIR/
|
cp -r "../assets_release" $DESTDIR/
|
||||||
mv $DESTDIR/assets_release $DESTDIR/assets
|
mv $DESTDIR/assets_release $DESTDIR/assets
|
||||||
mkdir $DESTDIR/out
|
|
||||||
cp "../out/TerrarumBuild.jar" $DESTDIR/out/
|
cp "../out/TerrarumBuild.jar" $DESTDIR/out/
|
||||||
|
|
||||||
# Pack everything to AppImage
|
# Pack everything to AppImage
|
||||||
|
|||||||
@@ -25,12 +25,12 @@ cp $SRCFILES/Terrarum.sh $DESTDIR/Contents/MacOS/
|
|||||||
chmod +x $DESTDIR/Contents/MacOS/Terrarum.sh
|
chmod +x $DESTDIR/Contents/MacOS/Terrarum.sh
|
||||||
|
|
||||||
# Copy over a Java runtime
|
# Copy over a Java runtime
|
||||||
cp -r "../out/$RUNTIME" $DESTDIR/Contents/MacOS/
|
mkdir $DESTDIR/Contents/MacOS/out
|
||||||
|
cp -r "../out/$RUNTIME" $DESTDIR/Contents/MacOS/out/
|
||||||
|
|
||||||
# Copy over all the assets and a jarfile
|
# Copy over all the assets and a jarfile
|
||||||
cp -r "../assets_release" $DESTDIR/Contents/MacOS/
|
cp -r "../assets_release" $DESTDIR/Contents/MacOS/
|
||||||
mv $DESTDIR/Contents/MacOS/assets_release $DESTDIR/Contents/MacOS/assets
|
mv $DESTDIR/Contents/MacOS/assets_release $DESTDIR/Contents/MacOS/assets
|
||||||
mkdir $DESTDIR/Contents/MacOS/out
|
|
||||||
cp "../out/TerrarumBuild.jar" $DESTDIR/Contents/MacOS/out/
|
cp "../out/TerrarumBuild.jar" $DESTDIR/Contents/MacOS/out/
|
||||||
|
|
||||||
echo "Build successful: $DESTDIR"
|
echo "Build successful: $DESTDIR"
|
||||||
|
|||||||
@@ -25,12 +25,12 @@ cp $SRCFILES/Terrarum.sh $DESTDIR/Contents/MacOS/
|
|||||||
chmod +x $DESTDIR/Contents/MacOS/Terrarum.sh
|
chmod +x $DESTDIR/Contents/MacOS/Terrarum.sh
|
||||||
|
|
||||||
# Copy over a Java runtime
|
# Copy over a Java runtime
|
||||||
cp -r "../out/$RUNTIME" $DESTDIR/Contents/MacOS/
|
mkdir $DESTDIR/Contents/MacOS/out
|
||||||
|
cp -r "../out/$RUNTIME" $DESTDIR/Contents/MacOS/out/
|
||||||
|
|
||||||
# Copy over all the assets and a jarfile
|
# Copy over all the assets and a jarfile
|
||||||
cp -r "../assets_release" $DESTDIR/Contents/MacOS/
|
cp -r "../assets_release" $DESTDIR/Contents/MacOS/
|
||||||
mv $DESTDIR/Contents/MacOS/assets_release $DESTDIR/Contents/MacOS/assets
|
mv $DESTDIR/Contents/MacOS/assets_release $DESTDIR/Contents/MacOS/assets
|
||||||
mkdir $DESTDIR/Contents/MacOS/out
|
|
||||||
cp "../out/TerrarumBuild.jar" $DESTDIR/Contents/MacOS/out/
|
cp "../out/TerrarumBuild.jar" $DESTDIR/Contents/MacOS/out/
|
||||||
|
|
||||||
echo "Build successful: $DESTDIR"
|
echo "Build successful: $DESTDIR"
|
||||||
|
|||||||
@@ -24,12 +24,12 @@ fi
|
|||||||
x86_64-w64-mingw32-gcc -o $DESTDIR/Terrarum.exe $SRCFILES/Terrarum.c || { echo 'Building EXE failed' >&2; exit 1; }
|
x86_64-w64-mingw32-gcc -o $DESTDIR/Terrarum.exe $SRCFILES/Terrarum.c || { echo 'Building EXE failed' >&2; exit 1; }
|
||||||
|
|
||||||
# Copy over a Java runtime
|
# Copy over a Java runtime
|
||||||
cp -r "../out/$RUNTIME" $DESTDIR/
|
mkdir $DESTDIR/out
|
||||||
|
cp -r "../out/$RUNTIME" $DESTDIR/out/
|
||||||
|
|
||||||
# Copy over all the assets and a jarfile
|
# Copy over all the assets and a jarfile
|
||||||
cp -r "../assets_release" $DESTDIR/
|
cp -r "../assets_release" $DESTDIR/
|
||||||
mv $DESTDIR/assets_release $DESTDIR/assets
|
mv $DESTDIR/assets_release $DESTDIR/assets
|
||||||
mkdir $DESTDIR/out
|
|
||||||
cp "../out/TerrarumBuild.jar" $DESTDIR/out/
|
cp "../out/TerrarumBuild.jar" $DESTDIR/out/
|
||||||
|
|
||||||
# Temporary solution: zip everything
|
# Temporary solution: zip everything
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
cd "${0%/*}"
|
cd "${0%/*}"
|
||||||
./runtime-linux-arm/bin/java -Dswing.aatext=true -Dawt.useSystemAAFontSettings=lcd -jar ./out/TerrarumBuild.jar
|
./out/runtime-linux-arm/bin/java -Dswing.aatext=true -Dawt.useSystemAAFontSettings=lcd -jar ./out/TerrarumBuild.jar
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
cd "${0%/*}"
|
cd "${0%/*}"
|
||||||
./runtime-linux-x86/bin/java -Dswing.aatext=true -Dawt.useSystemAAFontSettings=lcd -jar ./out/TerrarumBuild.jar
|
./out/runtime-linux-x86/bin/java -Dswing.aatext=true -Dawt.useSystemAAFontSettings=lcd -jar ./out/TerrarumBuild.jar
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
cd "${0%/*}"
|
cd "${0%/*}"
|
||||||
./runtime-osx-arm/bin/java -jar ./out/TerrarumBuild.jar
|
./out/runtime-osx-arm/bin/java -jar ./out/TerrarumBuild.jar
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
cd "${0%/*}"
|
cd "${0%/*}"
|
||||||
./runtime-osx-x86/bin/java -jar ./out/TerrarumBuild.jar
|
./out/runtime-osx-x86/bin/java -jar ./out/TerrarumBuild.jar
|
||||||
|
|||||||
@@ -2,5 +2,5 @@
|
|||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
int main() {
|
int main() {
|
||||||
return system(".\\runtime-windows-x86\\bin\\java -jar .\\out\\TerrarumBuild.jar");
|
return system(".\\out\\runtime-windows-x86\\bin\\java -jar .\\out\\TerrarumBuild.jar");
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
package net.torvald.terrarum
|
package net.torvald.terrarum
|
||||||
|
|
||||||
|
import com.badlogic.gdx.Gdx
|
||||||
import net.torvald.unicode.BULLET
|
import net.torvald.unicode.BULLET
|
||||||
import net.torvald.unicode.ENDASH
|
import net.torvald.unicode.ENDASH
|
||||||
|
|
||||||
@@ -223,6 +224,22 @@ Copyright (c) 2015, 2019, Oracle and/or its affiliates. All rights reserved.
|
|||||||
""").split('\n')
|
""").split('\n')
|
||||||
|
|
||||||
|
|
||||||
|
private val javaVersion = System.getProperty("java.version")
|
||||||
|
private val osName = App.OSName
|
||||||
|
private val osVersion = App.OSVersion
|
||||||
|
private val sysArch = App.systemArch
|
||||||
|
private val processor = App.processor
|
||||||
|
private val processorVendor = App.processorVendor
|
||||||
|
private val glinfo = Gdx.graphics.glVersion.debugVersionString
|
||||||
|
|
||||||
|
val systeminfo: List<String>; get() = """
|
||||||
|
JRE Version: $javaVersion
|
||||||
|
Operation System: $osName $osVersion
|
||||||
|
Architecture: $sysArch
|
||||||
|
Processor: $processor ($processorVendor)
|
||||||
|
GL Info: $glinfo
|
||||||
|
""".split('\n')
|
||||||
|
|
||||||
|
|
||||||
val gpl3: List<String>; get() = """ GNU GENERAL PUBLIC LICENSE
|
val gpl3: List<String>; get() = """ GNU GENERAL PUBLIC LICENSE
|
||||||
Version 3, 29 June 2007
|
Version 3, 29 June 2007
|
||||||
|
|||||||
@@ -64,16 +64,33 @@ public class Principii {
|
|||||||
String extracmd = devMode ? " -ea" : "";
|
String extracmd = devMode ? " -ea" : "";
|
||||||
String OS = OSName.toUpperCase();
|
String OS = OSName.toUpperCase();
|
||||||
String CPUARCH = System.getProperty("os.arch").toUpperCase();
|
String CPUARCH = System.getProperty("os.arch").toUpperCase();
|
||||||
|
String runtimeRoot;
|
||||||
|
String runtimeArch;
|
||||||
|
if (!CPUARCH.equals("AMD64") && !CPUARCH.equals("AARCH64")) {
|
||||||
|
System.err.println("Unsupported CPU architecture: " + CPUARCH);
|
||||||
|
System.exit(1);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
runtimeArch = CPUARCH.equals("AMD64") ? "x86" : "arm";
|
||||||
|
}
|
||||||
|
|
||||||
if (OS.contains("WIN")) {
|
if (OS.contains("WIN")) {
|
||||||
// reserved for future use
|
runtimeRoot = "runtime-windows-" + runtimeArch;
|
||||||
}
|
}
|
||||||
else if (OS.contains("OS X") || OS.contains("MACOS")) { // OpenJDK for mac will still report "Mac OS X" with version number "10.16", even on Big Sur and beyond
|
else if (OS.contains("OS X") || OS.contains("MACOS")) { // OpenJDK for mac will still report "Mac OS X" with version number "10.16", even on Big Sur and beyond
|
||||||
|
runtimeRoot = "runtime-osx-" + runtimeArch;
|
||||||
extracmd += " -XstartOnFirstThread";
|
extracmd += " -XstartOnFirstThread";
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
runtimeRoot = "runtime-linux-" + runtimeArch;
|
||||||
extracmd += " -Dswing.aatext=true -Dawt.useSystemAAFontSettings=lcd";
|
extracmd += " -Dswing.aatext=true -Dawt.useSystemAAFontSettings=lcd";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String runtime = new File("out/"+runtimeRoot+"/bin/java").getAbsolutePath();
|
||||||
|
System.out.println("Runtime path: "+runtime);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
getDefaultDirRoot();
|
getDefaultDirRoot();
|
||||||
configDir = defaultDir + "/config.json";
|
configDir = defaultDir + "/config.json";
|
||||||
@@ -84,40 +101,13 @@ public class Principii {
|
|||||||
|
|
||||||
int xmx = getConfigInt("jvm_xmx");
|
int xmx = getConfigInt("jvm_xmx");
|
||||||
|
|
||||||
String runtime = new File("./out/runtime-osx-x86/bin/java").getAbsolutePath();
|
|
||||||
|
|
||||||
System.out.println("Runtime path: "+runtime);
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Process proc = Runtime.getRuntime().exec(runtime+extracmd+" -Xms1G -Xmx"+xmx+"G -cp ./out/TerrarumBuild.jar net.torvald.terrarum.App");
|
String[] cmd = (runtime+extracmd+" -Xms1G -Xmx"+xmx+"G -cp ./out/TerrarumBuild.jar net.torvald.terrarum.App").split(" ");
|
||||||
|
ProcessBuilder pb = new ProcessBuilder(cmd);
|
||||||
Thread tp = new Thread(() -> {
|
pb.inheritIO();
|
||||||
String p = null;
|
System.exit(pb.start().waitFor());
|
||||||
while (proc.isAlive()) {
|
|
||||||
try {
|
|
||||||
p = proc.inputReader().readLine();
|
|
||||||
}
|
|
||||||
catch (IOException ignored) {
|
|
||||||
}
|
|
||||||
if (p != null) System.out.println(p);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Thread te = new Thread(() -> {
|
|
||||||
String e = null;
|
|
||||||
while (proc.isAlive()) {
|
|
||||||
try {
|
|
||||||
e = proc.errorReader().readLine();
|
|
||||||
}
|
|
||||||
catch (IOException ignored) {
|
|
||||||
}
|
|
||||||
if (e != null) System.err.println(e);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
tp.start();
|
|
||||||
te.start();
|
|
||||||
|
|
||||||
System.exit(proc.waitFor());
|
|
||||||
}
|
}
|
||||||
catch (IOException e) {
|
catch (IOException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ object UITitleRemoConYaml {
|
|||||||
- MENU_LABEL_CREDITS
|
- MENU_LABEL_CREDITS
|
||||||
- MENU_LABEL_COPYRIGHT : net.torvald.terrarum.modulebasegame.ui.UITitleCredits
|
- MENU_LABEL_COPYRIGHT : net.torvald.terrarum.modulebasegame.ui.UITitleCredits
|
||||||
- MENU_CREDIT_GPL_DNT : net.torvald.terrarum.modulebasegame.ui.UITitleGPL3
|
- MENU_CREDIT_GPL_DNT : net.torvald.terrarum.modulebasegame.ui.UITitleGPL3
|
||||||
|
- MENU_LABEL_SYSTEM_INFO : net.torvald.terrarum.modulebasegame.ui.UISystemInfo
|
||||||
- MENU_LABEL_RETURN
|
- MENU_LABEL_RETURN
|
||||||
- MENU_LABEL_QUIT
|
- MENU_LABEL_QUIT
|
||||||
"""
|
"""
|
||||||
|
|||||||
@@ -44,3 +44,4 @@ open class UITitleWallOfText(private val text: List<String>) : UICanvas() {
|
|||||||
|
|
||||||
class UITitleCredits(val remoCon: UIRemoCon) : UITitleWallOfText(CreditSingleton.credit)
|
class UITitleCredits(val remoCon: UIRemoCon) : UITitleWallOfText(CreditSingleton.credit)
|
||||||
class UITitleGPL3(val remoCon: UIRemoCon) : UITitleWallOfText(CreditSingleton.gpl3)
|
class UITitleGPL3(val remoCon: UIRemoCon) : UITitleWallOfText(CreditSingleton.gpl3)
|
||||||
|
class UISystemInfo(val remoCon: UIRemoCon) : UITitleWallOfText(CreditSingleton.systeminfo)
|
||||||
Reference in New Issue
Block a user