mirror of
https://github.com/theotherp/nzbhydra2.git
synced 2026-02-06 11:17:18 +00:00
46 lines
1.7 KiB
Plaintext
46 lines
1.7 KiB
Plaintext
Windows:
|
|
- Run vcvars64.bat
|
|
- Set path to graalvm
|
|
- Set java_home to graalvm
|
|
- Set env variable HYDRA_NATIVE_BUILD=true
|
|
Tracing: Run:
|
|
java -DspringAot=true -agentlib:native-image-agent=config-output-dir=hints -jar core-5.0.0-SNAPSHOT-exec.jar directstart
|
|
|
|
Build:
|
|
mvn -P native native:compile -DskipTests
|
|
Push to nzbhydra2-build master:
|
|
git push build springboot3:master --force
|
|
|
|
|
|
run upx to compress image
|
|
|
|
|
|
Maven-Plugin:
|
|
https://docs.spring.io/spring-boot/docs/3.0.0/maven-plugin/reference/htmlsingle/#aot
|
|
|
|
Spring Boot 3 Native support:
|
|
https://docs.spring.io/spring-boot/docs/current/reference/html/native-image.html#native-image.introducing-graalvm-native-images
|
|
|
|
|
|
Compatibility:
|
|
Linux executable compiled with github actions on ubuntu-20 works on local WSL Ubuntu and on Ubuntu docker but not on alpine.
|
|
Musl compilation hasn't worked so far and only seems to work for simple class files anyway
|
|
Linux executable can be compressed using UPX.
|
|
Windows executable seems to work anywhere. UPX compressed exe returns without any output.
|
|
|
|
|
|
TODO
|
|
Native:
|
|
Check out https://www.graalvm.org/22.2/reference-manual/native-image/guides/use-graalvm-dashboard/
|
|
Compare with https://gist.github.com/linux-china/8745394fbc308168b20068386771ea1b
|
|
Change update mechanism
|
|
|
|
|
|
General:
|
|
Migrate successfully on windows and linux
|
|
Test with new instances
|
|
Call discord webhook directly instead of using discord bot
|
|
Make wrapper catch common errors (like freetype or whatever) and link to a wiki page
|
|
In release script as a precondition check that wrapper executables are not much older than wrapper script files
|
|
Add existing database (v1?) and perhaps even config to pipeline to ensure that migration keeps working
|