Commit Graph
7405 Commits
Author SHA1 Message Date
alexytomi cfa621c5c7 fix(README): Outdated nightly.link link 2026-04-01 06:47:46 +08:00
alexytomi 258a8488b6 Merge pull request #203 from AngelAuraMC/feat/lwjgl3.3.6
bump(lwjgl): Update LWJGL to 3.3.6
2026-03-15 00:36:50 +08:00
alexytomi 68d55043c6 fix: classpath incorrectness causing crash on BTA and others 2026-03-14 18:15:27 +08:00
alexytomi 77f0b7d0ba rework: Hashing functions
Added `File[]` variant
2026-03-14 18:15:27 +08:00
alexytomi 1f82ac8c47 fix(glfw): Add some missing window properties
This still isn't all of them but it is some of them. Fixes 26.1 Snapshot
11.
2026-03-14 18:15:27 +08:00
alexytomi dcb4a8b6c9 fix(glfw): Fetch GL context version from driver proper
Old logic is relegated to being an overengineered default
2026-03-14 18:15:27 +08:00
alexytomi 6ca2bb12f7 fix(glfw): implement missing methods
Added `glfwGetWindowTitle` (which doesn't seem to be used by Minecraft)
Added `glfwPlatformSupported`
Added `glfwSetPreeditCallback`, `glfwSetPreeditCandidateCallback`,
`glfwSetIMEStatusCallback`
2026-03-14 18:15:27 +08:00
alexytomi 11e3472a05 bump(lwjgl): Update to 3.3.6 (from 3.3.3)
Jars/Modules and AAR are from
https://github.com/AngelAuraMC/lwjgl3/actions/runs/23080032954
2026-03-14 18:15:26 +08:00
alexytomi eebfcbef53 Merge pull request #193 from AngelAuraMC/feat/swap-natives-to-aars
refactor: Move all natives and assets/components into seperate build
2026-03-14 12:07:46 +08:00
alexytomi bfd4524509 fix: Release builds don't have updating components 2026-03-11 00:23:52 +08:00
alexytomi f1a3e2aa60 update: NDK to r27d and preemptive changes for newer NDK ver
Newer NDK vers are stricter and dont have PAGE_SIZE so we fix those.

This finishes changes to support compiling on android via
[termux-ndk](https://github.com/lzhiyong/termux-ndk) or [Android Code
Studio](https://github.com/AndroidCSOfficial/acs-build-system) /
[android-ndk-custom](https://github.com/HomuHomu833/android-ndk-custom).
2026-03-10 19:22:35 +08:00
alexytomi beeb8b5cb9 fix: version files for components now reproducable
Hash the jar (which is now reproducable) and use that for version file
Also made it so it is no longer dependent on `pwd` being the root
project.

Should fix part of the issues this has on compiling in android (termux /
Android Code Studio)
2026-03-10 18:47:23 +08:00
alexytomi 9697f77517 add: zstd-jni support for Distant Horizons
Uses
https://github.com/AngelAuraMC/amethyst-prebuilt-libraries/actions/runs/22815158859
for zstd natives
2026-03-08 14:01:14 +08:00
alexytomi f090d130b1 rework: Rename lwjgl2_methods_injector into methods_injector_agent 2026-03-02 22:58:03 +08:00
alexytomi 9b2b061596 fix: imgui library name
Axiom uses a fork with a different naming scheme for the libraries. This
argument overrides that with what we use, which is a fork of the
official repo with android build instructions.
2026-03-02 22:58:03 +08:00
alexytomi 7b032bf339 fix(GLFW): implement glfwGetWindowContentScale
Fetching the scale/density from android is overkill, but it's the proper
implementation :D
2026-03-02 22:58:02 +08:00
alexytomi aea1421fa3 fix: replace signing key
We generate a new AAMC signing key for github actions "release" variants

Removes the old pojav key that is unused
2026-03-01 05:12:25 +08:00
yunuservices a14c36ace4 fix: missing GLFW_FOCUSED
Co-authored-by: alexytomi <60690056+alexytomi@users.noreply.github.com>
This is a modified version of
https://github.com/yunuservices/ZalithLauncher/commit/db43ccb51e778e5a5a1bc78a3da22aee97f5f326
without the configs.

This is needed so imgui functions correctly.
2026-03-01 05:12:25 +08:00
alexytomi 7c9759eb6d change: explicitly only build for the four main architectures android uses
Some AARs can provide MIPS, RISC, or other arches which we don't support
and bloat the APK file
2026-03-01 05:12:25 +08:00
alexytomi 166efa7500 change: replace most jniLibs AARs
Used artifacts from
https://github.com/AngelAuraMC/amethyst-prebuilt-libraries/actions/runs/22347671136
which is based on
https://github.com/AngelAuraMC/amethyst-prebuilt-libraries/commit/f0d76f179cb8edce0cc95359451e952f07059c33

Except for lwjgl-build which is from
https://github.com/AngelAuraMC/amethyst-prebuilt-libraries/actions/runs/22i528508288
which is based on
https://github.com/AngelAuraMC/amethyst-prebuilt-libraries/commit/1717ee410ce0b44d6879ffc0d7145b3ee093b0e5

Still need to figure out libunpack and building freedreno but that's
lows on the priority for now
2026-03-01 05:12:23 +08:00
alexytomi 54b2818be1 fix: add release build variant
Some phone setups (particularly parental controlled devices) block debug
builds. So we make a release variant for those.
2026-02-27 02:26:42 +08:00
alexytomi 34fe895c4d change: Use AARs for SDL and renderers
Licenses are moved to the AAR files themselves
2026-02-16 19:53:25 +08:00
alexytomi e37b690728 regression: caciocavallo17 only worked on java 25 (#184)
Accidentally forgot to change target to 17
2026-02-13 12:02:04 +08:00
alexytomi d94652753b Merge pull request #174 from AngelAuraMC/fix/cacio-java-25 2026-02-12 10:51:12 +08:00
Jokypond aa62808b80 fix: Wiki links in-app and README 2026-02-12 10:50:40 +08:00
alexytomi 829d67d6d9 add: Java 25 from FCL 2026-02-12 10:35:39 +08:00
alexytomi fed089040b fix: Workaround windows command-line length limit 2026-02-12 10:17:08 +08:00
SirDank 9fbdacd725 Add externalNativeBuild configuration for NDK
Signed-off-by: SirDank <52797753+SirDank@users.noreply.github.com>
2026-01-23 02:15:55 +05:30
alexytomi 6c84835fc9 fix: Java 25 Crash
Cacio doesn't work on java 25 in mainline. We cherry pick
https://github.com/CaciocavalloSilano/caciocavallo/commit/71a93cd59f1b00beae5688287a56592fccd7bfe2.

The jars were built in
https://github.com/AngelAuraMC/caciocavallo17/actions/runs/21113828819
2026-01-18 23:10:48 +08:00
alexytomi 5a797bfe61 Merge pull request #155 from AngelAuraMC/feat/import-modpack
Add functionality to import modpacks
2025-12-30 17:23:03 +08:00
alexytomi 39d04f3c49 Merge pull request #161 from AngelAuraMC/feat/kopper_zink
fix: OneUI rendering issues with Turnip by turning off UBWC
2025-12-30 17:19:01 +08:00
alexytomi 444919cb82 Merge pull request #165 from AngelAuraMC/fix/autorendererselect
Fix JVM args edgecase and misjudged autorenderer selector
2025-12-30 02:12:23 +08:00
alexytomi 9cdd425e85 fix: JVM arguments getting newlines inside it when pasting
When you paste a string with newlines in it, it literally puts newlines
here, then parsing it goes all wonky because of that.

Never trust user input
2025-12-30 01:34:05 +08:00
alexytomi c3b671c417 fix: Update renderer autoselect
New behavior is as follows.
If below 1.17, use the GL4ES based renderer.
If below 1.17 and modded, use the Mesa renderer (Zink in this case).
If above 1.17 and/or modded, use MobileGlues.
2025-12-30 01:34:04 +08:00
alexytomi e9728b87df Merge pull request #164 from alexytomi/add/sodium-warning
add: Sodium warning to log
2025-12-29 04:20:49 +08:00
alexytomi 5a304256f5 add: Sodium warning to log 2025-12-29 03:48:21 +08:00
alexytomi 7909646ef4 fix: OneUI rendering issues with Turnip by turning off UBWC
I believe we don't have any reason to be concerned about RAM bandwidth
limitations. This isn't the N64, and Minecraft is a pixelated game.
2025-12-29 03:03:22 +08:00
alexytomi b134986aaf refactor: NeoForgeDownloadTask to one constructor
Simplifies to one constructor. We don't need to copy the approach of
forge because neoforge integrates the minecraft version into their
version scheme, thus we have no use for the minecraft version provided
to us.
2025-12-29 03:03:16 +08:00
alexytomi e4ce830f66 fix: Neoforge not installing on modpack install
Also reworks the neoforge profile install to use neoforge maven
https://maven.neoforged.net/releases/net/neoforged/neoforge/maven-metadata.xml

This is away from using prism's jsons
https://meta.prismlauncher.org/v1/net.neoforged/index.json

This is because prism still has 1.20.1 listed, and we can't really run
those. We could have ran with prism for the profile select but that
would be even more confusing.
2025-12-29 03:03:16 +08:00
alexytomi ee1596cbd8 fix: Neoforge not creating instances on modpack install 2025-12-29 03:03:16 +08:00
alexytomi d20a20b57f fix: Fix crash report text from Pojav to Amethyst
the rebranding should really have been done far earlier. oh well, we're
gonna roll with it
2025-12-29 03:03:16 +08:00
alexytomi 6f75934b01 fix: workaround android 7 crash with Hex.encodeHexString
For some reason it keeps trying to use the system apache commons instead
of the one in the app, and because that one is really old, this method
is missing so it crashes.

Crash report
 - Time: 26-Dec-2025 6:46:49 PM
 - Device: lineage_Hol-U19 Hol-U19
 - Android version: 7.1.2
 - Crash stack trace:
 - Launcher version:
amethyst-legacy-20251226-c798f65-feat/import-modpack
java.lang.NoSuchMethodError: No static method
encodeHexString([B)Ljava/lang/String; in class
Lorg/apache/commons/codec/binary/Hex; or its super classes (declaration
of 'org.apache.commons.codec.binary.Hex' appears in
/system/framework/org.apache.http.legacy.boot.jar)
2025-12-29 03:03:16 +08:00
alexytomi 3a5fb8bff4 fix: Properly show error for incorrect file
It was crashing the launcher before, now it shows it in a box
2025-12-29 03:03:16 +08:00
alexytomi cca5cc63de fix: Fix mimetype issues with stock android not matching .mrpack
We want to be able to grey out files that are not .zip or .mrpack  so
people can have an easier chance of seeing their modpacks. To do this,
we match the `application/x-modrinth-modpack+zip` and `application/zip`
mimetypes as prescribed in the Modrinth documentation
https://support.modrinth.com/en/articles/8802351-modrinth-modpack-format-mrpack.

Stock android does not have `application/x-modrinth-modpack+zip`. OEM
vendors seem to include this in their ROMs, possibly from just using
https://gitlab.freedesktop.org/xdg/shared-mime-info as part of where
they source their additional mimetypes from.

There's a tendency for Android 12 and below to not have the
`application/x-modrinth-modpack+zip` mimetype, likely due to the
addition of it being relatively recent, so we have to account for that
by also adding `application/octet-stream`.

We cannot only have `application/octet-stream` or else it fails to match
.mrpack in systems that have `application/x-modrinth-modpack+zip`.

Sadly there seems to be no reliable way to check whether or the the ROM
has the `application/x-modrinth-modpack+zip` mimetype so we just match
it along with `application/octet-stream` to cover our bases.
2025-12-29 03:03:16 +08:00
alexytomi 531df2978d Add functionality to import modpacks
Lets you import modpacks from mrpacks and zips
2025-12-29 03:03:16 +08:00
alexytomi cfec6474e3 Merge pull request #162 from alexytomi/add/sodium-warning
Update sodium warning and switch
2025-12-28 18:20:53 +08:00
alexytomi 4125ae0fb5 rework: Sodium warning message
Now makes you wait some time to properly read everything.
2025-12-28 18:14:07 +08:00
alexytomi e2efd00ffb add: Delete Sodium and dependents button in Sodium warning 2025-12-28 14:45:07 +08:00
alexytomi 037396540a fix: negative numbers not being typable 2025-12-28 14:41:42 +08:00
alexytomi fe2fcdb5e6 Merge pull request #148 from alexytomi/add/sodium-warning
add: Sodium warning
2025-12-25 23:35:34 +08:00