Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix and Update the Installer #121

Merged
merged 63 commits into from
Oct 27, 2024
Merged
Show file tree
Hide file tree
Changes from 60 commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
2e62178
make logo
Ecdcaeb Apr 20, 2024
06be979
cleanroom_logo
Ecdcaeb Apr 20, 2024
7c9db92
[test] delete icon for json
Ecdcaeb Apr 20, 2024
c3360da
make into
Ecdcaeb Apr 20, 2024
5d1e738
make big_logo.png
Ecdcaeb Apr 20, 2024
71d2329
logo: '/big_logo.png',
Ecdcaeb Apr 20, 2024
125f9ac
t1
Ecdcaeb Apr 20, 2024
3c54290
t2
Ecdcaeb Apr 21, 2024
f8daf42
t3
Ecdcaeb Apr 21, 2024
eeb9afb
t4
Ecdcaeb Apr 21, 2024
7ed40be
new logo and test
Ecdcaeb Apr 21, 2024
6ba26a0
delete logo
Ecdcaeb Apr 21, 2024
13e0f7b
quote it
Ecdcaeb Apr 21, 2024
f02d2d4
t5
Ecdcaeb Apr 21, 2024
c1d941b
t6
Ecdcaeb Apr 21, 2024
fae70cb
remove forge logo
Ecdcaeb Apr 21, 2024
2584b2d
t7
Ecdcaeb Apr 21, 2024
00da732
t8
Ecdcaeb Apr 21, 2024
ec8b8e5
t9
Ecdcaeb Apr 21, 2024
67f4e19
t10
Ecdcaeb Apr 21, 2024
94603c4
t11
Ecdcaeb Apr 21, 2024
a22b989
t12
Ecdcaeb Apr 21, 2024
5228b3a
t13
Ecdcaeb Apr 21, 2024
baacf0b
t14
Ecdcaeb Apr 21, 2024
3cdbc2f
t13
Ecdcaeb Apr 21, 2024
f7320e8
t14
Ecdcaeb Apr 21, 2024
655847b
t15
Ecdcaeb Apr 21, 2024
0bbe1ae
t16
Ecdcaeb Apr 21, 2024
886fd07
t19
Ecdcaeb Apr 21, 2024
10c5943
t20
Ecdcaeb Apr 21, 2024
a7ca411
t21
Ecdcaeb Apr 21, 2024
19bb24d
t22
Ecdcaeb Apr 21, 2024
0c4f666
final build
Ecdcaeb Apr 21, 2024
d01b3f1
Merge pull request #1 from Ecdcaeb/icon
Ecdcaeb Apr 21, 2024
4a8999b
Merge pull request #4 from Ecdcaeb/main
Ecdcaeb May 14, 2024
6cbaa86
rename
Ecdcaeb May 14, 2024
4f3b939
x64
Ecdcaeb May 15, 2024
4eb67bb
switch to net.neoforged.installertools
Ecdcaeb Oct 19, 2024
f5bad2d
add neoforge maven
Ecdcaeb Oct 19, 2024
d1950f8
Merge pull request #9 from Ecdcaeb/main
Ecdcaeb Oct 19, 2024
5ed7bff
update net.neoforged:legacyinstaller
Ecdcaeb Oct 19, 2024
9ec1431
net.neoforged:legacyinstaller:3.0.31
Ecdcaeb Oct 19, 2024
0cdca34
neoforge
Ecdcaeb Oct 19, 2024
2219f19
add https://maven.neoforged.net/releases to buildSrc classpath
Ecdcaeb Oct 20, 2024
d8f9d3a
add `/` to fix
Ecdcaeb Oct 20, 2024
b8a522c
update
Ecdcaeb Oct 20, 2024
849d407
add to cleanroom
Ecdcaeb Oct 20, 2024
b703ef8
download installerTools
Ecdcaeb Oct 20, 2024
38f214b
try 2
Ecdcaeb Oct 20, 2024
42ae7b4
fatjar
Ecdcaeb Oct 20, 2024
e990471
shrunk
Ecdcaeb Oct 20, 2024
299139d
Merge pull request #10 from Ecdcaeb/neoinstaller
Ecdcaeb Oct 20, 2024
1b38c53
cleanroom installer but fox icon
Ecdcaeb Oct 20, 2024
b206de6
make icons replace
Ecdcaeb Oct 21, 2024
43f6ced
fix build fail
Ecdcaeb Oct 23, 2024
5adf338
update
Ecdcaeb Oct 23, 2024
3001af2
delete old icons
Ecdcaeb Oct 24, 2024
49845ee
fix “
Ecdcaeb Oct 24, 2024
e699a48
Merge pull request #11 from Ecdcaeb/121fix
Ecdcaeb Oct 24, 2024
99c7a8c
update
Ecdcaeb Oct 24, 2024
8b4bf62
fix legacyinstaller's first url check
Ecdcaeb Oct 26, 2024
057093c
remove forget icons
Ecdcaeb Oct 27, 2024
14a4240
add temp warn
Ecdcaeb Oct 27, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 65 additions & 0 deletions FORGE-CREDITS.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
Minecraft Forge: Credits/Thank You

