summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSefa Eyeoglu <contact@scrumplex.net>2022-06-29 00:07:06 +0200
committerSefa Eyeoglu <contact@scrumplex.net>2022-06-29 00:07:06 +0200
commiteba932312d09604c32ef2d8fc09f15daa924ade5 (patch)
treee271dd98715edff5e1b1924c5cb2ba4d9e283793
parent4f749ba9af1c6e685c5f55b8af58e961f638de55 (diff)
downloadProject-Tick-eba932312d09604c32ef2d8fc09f15daa924ade5.tar.gz
Project-Tick-eba932312d09604c32ef2d8fc09f15daa924ade5.zip
refactor: patch tinyfd in LWJGL 3.2.2
When we have this cool patching mechanism, we could just use it to patch our existing LWJGL, instead of providing a static one
-rwxr-xr-xgenerateMojang.py42
-rw-r--r--meta/common/mojang.py1
-rw-r--r--meta/model/mojang.py4
-rw-r--r--static/mojang/library-patches.json51
-rw-r--r--static/mojang/lwjgl-3.2.2.json322
5 files changed, 74 insertions, 346 deletions
diff --git a/generateMojang.py b/generateMojang.py
index 7d11c30824..e458ca11d7 100755
--- a/generateMojang.py
+++ b/generateMojang.py
@@ -4,11 +4,11 @@ import os
from collections import defaultdict, namedtuple
from operator import attrgetter
from pprint import pprint
-from typing import Optional
+from typing import Optional, List
from meta.common import ensure_component_dir, polymc_path, upstream_path, static_path
from meta.common.mojang import VERSION_MANIFEST_FILE, MINECRAFT_COMPONENT, LWJGL3_COMPONENT, LWJGL_COMPONENT, \
- STATIC_LWJGL322_FILE, STATIC_OVERRIDES_FILE, VERSIONS_DIR, LIBRARY_PATCHES_FILE
+ STATIC_OVERRIDES_FILE, VERSIONS_DIR, LIBRARY_PATCHES_FILE
from meta.model import MetaVersion, Library, GradleSpecifier, MojangLibraryDownloads, MojangArtifact, Dependency, \
MetaPackage, MojangRules
from meta.model.mojang import MojangIndexWrap, MojangIndex, MojangVersion, LegacyOverrideIndex, LibraryPatches
@@ -62,7 +62,7 @@ LOG4J_HASHES = {
PASS_VARIANTS = [
# "beed62ec1d40ae89d808fe70b83df6bd4b3be81f", # 3.3.1 (2022-05-18 13:51:54+00:00) split natives, without workaround
"8836c419f90f69a278b97d945a34af165c24ff60", # 3.3.1 (2022-05-18 13:51:54+00:00) split natives, with workaround
- "e13abfa8c5f45ae4a7e87e0b388de46066d31a67", # 3.2.2 (2019-06-19 11:44:29+00:00) our fixed version
+ "ea4973ebc9eadf059f30f0958c89f330898bff51", # 3.2.2 (2019-07-04 14:41:05+00:00) will be patched by us, missing tinyfd
"8e1f89b96c6f583a0e494949c75115ed13412ba1", # 3.2.1 (2019-02-13 16:12:08+00:00)
"7ed2372097dbd635f5aef3137711141ce91c4ee9", # 3.1.6 (2018-11-29 13:11:38+00:00)
"5a006b7c72a080ac673fff02b259f3127c376655", # 3.1.2 (2018-06-21 12:57:11+00:00)
@@ -81,7 +81,6 @@ BAD_VARIANTS = [
"4b73fccb9e5264c2068bdbc26f9651429abbf21a", # 3.2.2 (2021-08-25 14:41:57+00:00) only linux, windows
"090cec3577ecfe438b890b2a9410ea07aa725e16", # 3.2.2 (2021-04-07 14:04:09+00:00) only linux, windows
"ab463e9ebc6a36abf22f2aa27b219dd372ff5069", # 3.2.2 (2019-07-19 09:25:47+00:00) only linux, windows
- "ea4973ebc9eadf059f30f0958c89f330898bff51", # 3.2.2 (2019-07-04 14:41:05+00:00) fine but replaced by fixed version
"8bde129ef334023c365bd7f57512a4bf5e72a378", # 3.2.1 (2019-04-18 11:05:19+00:00) only osx, windows
"65b2ce1f2b869bf98b8dd7ec0bc6956967d04811", # 3.1.6 (2019-04-18 11:05:19+00:00) only linux
"f04052162b50fa1433f67e1a90bc79466c4ab776", # 2.9.0 (2013-10-21 16:34:47+00:00) only linux, windows
@@ -181,15 +180,24 @@ def is_macos_only(rules: Optional[MojangRules]):
return False
-def patch_library(lib: Library, patches: LibraryPatches):
+def patch_library(lib: Library, patches: LibraryPatches) -> List[Library]:
+ to_patch = [lib]
+
new_libraries = []
- for patch in patches:
- if lib.name in patch.match:
- if patch.override:
- lib.merge(patch.override)
+ while to_patch:
+ target = to_patch.pop(0)
+
+ for patch in patches:
+ if patch.applies(target):
+ if patch.override:
+ target.merge(patch.override)
+
+ if patch.additionalLibraries:
+ additional_copy = copy.deepcopy(patch.additionalLibraries)
+ new_libraries += set(additional_copy)
+ if patch.patchAdditionalLibraries:
+ to_patch += additional_copy
- if patch.additionalLibraries:
- new_libraries += patch.additionalLibraries
return new_libraries
@@ -203,21 +211,13 @@ def process_single_variant(lwjgl_variant: MetaVersion, patches: LibraryPatches):
v.libraries += list(dict.fromkeys(new_libraries))
if lwjgl_version[0] == '2':
- static_filename = os.path.join(STATIC_DIR, LWJGL_COMPONENT, f"{lwjgl_version}.json")
filename = os.path.join(PMC_DIR, LWJGL_COMPONENT, f"{lwjgl_version}.json")
- if os.path.isfile(static_filename):
- v = MetaVersion.parse_file(static_filename)
- print("LWJGL2 is static:", v.version)
v.name = 'LWJGL 2'
v.uid = LWJGL_COMPONENT
v.conflicts = [Dependency(uid=LWJGL3_COMPONENT)]
elif lwjgl_version[0] == '3':
- static_filename = os.path.join(STATIC_DIR, LWJGL3_COMPONENT, f"{lwjgl_version}.json")
filename = os.path.join(PMC_DIR, LWJGL3_COMPONENT, f"{lwjgl_version}.json")
- if os.path.isfile(static_filename):
- v = MetaVersion.parse_file(static_filename)
- print("LWJGL3 is static:", v.version)
v.name = 'LWJGL 3'
v.uid = LWJGL3_COMPONENT
@@ -417,10 +417,6 @@ def main():
override.apply_onto_meta_version(v)
v.write(out_filename)
- # Add our own 3.2.2, which includes the missing tinyfd libraries
- lwjgl322 = MetaVersion.parse_file(os.path.join(STATIC_DIR, STATIC_LWJGL322_FILE))
- add_lwjgl_version(lwjglVersionVariants, lwjgl322)
-
for lwjglVersionVariant in lwjglVersionVariants:
decided_variant = None
passed_variants = 0
diff --git a/meta/common/mojang.py b/meta/common/mojang.py
index 0b8dc0285e..a2d39e9f1a 100644
--- a/meta/common/mojang.py
+++ b/meta/common/mojang.py
@@ -7,7 +7,6 @@ VERSIONS_DIR = join(BASE_DIR, "versions")
ASSETS_DIR = join(BASE_DIR, "assets")
STATIC_EXPERIMENTS_FILE = join(BASE_DIR, "minecraft-experiments.json")
-STATIC_LWJGL322_FILE = join(BASE_DIR, "lwjgl-3.2.2.json")
STATIC_OVERRIDES_FILE = join(BASE_DIR, "minecraft-legacy-override.json")
LIBRARY_PATCHES_FILE = join(BASE_DIR, "library-patches.json")
diff --git a/meta/model/mojang.py b/meta/model/mojang.py
index e99145cc5c..65814179da 100644
--- a/meta/model/mojang.py
+++ b/meta/model/mojang.py
@@ -114,6 +114,10 @@ class LibraryPatch(MetaBase):
match: List[GradleSpecifier]
override: Optional[Library]
additionalLibraries: Optional[List[Library]]
+ patchAdditionalLibraries: bool = Field(False)
+
+ def applies(self, target: Library) -> bool:
+ return target.name in self.match
class LibraryPatches(MetaBase):
diff --git a/static/mojang/library-patches.json b/static/mojang/library-patches.json
index 2eac327873..baa078992c 100644
--- a/static/mojang/library-patches.json
+++ b/static/mojang/library-patches.json
@@ -1,5 +1,56 @@
[
{
+ "_comment": "Add missing tinyfd to the broken LWJGL 3.2.2 variant",
+ "match": [
+ "org.lwjgl:lwjgl:3.2.2"
+ ],
+ "additionalLibraries": [
+ {
+ "downloads": {
+ "artifact": {
+ "sha1": "fcbe606c8f8da6f8f9a05e2c540eb1ee8632b0e9",
+ "size": 7092,
+ "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2.jar"
+ }
+ },
+ "name": "org.lwjgl:lwjgl-tinyfd:3.2.2"
+ },
+ {
+ "downloads": {
+ "artifact": {
+ "sha1": "fcbe606c8f8da6f8f9a05e2c540eb1ee8632b0e9",
+ "size": 7092,
+ "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2.jar"
+ },
+ "classifiers": {
+ "natives-linux": {
+ "sha1": "39e35b161c130635d9c8918ce04e887a30c5b687",
+ "size": 38804,
+ "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-natives-linux.jar"
+ },
+ "natives-macos": {
+ "sha1": "46d0798228b8a28e857a2a0f02310fd6ba2a4eab",
+ "size": 42136,
+ "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-natives-macos.jar"
+ },
+ "natives-windows": {
+ "sha1": "e9115958773644e863332a6a06488d26f9e1fc9f",
+ "size": 208314,
+ "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-natives-windows.jar"
+ }
+ }
+ },
+ "name": "org.lwjgl:lwjgl-tinyfd:3.2.2",
+ "natives": {
+ "linux": "natives-linux",
+ "osx": "natives-macos",
+ "windows": "natives-windows"
+ }
+ }
+ ],
+ "patchAdditionalLibraries": true
+ },
+ {
"_comment": "Add additional library just for osx-arm64. No override needed",
"match": [
"ca.weblite:java-objc-bridge:1.0.0",
diff --git a/static/mojang/lwjgl-3.2.2.json b/static/mojang/lwjgl-3.2.2.json
deleted file mode 100644
index e910729bb8..0000000000
--- a/static/mojang/lwjgl-3.2.2.json
+++ /dev/null
@@ -1,322 +0,0 @@
-
-{
- "conflicts": [
- {
- "uid": "org.lwjgl"
- }
- ],
- "formatVersion": 1,
- "libraries": [
- {
- "downloads": {
- "artifact": {
- "sha1": "d3ad4df38e400b8afba1de63f84338809399df5b",
- "size": 108907,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2.jar"
- }
- },
- "name": "org.lwjgl:lwjgl-glfw:3.2.2"
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "d3ad4df38e400b8afba1de63f84338809399df5b",
- "size": 108907,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2.jar"
- },
- "classifiers": {
- "natives-linux": {
- "sha1": "0957733f26a6661d4883da0335f7ef46d3bbbd7d",
- "size": 159198,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-natives-linux.jar"
- },
- "natives-macos": {
- "sha1": "98f745038d17ac3192fcd01dc44126b03ec1570d",
- "size": 67311,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-natives-macos.jar"
- },
- "natives-windows": {
- "sha1": "dc6826d636bf796b33a49038c354210e661bfc17",
- "size": 266648,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-glfw/3.2.2/lwjgl-glfw-3.2.2-natives-windows.jar"
- }
- }
- },
- "name": "org.lwjgl:lwjgl-glfw:3.2.2",
- "natives": {
- "linux": "natives-linux",
- "osx": "natives-macos",
- "windows": "natives-windows"
- }
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "ee8e57a79300f78294576d87c4a587f8c99402e2",
- "size": 34848,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2.jar"
- }
- },
- "name": "org.lwjgl:lwjgl-jemalloc:3.2.2"
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "ee8e57a79300f78294576d87c4a587f8c99402e2",
- "size": 34848,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2.jar"
- },
- "classifiers": {
- "natives-linux": {
- "sha1": "268c08a150347e04e44ba56e359d62c9b78669df",
- "size": 156173,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2-natives-linux.jar"
- },
- "natives-macos": {
- "sha1": "805f5a10465375ba034b27b72331912fd2846690",
- "size": 117127,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2-natives-macos.jar"
- },
- "natives-windows": {
- "sha1": "338b25b99da3ba5f441f6492f2ce2a9c608860ed",
- "size": 220623,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-jemalloc/3.2.2/lwjgl-jemalloc-3.2.2-natives-windows.jar"
- }
- }
- },
- "name": "org.lwjgl:lwjgl-jemalloc:3.2.2",
- "natives": {
- "linux": "natives-linux",
- "osx": "natives-macos",
- "windows": "natives-windows"
- }
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "2b772a102b0a11ee5f2109a5b136f4dc7c630827",
- "size": 80012,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2.jar"
- }
- },
- "name": "org.lwjgl:lwjgl-openal:3.2.2"
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "2b772a102b0a11ee5f2109a5b136f4dc7c630827",
- "size": 80012,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2.jar"
- },
- "classifiers": {
- "natives-linux": {
- "sha1": "0364f9f5c3947393083ab5f37a571f5603aadd0b",
- "size": 590997,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-natives-linux.jar"
- },
- "natives-macos": {
- "sha1": "a97b6345d5a9ddf889e262bd7ad8eed43b1bb063",
- "size": 528006,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-natives-macos.jar"
- },
- "natives-windows": {
- "sha1": "ec20a7d42a2438528fca87e60b1705f1e2339ddb",
- "size": 1310102,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-openal/3.2.2/lwjgl-openal-3.2.2-natives-windows.jar"
- }
- }
- },
- "name": "org.lwjgl:lwjgl-openal:3.2.2",
- "natives": {
- "linux": "natives-linux",
- "osx": "natives-macos",
- "windows": "natives-windows"
- }
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "6ac5bb88b44c43ea195a570aab059f63da004cd8",
- "size": 929780,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2.jar"
- }
- },
- "name": "org.lwjgl:lwjgl-opengl:3.2.2"
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "6ac5bb88b44c43ea195a570aab059f63da004cd8",
- "size": 929780,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2.jar"
- },
- "classifiers": {
- "natives-linux": {
- "sha1": "338d33387919cb3f4cdba143c2b738a71ccfda60",
- "size": 77392,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-natives-linux.jar"
- },
- "natives-macos": {
- "sha1": "cf4f43e69ee70d8ebfbb6ba93dec9016339e4fdc",
- "size": 38989,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-natives-macos.jar"
- },
- "natives-windows": {
- "sha1": "d8dcdc91066cae2d2d8279cb4a9f9f05d9525826",
- "size": 170798,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-opengl/3.2.2/lwjgl-opengl-3.2.2-natives-windows.jar"
- }
- }
- },
- "name": "org.lwjgl:lwjgl-opengl:3.2.2",
- "natives": {
- "linux": "natives-linux",
- "osx": "natives-macos",
- "windows": "natives-windows"
- }
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "3b8e6ebc5851dd3d17e37e5cadce2eff2a429f0f",
- "size": 104469,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2.jar"
- }
- },
- "name": "org.lwjgl:lwjgl-stb:3.2.2"
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "3b8e6ebc5851dd3d17e37e5cadce2eff2a429f0f",
- "size": 104469,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2.jar"
- },
- "classifiers": {
- "natives-linux": {
- "sha1": "172c52e586fecf43f759bc4f70a778c01f6fdcc1",
- "size": 203476,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-natives-linux.jar"
- },
- "natives-macos": {
- "sha1": "ee059b129b09fdecbd8595273926ae930bf5a5d7",
- "size": 196796,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-natives-macos.jar"
- },
- "natives-windows": {
- "sha1": "811f705cbb29e8ae8d60bdf8fdd38c0c123ad3ef",
- "size": 465810,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-stb/3.2.2/lwjgl-stb-3.2.2-natives-windows.jar"
- }
- }
- },
- "name": "org.lwjgl:lwjgl-stb:3.2.2",
- "natives": {
- "linux": "natives-linux",
- "osx": "natives-macos",
- "windows": "natives-windows"
- }
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "fcbe606c8f8da6f8f9a05e2c540eb1ee8632b0e9",
- "size": 7092,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2.jar"
- }
- },
- "name": "org.lwjgl:lwjgl-tinyfd:3.2.2"
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "fcbe606c8f8da6f8f9a05e2c540eb1ee8632b0e9",
- "size": 7092,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2.jar"
- },
- "classifiers": {
- "javadoc": {
- "sha1": "ba657a222ee267b75fa81ae5ab29ae29b50f725f",
- "size": 368913,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-javadoc.jar"
- },
- "natives-linux": {
- "sha1": "39e35b161c130635d9c8918ce04e887a30c5b687",
- "size": 38804,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-natives-linux.jar"
- },
- "natives-macos": {
- "sha1": "46d0798228b8a28e857a2a0f02310fd6ba2a4eab",
- "size": 42136,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-natives-macos.jar"
- },
- "natives-windows": {
- "sha1": "e9115958773644e863332a6a06488d26f9e1fc9f",
- "size": 208314,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-natives-windows.jar"
- },
- "sources": {
- "sha1": "2fe76dcf2ca02ae0e64ac7c69eb251c09df0e922",
- "size": 5034,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl-tinyfd/3.2.2/lwjgl-tinyfd-3.2.2-sources.jar"
- }
- }
- },
- "name": "org.lwjgl:lwjgl-tinyfd:3.2.2",
- "natives": {
- "linux": "natives-linux",
- "osx": "natives-macos",
- "windows": "natives-windows"
- }
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "8ad6294407e15780b43e84929c40e4c5e997972e",
- "size": 321900,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2.jar"
- }
- },
- "name": "org.lwjgl:lwjgl:3.2.2"
- },
- {
- "downloads": {
- "artifact": {
- "sha1": "8ad6294407e15780b43e84929c40e4c5e997972e",
- "size": 321900,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2.jar"
- },
- "classifiers": {
- "natives-linux": {
- "sha1": "ae7976827ca2a3741f6b9a843a89bacd637af350",
- "size": 124776,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-natives-linux.jar"
- },
- "natives-macos": {
- "sha1": "bbfb75693bdb714c0c69c2c9f9be73d259b43b62",
- "size": 48462,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-natives-macos.jar"
- },
- "natives-windows": {
- "sha1": "05359f3aa50d36352815fc662ea73e1c00d22170",
- "size": 279593,
- "url": "https://libraries.minecraft.net/org/lwjgl/lwjgl/3.2.2/lwjgl-3.2.2-natives-windows.jar"
- }
- }
- },
- "name": "org.lwjgl:lwjgl:3.2.2",
- "natives": {
- "linux": "natives-linux",
- "osx": "natives-macos",
- "windows": "natives-windows"
- }
- }
- ],
- "name": "LWJGL 3",
- "order": -1,
- "releaseTime": "2019-06-19T11:44:29+00:00",
- "type": "release",
- "uid": "org.lwjgl3",
- "version": "3.2.2",
- "volatile": true
-}