182 lines
		
	
	
		
			8.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			182 lines
		
	
	
		
			8.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# Third-party libraries
 | 
						|
 | 
						|
This folder has third-party or otherwise external libraries needed for other parts to work.
 | 
						|
 | 
						|
## classparser
 | 
						|
A simplistic parser for Java class files.
 | 
						|
 | 
						|
This library has served as a base for some (much more full-featured and advanced) work under NDA for AVG. It, however, should NOT be confused with that work.
 | 
						|
 | 
						|
Copyright belongs to Petr Mrázek, unless explicitly stated otherwise in the source files. Available under the Apache 2.0 license.
 | 
						|
 | 
						|
## hoedown
 | 
						|
Hoedown is a revived fork of Sundown, the Markdown parser based on the original code of the Upskirt library by Natacha Porté.
 | 
						|
 | 
						|
See [github repo](https://github.com/hoedown/hoedown).
 | 
						|
 | 
						|
## iconfix
 | 
						|
This was originally part of the razor-qt project and the Qt toolkit, respecitvely. Its sole purpose is to reimplement Qt's icon loading logic to prevent it from using any platform plugins that could break icon loading.
 | 
						|
 | 
						|
Licensed under LGPL 2.1
 | 
						|
 | 
						|
## javacheck
 | 
						|
Simple Java tool that prints the JVM details - version and platform bitness.
 | 
						|
 | 
						|
Do what you want with it. It is so trivial that noone cares.
 | 
						|
 | 
						|
## Katabasis
 | 
						|
Oauth2 library customized for Microsoft authentication.
 | 
						|
 | 
						|
This is a fork of the [O2 library](https://github.com/pipacs/o2).
 | 
						|
 | 
						|
MIT licensed.
 | 
						|
 | 
						|
## launcher
 | 
						|
Java launcher part for Minecraft.
 | 
						|
 | 
						|
It:
 | 
						|
* Starts a process
 | 
						|
* Waits for a launch script on stdin
 | 
						|
* Consumes the launch script you feed it
 | 
						|
* Proceeds with launch when it gets the `launcher` command
 | 
						|
 | 
						|
This means the process is essentially idle until the final command is sent. You can, for example, attach a profiler before you send it.
 | 
						|
 | 
						|
A `legacy` and `onesix` launchers are available.
 | 
						|
 | 
						|
* `legacy` is intended for use with Minecraft versions < 1.6 and is deprecated.
 | 
						|
* `onesix` can handle launching any Minecraft version, at the cost of some extra features `legacy` enables (custom window icon and title).
 | 
						|
 | 
						|
Example (some parts have been censored):
 | 
						|
```
 | 
						|
mod legacyjavafixer-1.0
 | 
						|
mainClass net.minecraft.launchwrapper.Launch
 | 
						|
param --username
 | 
						|
param CENSORED
 | 
						|
param --version
 | 
						|
param MultiMC5
 | 
						|
param --gameDir
 | 
						|
param /home/peterix/minecraft/FTB/17ForgeTest/minecraft
 | 
						|
param --assetsDir
 | 
						|
param /home/peterix/minecraft/mmc5/assets
 | 
						|
param --assetIndex
 | 
						|
param 1.7.10
 | 
						|
param --uuid
 | 
						|
param CENSORED
 | 
						|
param --accessToken
 | 
						|
param CENSORED
 | 
						|
param --userProperties
 | 
						|
param {}
 | 
						|
param --userType
 | 
						|
param mojang
 | 
						|
param --tweakClass
 | 
						|
param cpw.mods.fml.common.launcher.FMLTweaker
 | 
						|
windowTitle MultiMC: 172ForgeTest
 | 
						|
windowParams 854x480
 | 
						|
userName CENSORED
 | 
						|
sessionId token:CENSORED:CENSORED
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/mojang/realms/1.3.5/realms-1.3.5.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/apache/commons/commons-compress/1.8.1/commons-compress-1.8.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/apache/httpcomponents/httpclient/4.3.3/httpclient-4.3.3.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/apache/httpcomponents/httpcore/4.3.2/httpcore-4.3.2.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/java3d/vecmath/1.3.1/vecmath-1.3.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/net/sf/trove4j/trove4j/3.0.3/trove4j-3.0.3.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/ibm/icu/icu4j-core-mojang/51.2/icu4j-core-mojang-51.2.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/net/sf/jopt-simple/jopt-simple/4.5/jopt-simple-4.5.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/paulscode/codecjorbis/20101023/codecjorbis-20101023.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/paulscode/codecwav/20101023/codecwav-20101023.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/paulscode/libraryjavasound/20101123/libraryjavasound-20101123.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/paulscode/librarylwjglopenal/20100824/librarylwjglopenal-20100824.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/paulscode/soundsystem/20120107/soundsystem-20120107.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/io/netty/netty-all/4.0.10.Final/netty-all-4.0.10.Final.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/google/guava/guava/16.0/guava-16.0.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/apache/commons/commons-lang3/3.2.1/commons-lang3-3.2.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/commons-io/commons-io/2.4/commons-io-2.4.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/commons-codec/commons-codec/1.9/commons-codec-1.9.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/net/java/jinput/jinput/2.0.5/jinput-2.0.5.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/net/java/jutils/jutils/1.0.0/jutils-1.0.0.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/mojang/authlib/1.5.16/authlib-1.5.16.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/apache/logging/log4j/log4j-api/2.0-beta9/log4j-api-2.0-beta9.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/apache/logging/log4j/log4j-core/2.0-beta9/log4j-core-2.0-beta9.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/lwjgl/lwjgl/lwjgl/2.9.1/lwjgl-2.9.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/lwjgl/lwjgl/lwjgl_util/2.9.1/lwjgl_util-2.9.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/tv/twitch/twitch/5.16/twitch-5.16.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/net/minecraftforge/forge/1.7.10-10.13.0.1178/forge-1.7.10-10.13.0.1178.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/net/minecraft/launchwrapper/1.9/launchwrapper-1.9.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/ow2/asm/asm-all/4.1/asm-all-4.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/typesafe/akka/akka-actor_2.11/2.3.3/akka-actor_2.11-2.3.3.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/com/typesafe/config/1.2.1/config-1.2.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/scala-lang/scala-actors-migration_2.11/1.1.0/scala-actors-migration_2.11-1.1.0.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/scala-lang/scala-compiler/2.11.1/scala-compiler-2.11.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/scala-lang/plugins/scala-continuations-library_2.11/1.0.2/scala-continuations-library_2.11-1.0.2.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/scala-lang/plugins/scala-continuations-plugin_2.11.1/1.0.2/scala-continuations-plugin_2.11.1-1.0.2.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/scala-lang/scala-library/2.11.1/scala-library-2.11.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/scala-lang/scala-parser-combinators_2.11/1.0.1/scala-parser-combinators_2.11-1.0.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/scala-lang/scala-reflect/2.11.1/scala-reflect-2.11.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/scala-lang/scala-swing_2.11/1.0.1/scala-swing_2.11-1.0.1.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/org/scala-lang/scala-xml_2.11/1.0.2/scala-xml_2.11-1.0.2.jar
 | 
						|
cp /home/peterix/minecraft/FTB/libraries/lzma/lzma/0.0.1/lzma-0.0.1.jar
 | 
						|
ext /home/peterix/minecraft/FTB/libraries/org/lwjgl/lwjgl/lwjgl-platform/2.9.1/lwjgl-platform-2.9.1-natives-linux.jar
 | 
						|
ext /home/peterix/minecraft/FTB/libraries/net/java/jinput/jinput-platform/2.0.5/jinput-platform-2.0.5-natives-linux.jar
 | 
						|
natives /home/peterix/minecraft/FTB/17ForgeTest/natives
 | 
						|
cp /home/peterix/minecraft/FTB/versions/1.7.10/1.7.10.jar
 | 
						|
launcher onesix
 | 
						|
```
 | 
						|
 | 
						|
Available under the Apache 2.0 license.
 | 
						|
 | 
						|
## libnbtplusplus
 | 
						|
libnbt++ is a free C++ library for Minecraft's file format Named Binary Tag (NBT). It can read and write compressed and uncompressed NBT files and provides a code interface for working with NBT data.
 | 
						|
 | 
						|
See [github repo](https://github.com/ljfa-ag/libnbtplusplus).
 | 
						|
 | 
						|
Available either under LGPL version 3 or later.
 | 
						|
 | 
						|
## LocalPeer
 | 
						|
Library for making only one instance of the application run at all times.
 | 
						|
 | 
						|
BSD licensed, derived from [QtSingleApplication](https://github.com/qtproject/qt-solutions/tree/master/qtsingleapplication).
 | 
						|
 | 
						|
Changes are made to make the code more generic and useful in less usual conditions.
 | 
						|
 | 
						|
## optional-bare
 | 
						|
 | 
						|
A simple single-file header-only version of a C++17-like optional for default-constructible, copyable types, for C++98 and later.
 | 
						|
 | 
						|
Imported from: https://github.com/martinmoene/optional-bare/commit/0bb1d183bcee1e854c4ea196b533252c51f98b81
 | 
						|
 | 
						|
Boost Software License - Version 1.0
 | 
						|
 | 
						|
## quazip
 | 
						|
 | 
						|
A zip manipulation library, forked for MultiMC's use.
 | 
						|
 | 
						|
LGPL 2.1
 | 
						|
 | 
						|
## rainbow
 | 
						|
Color functions extracted from [KGuiAddons](https://inqlude.org/libraries/kguiaddons.html). Used for adaptive text coloring.
 | 
						|
 | 
						|
Available either under LGPL version 2.1 or later.
 | 
						|
 | 
						|
## systeminfo
 | 
						|
 | 
						|
A MultiMC-specific library for probing system information.
 | 
						|
 | 
						|
Apache 2.0
 | 
						|
 | 
						|
## tomlc99
 | 
						|
 | 
						|
A TOML language parser. Used by Forge 1.14+ to store mod metadata.
 | 
						|
 | 
						|
See [github repo](https://github.com/cktan/tomlc99).
 | 
						|
 | 
						|
Licenced under the MIT licence.
 | 
						|
 | 
						|
## xz-embedded
 | 
						|
 | 
						|
Tiny implementation of LZMA2 de/compression. This format is only used by Forge to save bandwidth.
 | 
						|
 | 
						|
Public domain.
 |