Forge is a set of tools and modifications to the Minecraft base game code to assist
mod developers in creating new and exciting content. It has been in development for
several years now, but I would like to take this time thank a few people who have
helped it along it's way.

First, the people who originally created the Forge projects way back in Minecraft
alpha. Eloraam of RedPower, and SpaceToad of Buildcraft, without their acceptiance
of me taking over the project, who knows what Minecraft modding would be today.

Secondly, someone who has worked with me, and developed some of the core features
that allow modding to he as functional, and as simple as it is, cpw. For developing
FML, which stabelized the client and server modding ecosystem. As well as the base
loading system that allows us to modify Minecraft's code as elegently as possible.

Mezz, who has stepped up as the issue and pull request manager. Helping to keep me
sane as well as guiding the community into creating better additions to Forge.

Searge, Bspks, Fesh0r, ProfMobious, and all the rest over on the MCP team {of which
I am a part}. For creating some of the core tools needed to make Minecraft modding
both possible, and as stable as can be.
On that note, here is some specific information of the MCP data we use:
* Minecraft Coder Pack (MCP) *
Forge Mod Loader and Minecraft Forge have permission to distribute and automatically
download components of MCP and distribute MCP data files. This permission is not
transitive and others wishing to redistribute the Minecraft Forge source independently
should seek permission of MCP or remove the MCP data files and request their users
to download MCP separately.

And lastly, the countless community members who have spent time submitting bug reports,
pull requests, and just helping out the community in general. Thank you.

--LexManos

=========================================================================

This is Forge Mod Loader.

You can find the source code at all times at https://github.com/MinecraftForge/MinecraftForge/tree/1.12.x/src/main/java/net/minecraftforge/fml

This minecraft mod is a clean open source implementation of a mod loader for minecraft servers
and minecraft clients.

The code is authored by cpw.

It began by partially implementing an API defined by the client side ModLoader, authored by Risugami.
http://www.minecraftforum.net/topic/75440-
This support has been dropped as of Minecraft release 1.7, as Risugami no longer maintains ModLoader.

It also contains suggestions and hints and generous helpings of code from LexManos, author of MinecraftForge.
http://www.minecraftforge.net/

Additionally, it contains an implementation of topological sort based on that
published at http://keithschwarz.com/interesting/code/?dir=topological-sort

It also contains code from the Maven project for performing versioned dependency
resolution. http://maven.apache.org/

It also contains a partial repackaging of the javaxdelta library from http://sourceforge.net/projects/javaxdelta/
with credit to it's authors.

Forge Mod Loader downloads components from the Minecraft Coder Pack
(http://mcp.ocean-labs.de/index.php/Main_Page) with kind permission from the MCP team.

10 changes: 10 additions & 0 deletions LICENSE-Paulscode IBXM Library.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
IBXM is copyright (c) 2007, Martin Cameron, and is licensed under the BSD License.
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of mumart nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

40 changes: 40 additions & 0 deletions LICENSE-Paulscode SoundSystem CodecIBXM.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
SoundSystem CodecIBXM Class License:

You are free to use this class for any purpose, commercial or otherwise.
You may modify this class or source code, and distribute it any way you
like, provided the following conditions are met:

1) You may not falsely claim to be the author of this class or any
unmodified portion of it.
2) You may not copyright this class or a modified version of it and then
sue me for copyright infringement.
3) If you modify the source code, you must clearly document the changes
made before redistributing the modified source code, so other users know
it is not the original code.
4) You are not required to give me credit for this class in any derived
work, but if you do, you must also mention my website:
http://www.paulscode.com
5) I the author will not be responsible for any damages (physical,
financial, or otherwise) caused by the use if this class or any
portion of it.
6) I the author do not guarantee, warrant, or make any representations,
either expressed or implied, regarding the use of this class or any
portion of it.

Author: Paul Lamb
http://www.paulscode.com


This software is based on or using the IBXM library available from
http://www.geocities.com/sunet2000/


IBXM is copyright (c) 2007, Martin Cameron, and is licensed under the BSD License.
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of mumart nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
51 changes: 41 additions & 10 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ buildscript {
name "Outlands"
url "https://maven.outlands.top/releases/"
}
maven {
name "NeoForge"
url = 'https://maven.neoforged.net/releases/'
}
}
dependencies {
classpath "net.minecraftforge.gradle:ForgeGradle:6.0.+"
Expand Down Expand Up @@ -94,6 +98,10 @@ project(':mcp') {
name 'MinecraftForge'
url 'https://maven.minecraftforge.net/'
}
maven {
name "NeoForge"
url = 'https://maven.neoforged.net/releases/'
}

}
mcp {
Expand All @@ -119,6 +127,10 @@ project(':minecraft') {
name 'MinecraftForge'
url 'https://maven.minecraftforge.net/'
}
maven {
name "NeoForge"
url = 'https://maven.neoforged.net/releases/'
}

}
dependencies {
Expand Down Expand Up @@ -235,6 +247,10 @@ project(':cleanroom') {
maven {
url "https://maven.outlands.top/releases/"
}
maven {
name "NeoForge"
url = 'https://maven.neoforged.net/releases/'
}
}

ext {
Expand Down Expand Up @@ -637,8 +653,8 @@ project(':cleanroom') {

// TODO: Include?
def extra_files = [
rootProject.file('CREDITS.txt'),
rootProject.file('LICENSE.txt'),
rootProject.file('FORGE-CREDITS.txt'),
rootProject.file('LICENSE'),
rootProject.file('LICENSE-Paulscode IBXM Library.txt'),
rootProject.file('LICENSE-Paulscode SoundSystem CodecIBXM.txt')
]
Expand Down Expand Up @@ -893,7 +909,7 @@ project(':cleanroom') {
task installerJson(dependsOn: [launcherJson, genClientBinPatches/*, createClientSRG, createServerSRG*/]) {
ext {
output = file('build/install_profile.json')
installer_tools = "net.minecraftforge:installertools:$props.installer_tools_version"
installer_tools = "net.neoforged.installertools:installertools:$props.installer_tools_version"
}
inputs.file universalJar.archivePath
inputs.file genClientBinPatches.toolJar
Expand All @@ -917,9 +933,9 @@ project(':cleanroom') {
def json = [
_comment_: launcherJson.comment,
spec: 0,
profile: project.name,
profile: project.name.capitalize(),
version: launcherJson.id,
icon: 'data:image/png;base64,' + new String(Base64.getEncoder().encode(Files.readAllBytes(rootProject.file('icon.ico').toPath()))),
icon: 'null',
json: '/version.json',
path: "${project.group}:${project.name}:${project.version}",
logo: '/big_logo.png',
Expand Down Expand Up @@ -1003,7 +1019,7 @@ project(':cleanroom') {
}

task downloadInstaller(type: DownloadMavenArtifact) {
artifact = 'net.minecraftforge:installer:2.2.+:fatjar'
artifact = 'net.neoforged:legacyinstaller:3.0.+:shrunk'
changing = true
}

Expand All @@ -1012,10 +1028,7 @@ project(':cleanroom') {
archiveExtension = 'jar' //Needs to be Zip task to not override Manifest, so set extension
destinationDirectory = file('build/libs')
from(extra_files)
from(rootProject.file('/src/main/resources/forge_logo.png')) {
rename { 'big_logo.png' }
}
from(rootProject.file('/src/main/resources/url.png'))
from(rootProject.file('src/main/resources/url.png'))
from(universalJar) {
into("/maven/${project.group.replace('.', '/')}/${project.name}/${project.version}/")
rename { "${project.name }-${project.version }.jar" }
Expand All @@ -1024,6 +1037,24 @@ project(':cleanroom') {
from(launcherJson.output)
from(zipTree(downloadInstaller.output)) {
duplicatesStrategy = 'exclude'
exclude(
[
"icons/**",
"big_logo.png"
])
}
from(rootProject.file('logos/cleanroom-logo_64.png')) {
rename { "big_logo.png" }
}
// TODO : get from https://raw.githubusercontent.com/CleanroomMC/Resources/refs/heads/master/Art/cleanroom-logo.png and make the sizes automatic.
from(rootProject.file('logos/cleanroom-logo_16.png')) {
rename { "icons/neoforged_background_16x16.png" }
}
from(rootProject.file('logos/cleanroom-logo_32.png')) {
rename { "icons/neoforged_background_32x32.png" }
}
from(rootProject.file('logos/cleanroom-logo_128.png')) {
rename { "icons/neoforged_background_128x128.png" }
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,8 @@ class Util {
"https://maven.minecraftforge.net/",
"https://repo.maven.apache.org/maven2/",
"https://libraries.minecraft.net/",
"https://maven.outlands.top/releases/"
"https://maven.outlands.top/releases/",
"https://maven.neoforged.net/releases/"
]
try {
return urlList.stream().map(original -> original + path)
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ mcp_version = 20240102.171137
special_source = net.md-5:SpecialSource:1.9.0
special_source_mcp = net.md-5:SpecialSource:1.8.5
binary_patcher = net.minecraftforge:binarypatcher:1.1.1:fatjar
installer_tools_version = 1.4.1
installer_tools_version = 2.1.7

# Libraries
asm_version = 9.6
Expand Down
Binary file added icon copy.png
Ecdcaeb marked this conversation as resolved.
Show resolved Hide resolved
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed icon.ico
Binary file not shown.
Binary file added icon.png
Ecdcaeb marked this conversation as resolved.
Show resolved Hide resolved
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added logos/cleanroom-logo_128.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added logos/cleanroom-logo_16.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added logos/cleanroom-logo_32.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added logos/cleanroom-logo_64.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.