Compare commits

...

19 Commits

Author SHA1 Message Date
ad8a0caf14 build to release
Some checks failed
Build / release (macos-latest) (release) Failing after 2m13s
Build / release (ubuntu-latest) (release) Failing after 54s
Build / release (windows-latest) (release) Failing after 53s
2024-09-14 23:03:41 +02:00
4d722eb24d token var 2024-09-14 23:03:09 +02:00
3206703ca1 token
Some checks failed
Build / release (macos-latest) (push) Failing after 53s
Build / release (ubuntu-latest) (push) Failing after 54s
Build / release (windows-latest) (push) Failing after 51s
2024-09-14 17:33:48 +02:00
361736f6aa build
Some checks failed
Build / release (macos-latest) (push) Failing after 51s
Build / release (ubuntu-latest) (push) Failing after 52s
Build / release (windows-latest) (push) Failing after 52s
2024-09-14 16:05:39 +02:00
ab489ddf59 build node
Some checks failed
Build / release (macos-latest) (push) Failing after 3m0s
Build / release (ubuntu-latest) (push) Failing after 1m19s
Build / release (windows-latest) (push) Failing after 1m19s
2024-09-14 15:50:28 +02:00
6b372545a1 build node
Some checks failed
Build / release (macos-latest) (push) Failing after 17s
Build / release (ubuntu-latest) (push) Failing after 10s
Build / release (windows-latest) (push) Failing after 12s
2024-09-14 15:42:30 +02:00
7d8db88f80 build
Some checks failed
Build / release (macos-latest) (push) Failing after 15s
Build / release (ubuntu-latest) (push) Failing after 8s
Build / release (windows-latest) (push) Failing after 8s
2024-09-14 15:17:46 +02:00
4ed91286b7 build
Some checks failed
Build / release (macos-latest) (push) Failing after 1m33s
Build / release (ubuntu-latest) (push) Failing after 13s
Build / release (windows-latest) (push) Failing after 12s
2024-09-14 15:15:48 +02:00
acd965c406 Action
Some checks failed
Build / release (macos-latest) (push) Waiting to run
Build / release (windows-latest) (push) Waiting to run
Build / release (ubuntu-latest) (push) Failing after 1m20s
2024-09-14 14:50:55 +02:00
627fbd48d7 v1 2024-09-14 14:36:35 +02:00
Daniel Scalzi
eb683f89ec Support 1.20.5, electron 30, dependency upgrade. 2024-04-28 17:35:19 -04:00
Daniel Scalzi
ae0e9e227d 2.2.1
CVE-2024-27303
2024-03-06 21:57:24 -05:00
Daniel Scalzi
dc15bbfde8 2.2.0 2024-02-22 11:50:18 -05:00
Daniel Scalzi
0d23f5c45b Upgrade to Electron 29, Node.js 20. 2024-02-22 11:42:13 -05:00
Kamesuta
fc4823a01f Localize Microsoft/Mojang authentication error messages (#331)
* Move Microsoft/Mojang error message to lang file.

* Add mstfLogin to language file
2024-02-22 11:23:23 -05:00
Daniel Scalzi
95eebc18a7 2.1.1 2024-01-04 19:09:30 -05:00
Daniel Scalzi
d03ff90f78 Remove mojang authserver as it has been permanently shut down. 2024-01-04 19:09:03 -05:00
Daniel Scalzi
258cd0d421 2.1.0 2023-12-03 18:06:25 -05:00
Daniel Scalzi
f65eb2f2d6 Dependency upgrade. 2023-12-03 18:05:47 -05:00
26 changed files with 6228 additions and 5673 deletions

View File

@@ -1,10 +1,10 @@
name: Build
on: push
on: [release]
jobs:
release:
runs-on: ${{ matrix.os }}
runs-on: act-latest
permissions:
contents: write
@@ -20,7 +20,7 @@ jobs:
- name: Set up Node
uses: actions/setup-node@v3
with:
node-version: 18
node-version: 20
- name: Set up Python
uses: actions/setup-python@v4
@@ -33,6 +33,6 @@ jobs:
- name: Build
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_TOKEN: ${{ secrets.GITEA_TOKEN }}
run: npm run dist
shell: bash

3
.github/FUNDING.yml vendored
View File

@@ -1,3 +0,0 @@
github: dscalzi
patreon: dscalzi
custom: ['https://www.paypal.me/dscalzi']

2
.nvmrc
View File

@@ -1 +1 @@
18
20

View File

@@ -1,6 +1,6 @@
MIT License
Copyright (c) 2017-2022 Daniel D. Scalzi
Copyright (c) 2017-2024 Daniel D. Scalzi
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@@ -10,7 +10,7 @@
![Screenshot 1](https://i.imgur.com/6o7SmH6.png)
![Screenshot 2](https://i.imgur.com/x3B34n1.png)
## Features
* 🔒 Full account management.
@@ -84,7 +84,7 @@ This section details the setup of a basic developmentment environment.
**System Requirements**
* [Node.js][nodejs] v18
* [Node.js][nodejs] v20
---

BIN
app/assets/images/title.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -12,12 +12,122 @@
const ConfigManager = require('./configmanager')
const { LoggerUtil } = require('helios-core')
const { RestResponseStatus } = require('helios-core/common')
const { MojangRestAPI, mojangErrorDisplayable, MojangErrorCode } = require('helios-core/mojang')
const { MicrosoftAuth, microsoftErrorDisplayable, MicrosoftErrorCode } = require('helios-core/microsoft')
const { MojangRestAPI, MojangErrorCode } = require('helios-core/mojang')
const { MicrosoftAuth, MicrosoftErrorCode } = require('helios-core/microsoft')
const { AZURE_CLIENT_ID } = require('./ipcconstants')
const Lang = require('./langloader')
const log = LoggerUtil.getLogger('AuthManager')
// Error messages
function microsoftErrorDisplayable(errorCode) {
switch (errorCode) {
case MicrosoftErrorCode.NO_PROFILE:
return {
title: Lang.queryJS('auth.microsoft.error.noProfileTitle'),
desc: Lang.queryJS('auth.microsoft.error.noProfileDesc')
}
case MicrosoftErrorCode.NO_XBOX_ACCOUNT:
return {
title: Lang.queryJS('auth.microsoft.error.noXboxAccountTitle'),
desc: Lang.queryJS('auth.microsoft.error.noXboxAccountDesc')
}
case MicrosoftErrorCode.XBL_BANNED:
return {
title: Lang.queryJS('auth.microsoft.error.xblBannedTitle'),
desc: Lang.queryJS('auth.microsoft.error.xblBannedDesc')
}
case MicrosoftErrorCode.UNDER_18:
return {
title: Lang.queryJS('auth.microsoft.error.under18Title'),
desc: Lang.queryJS('auth.microsoft.error.under18Desc')
}
case MicrosoftErrorCode.UNKNOWN:
return {
title: Lang.queryJS('auth.microsoft.error.unknownTitle'),
desc: Lang.queryJS('auth.microsoft.error.unknownDesc')
}
}
}
function mojangErrorDisplayable(errorCode) {
switch(errorCode) {
case MojangErrorCode.ERROR_METHOD_NOT_ALLOWED:
return {
title: Lang.queryJS('auth.mojang.error.methodNotAllowedTitle'),
desc: Lang.queryJS('auth.mojang.error.methodNotAllowedDesc')
}
case MojangErrorCode.ERROR_NOT_FOUND:
return {
title: Lang.queryJS('auth.mojang.error.notFoundTitle'),
desc: Lang.queryJS('auth.mojang.error.notFoundDesc')
}
case MojangErrorCode.ERROR_USER_MIGRATED:
return {
title: Lang.queryJS('auth.mojang.error.accountMigratedTitle'),
desc: Lang.queryJS('auth.mojang.error.accountMigratedDesc')
}
case MojangErrorCode.ERROR_INVALID_CREDENTIALS:
return {
title: Lang.queryJS('auth.mojang.error.invalidCredentialsTitle'),
desc: Lang.queryJS('auth.mojang.error.invalidCredentialsDesc')
}
case MojangErrorCode.ERROR_RATELIMIT:
return {
title: Lang.queryJS('auth.mojang.error.tooManyAttemptsTitle'),
desc: Lang.queryJS('auth.mojang.error.tooManyAttemptsDesc')
}
case MojangErrorCode.ERROR_INVALID_TOKEN:
return {
title: Lang.queryJS('auth.mojang.error.invalidTokenTitle'),
desc: Lang.queryJS('auth.mojang.error.invalidTokenDesc')
}
case MojangErrorCode.ERROR_ACCESS_TOKEN_HAS_PROFILE:
return {
title: Lang.queryJS('auth.mojang.error.tokenHasProfileTitle'),
desc: Lang.queryJS('auth.mojang.error.tokenHasProfileDesc')
}
case MojangErrorCode.ERROR_CREDENTIALS_MISSING:
return {
title: Lang.queryJS('auth.mojang.error.credentialsMissingTitle'),
desc: Lang.queryJS('auth.mojang.error.credentialsMissingDesc')
}
case MojangErrorCode.ERROR_INVALID_SALT_VERSION:
return {
title: Lang.queryJS('auth.mojang.error.invalidSaltVersionTitle'),
desc: Lang.queryJS('auth.mojang.error.invalidSaltVersionDesc')
}
case MojangErrorCode.ERROR_UNSUPPORTED_MEDIA_TYPE:
return {
title: Lang.queryJS('auth.mojang.error.unsupportedMediaTypeTitle'),
desc: Lang.queryJS('auth.mojang.error.unsupportedMediaTypeDesc')
}
case MojangErrorCode.ERROR_GONE:
return {
title: Lang.queryJS('auth.mojang.error.accountGoneTitle'),
desc: Lang.queryJS('auth.mojang.error.accountGoneDesc')
}
case MojangErrorCode.ERROR_UNREACHABLE:
return {
title: Lang.queryJS('auth.mojang.error.unreachableTitle'),
desc: Lang.queryJS('auth.mojang.error.unreachableDesc')
}
case MojangErrorCode.ERROR_NOT_PAID:
return {
title: Lang.queryJS('auth.mojang.error.gameNotPurchasedTitle'),
desc: Lang.queryJS('auth.mojang.error.gameNotPurchasedDesc')
}
case MojangErrorCode.UNKNOWN:
return {
title: Lang.queryJS('auth.mojang.error.unknownErrorTitle'),
desc: Lang.queryJS('auth.mojang.error.unknownErrorDesc')
}
default:
throw new Error(`Unknown error code: ${errorCode}`)
}
}
// Functions
/**

View File

@@ -7,7 +7,7 @@ const logger = LoggerUtil.getLogger('ConfigManager')
const sysRoot = process.env.APPDATA || (process.platform == 'darwin' ? process.env.HOME + '/Library/Application Support' : process.env.HOME)
const dataPath = path.join(sysRoot, '.helioslauncher')
const dataPath = path.join(sysRoot, '.patatalauncher')
const launcherDir = require('@electron/remote').app.getPath('userData')

4
app/assets/js/custom.js Normal file
View File

@@ -0,0 +1,4 @@
exports.getCustomConfig = () => {
packwizUrl: "https://patatapack.oier.ovh/pack.toml"
packwizBootstrap: "packwiz-installer-bootstrap.jar"
}

View File

@@ -4,7 +4,7 @@ const ConfigManager = require('./configmanager')
// Old WesterosCraft url.
// exports.REMOTE_DISTRO_URL = 'http://mc.westeroscraft.com/WesterosCraftLauncher/distribution.json'
exports.REMOTE_DISTRO_URL = 'https://helios-files.geekcorner.eu.org/distribution.json'
exports.REMOTE_DISTRO_URL = 'https://distribution.oier.ovh/distribution.json'
const api = new DistributionAPI(
ConfigManager.getLauncherDirectory(),

View File

@@ -7,7 +7,7 @@ const { getMojangOS, isLibraryCompatible, mcVersionAtLeast } = require('helios-
const { Type } = require('helios-distribution-types')
const os = require('os')
const path = require('path')
const Custom = require('./custom')
const ConfigManager = require('./configmanager')
const logger = LoggerUtil.getLogger('ProcessBuilder')
@@ -70,10 +70,84 @@ class ProcessBuilder {
//args = args.concat(this.constructModArguments(modObj.fMods))
args = args.concat(this.constructModList(modObj.fMods))
}
/*const preLaunchArgs = [
"-jar",
Custom.getCustomConfig().packwizBootstrap,
Custom.getCustomConfig().packwizUrl
]*/
logger.info('Launch Arguments:', args)
const preLaunchArgsArray = [
// "-version"
"-jar",
//path.join(this.gameDir, "packwiz-installer-bootstrap.jar"),
"packwiz-installer-bootstrap.jar",
"https://patatapack.oier.ovh/pack/pack.toml"
]
const preLaunchArgs = [
"-jar " +
path.join(this.gameDir, "/packwiz-installer-bootstrap.jar") +
" https://patatapack.oier.ovh/pack.toml"
]
logger.info('PreLaunch Arguments:', preLaunchArgs)
logger.info('getJavaExecutable:', ConfigManager.getJavaExecutable(this.server.rawServer.id))
;
logger.info('Server RAW id:', this.server.rawServer.id)
logger.info('gamedir:', this.gameDir)
//const preLaunchChild = child_process.execSync(ConfigManager.getJavaExecutable(this.server.rawServer.id) +" " + preLaunchArgsArray.join(' '), preLaunchArgsArray, {
const preLaunchChild = child_process.spawnSync(ConfigManager.getJavaExecutable(this.server.rawServer.id), preLaunchArgsArray, {
cwd: this.gameDir,
// detached: ConfigManager.getLaunchDetached()
})
const authArgs = [
"-Dminecraft.api.env=custom",
"-Dminecraft.api.auth.host=https://auth.oier.ovh",
"-Dminecraft.api.account.host=https://auth.oier.ovh/user",
"-Dminecraft.api.session.host=https://auth.oier.ovh/api/yggdrasil",
"-Dminecraft.api.services.host=https://auth.oier.ovh/api/yggdrasil"
]
args = authArgs.concat(args)
//preLaunchChild.on('close', (preLaunchCode, preLaunchSignal) => {
//logger.info('PRELAUNCH Exited with code', preLaunchCode)
logger.info('Launch Arguments:', args)
const child = child_process.spawn(ConfigManager.getJavaExecutable(this.server.rawServer.id), args, {
cwd: this.gameDir,
detached: ConfigManager.getLaunchDetached()
})
if(ConfigManager.getLaunchDetached()){
child.unref()
}
child.stdout.setEncoding('utf8')
child.stderr.setEncoding('utf8')
child.stdout.on('data', (data) => {
data.trim().split('\n').forEach(x => console.log(`\x1b[32m[Minecraft]\x1b[0m ${x}`))
})
child.stderr.on('data', (data) => {
data.trim().split('\n').forEach(x => console.log(`\x1b[31m[Minecraft]\x1b[0m ${x}`))
})
child.on('close', (code, signal) => {
logger.info('Exited with code', code)
fs.remove(tempNativePath, (err) => {
if(err){
logger.warn('Error while deleting temp dir', err)
} else {
logger.info('Temp dir deleted successfully.')
}
})
})
//return child
return child
// });
const child = child_process.spawn(ConfigManager.getJavaExecutable(this.server.rawServer.id), args, {
/* const child = child_process.spawn(ConfigManager.getJavaExecutable(this.server.rawServer.id), args, {
cwd: this.gameDir,
detached: ConfigManager.getLaunchDetached()
})
@@ -103,7 +177,7 @@ class ProcessBuilder {
})
})
return child
return child */
}
/**

View File

@@ -18,15 +18,6 @@ function loginOptionsCancelEnabled(val){
}
}
loginOptionMicrosoft.onclick = (e) => {
switchView(getCurrentView(), VIEWS.waiting, 500, 500, () => {
ipcRenderer.send(
MSFT_OPCODE.OPEN_LOGIN,
loginOptionsViewOnLoginSuccess,
loginOptionsViewOnLoginCancel
)
})
}
loginOptionMojang.onclick = (e) => {
switchView(getCurrentView(), VIEWS.login, 500, 500, () => {

View File

@@ -1,20 +1,20 @@
# Custom Language File for Launcher Customizer
[ejs.app]
title = "Helios Launcher"
title = "PatataLauncher"
[ejs.landing]
mediaGitHubURL = "https://github.com/dscalzi/HeliosLauncher"
mediaGitHubURL = "#"
mediaTwitterURL = "#"
mediaInstagramURL = "#"
mediaYouTubeURL = "#"
mediaDiscordURL = "https://discord.gg/zNWUXdt"
mediaDiscordURL = "#"
[ejs.settings]
sourceGithubLink = "https://github.com/dscalZi/HeliosLauncher"
supportLink = "https://github.com/dscalZi/HeliosLauncher/issues"
[ejs.welcome]
welcomeHeader = "WELCOME TO WESTEROSCRAFT"
welcomeDescription = "Our mission is to recreate the universe imagined by author George RR Martin in his fantasy series, A Song of Ice and Fire. Through the collaborative effort of thousands of community members, we have sought to create Westeros as accurately and precisely as possible within Minecraft. The world we are creating is yours to explore. Journey from Dorne to Castle Black, and if you arent afraid, beyond the Wall itself, but best not delay. As the words of House Stark ominously warn: Winter is Coming."
welcomeDescCTA = "You are just a few clicks away from Westeros."
welcomeHeader = "Ongi etorri Patata!"
welcomeDescription = "Patata launcher."
welcomeDescCTA = "Go go go"

View File

@@ -279,6 +279,11 @@ latestVersionTitle = "You Are Running the Latest Version"
checkForUpdatesButton = "Check for Updates"
checkingForUpdatesButton = "Checking for Updates.."
[js.settings.msftLogin]
errorTitle = "Microsoft Login Failed"
errorMessage = "We were unable to authenticate your Microsoft account. Please try again."
okButton = "OK"
[js.uibinder.startup]
fatalErrorTitle = "Fatal Error: Unable to Load Distribution Index"
fatalErrorMessage = "A connection could not be established to our servers to download the distribution index. No local copies were available to load. <br><br>The distribution index is an essential file which provides the latest server information. The launcher is unable to start without it. Ensure you are connected to the internet and relaunch the application."
@@ -295,3 +300,45 @@ selectAnotherAccountButton = "Select Another Account"
checkingForUpdateButton = "Checking for Updates..."
installNowButton = "Install Now"
checkForUpdatesButton = "Check for Updates"
[js.auth.microsoft.error]
noProfileTitle = "Error During Login:<br>Profile Not Set Up"
noProfileDesc = "Your Microsoft account does not yet have a Minecraft profile set up. If you have recently purchased the game or redeemed it through Xbox Game Pass, you have to set up your profile on <a href=\"https://minecraft.net/\">Minecraft.net</a>.<br><br>If you have not yet purchased the game, you can also do that on <a href=\"https://minecraft.net/\">Minecraft.net</a>."
noXboxAccountTitle = "Error During Login:<br>No Xbox Account"
noXboxAccountDesc = "Your Microsoft account has no Xbox account associated with it."
xblBannedTitle = "Error During Login:<br>Xbox Live Unavailable"
xblBannedDesc = "Your Microsoft account is from a country where Xbox Live is not available or banned."
under18Title = "Error During Login:<br>Parental Approval Required"
under18Desc = "Accounts for users under the age of 18 must be added to a Family by an adult."
unknownTitle = "Unknown Error During Login"
unknownDesc = "An unknown error has occurred. Please see the console for details."
[js.auth.mojang.error]
methodNotAllowedTitle = "Internal Error:<br>Method Not Allowed"
methodNotAllowedDesc = "Method not allowed. Please report this error."
notFoundTitle = "Internal Error:<br>Not Found"
notFoundDesc = "The authentication endpoint was not found. Please report this issue."
accountMigratedTitle = "Error During Login:<br>Account Migrated"
accountMigratedDesc = "You've attempted to login with a migrated account. Try again using the account email as the username."
invalidCredentialsTitle = "Error During Login:<br>Invalid Credentials"
invalidCredentialsDesc = "The email or password you've entered is incorrect. Please try again."
tooManyAttemptsTitle = "Error During Login:<br>Too Many Attempts"
tooManyAttemptsDesc = "There have been too many login attempts with this account recently. Please try again later."
invalidTokenTitle = "Error During Login:<br>Invalid Token"
invalidTokenDesc = "The provided access token is invalid."
tokenHasProfileTitle = "Error During Login:<br>Token Has Profile"
tokenHasProfileDesc = "Access token already has a profile assigned. Selecting profiles is not implemented yet."
credentialsMissingTitle = "Error During Login:<br>Credentials Missing"
credentialsMissingDesc = "Username/password was not submitted or password is less than 3 characters."
invalidSaltVersionTitle = "Error During Login:<br>Invalid Salt Version"
invalidSaltVersionDesc = "Invalid salt version."
unsupportedMediaTypeTitle = "Internal Error:<br>Unsupported Media Type"
unsupportedMediaTypeDesc = "Unsupported media type. Please report this error."
accountGoneTitle = "Error During Login:<br>Account Migrated"
accountGoneDesc = "Account has been migrated to a Microsoft account. Please log in with Microsoft."
unreachableTitle = "Error During Login:<br>Unreachable"
unreachableDesc = "Unable to reach the authentication servers. Ensure that they are online and you are connected to the internet."
gameNotPurchasedTitle = "Error During Login:<br>Game Not Purchased"
gameNotPurchasedDesc = "The account you are trying to login with has not purchased a copy of Minecraft. You may purchase a copy on <a href=\"https://minecraft.net/\">Minecraft.net</a>"
unknownErrorTitle = "Unknown Error During Login"
unknownErrorDesc = "An unknown error has occurred. Please see the console for details."

View File

@@ -100,13 +100,13 @@
<span id="player_count"><%- lang('landing.serverStatusPlaceholder') %></span>
</div>
<div class="bot_divider"></div>
<div id="mojangStatusWrapper">
<!-- <div id="mojangStatusWrapper">
<span class="bot_label"><%- lang('landing.mojangStatus') %></span>
<span id="mojang_status_icon">&#8226;</span>
<div id="mojangStatusTooltip">
<div id="mojangStatusTooltipTitle"><%- lang('landing.mojangStatusTooltipTitle') %></div>
<div id="mojangStatusEssentialContainer">
<!-- Essential Mojang services are populated here. -->
< !-- Essential Mojang services are populated here. -- >
</div>
<div id="mojangStatusNEContainer">
<div class="mojangStatusNEBar"></div>
@@ -114,10 +114,10 @@
<div class="mojangStatusNEBar"></div>
</div>
<div id="mojangStatusNonEssentialContainer">
<!-- Non Essential Mojang services are populated here. -->
< !-- Non Essential Mojang services are populated here. -- >
</div>
</div>
</div>
</div> -->
</div>
</div>
</div>

View File

@@ -3,17 +3,6 @@
<div class="loginOptionsMainContent">
<h2><%- lang('loginOptions.loginOptionsTitle') %></h2>
<div class="loginOptionActions">
<div class="loginOptionButtonContainer">
<button id="loginOptionMicrosoft" class="loginOptionButton">
<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 23 23">
<path fill="#f35325" d="M1 1h10v10H1z" />
<path fill="#81bc06" d="M12 1h10v10H12z" />
<path fill="#05a6f0" d="M1 12h10v10H1z" />
<path fill="#ffba08" d="M12 12h10v10H12z" />
</svg>
<span><%- lang('loginOptions.loginWithMicrosoft') %></span>
</button>
</div>
<div class="loginOptionButtonContainer">
<button id="loginOptionMojang" class="loginOptionButton">
<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 9.677 9.667">

BIN
authlib-injector-1.2.5.jar Normal file

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 142 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -1,3 +1,3 @@
owner: dscalzi
repo: HeliosLauncher
provider: github
owner: oier
repo: PatataLauncher
provider: gitea.fosil.eu

449
distribution.json Normal file
View File

@@ -0,0 +1,449 @@
{
"version": "1.0.0",
"rss": "<LINK TO RSS FEED>",
"discord": {
"clientId": "<FILL IN OR REMOVE DISCORD OBJECT>",
"smallImageText": "<FILL IN OR REMOVE DISCORD OBJECT>",
"smallImageKey": "<FILL IN OR REMOVE DISCORD OBJECT>"
},
"servers": [
{
"id": "PatataPack2-1.20.1",
"name": "PatataPack2 (Minecraft 1.20.1)",
"description": "PatataPack2 Running Minecraft 1.20.1 (Forge v47.3.7)",
"icon": null,
"version": "1.0.0",
"address": "patatapack.oier.ovh:25565",
"minecraftVersion": "1.20.1",
"discord": {
"shortId": "<FILL IN OR REMOVE DISCORD OBJECT>",
"largeImageText": "<FILL IN OR REMOVE DISCORD OBJECT>",
"largeImageKey": "<FILL IN OR REMOVE DISCORD OBJECT>"
},
"mainServer": true,
"autoconnect": false,
"modules": [
{
"id": "net.minecraftforge:lowcodelanguage:1.20.1-47.3.7",
"name": "Minecraft Forge (lowcodelanguage)",
"type": "ForgeHosted",
"classpath": true,
"artifact": {
"size": 7399,
"MD5": "040d351d606060d5b83fddd26e81705d",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/lowcodelanguage/1.20.1-47.3.7/lowcodelanguage-1.20.1-47.3.7.jar"
},
"subModules": [
{
"id": "1.20.1-47.3.7",
"name": "Minecraft Forge (version.json)",
"type": "VersionManifest",
"artifact": {
"size": 16542,
"MD5": "9a8ba2d460c39e7af1595566ece8d136",
"url": "https://distribution.oier.ovh/repo/versions/1.20.1-forge-47.3.7/1.20.1-forge-47.3.7.json"
}
},
{
"id": "net.minecraftforge:fmlcore:1.20.1-47.3.7",
"name": "Minecraft Forge (fmlcore)",
"type": "Library",
"classpath": true,
"artifact": {
"size": 118686,
"MD5": "b1c804dde01878dbcf9310c3bd04eea6",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/fmlcore/1.20.1-47.3.7/fmlcore-1.20.1-47.3.7.jar"
},
"subModules": []
},
{
"id": "net.minecraftforge:javafmllanguage:1.20.1-47.3.7",
"name": "Minecraft Forge (javafmllanguage)",
"type": "Library",
"classpath": true,
"artifact": {
"size": 16516,
"MD5": "e9db49e1ca0eee9fec499c3e9173a319",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/javafmllanguage/1.20.1-47.3.7/javafmllanguage-1.20.1-47.3.7.jar"
},
"subModules": []
},
{
"id": "net.minecraftforge:mclanguage:1.20.1-47.3.7",
"name": "Minecraft Forge (mclanguage)",
"type": "Library",
"classpath": true,
"artifact": {
"size": 5000,
"MD5": "6b2bda8e9f9047e54d0e0d925f89cdf7",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/mclanguage/1.20.1-47.3.7/mclanguage-1.20.1-47.3.7.jar"
},
"subModules": []
},
{
"id": "net.minecraftforge:forge:1.20.1-47.3.7:universal",
"name": "Minecraft Forge (universal jar)",
"type": "Library",
"classpath": false,
"artifact": {
"size": 2753823,
"MD5": "015c7a55def72696038352f56d741d32",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/forge/1.20.1-47.3.7/forge-1.20.1-47.3.7-universal.jar"
},
"subModules": []
},
{
"id": "net.minecraftforge:forge:1.20.1-47.3.7:client",
"name": "Minecraft Forge (client jar)",
"type": "Library",
"classpath": false,
"artifact": {
"size": 4793821,
"MD5": "8e4fb7202d94e3336ea097a8621e8733",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/forge/1.20.1-47.3.7/forge-1.20.1-47.3.7-client.jar"
},
"subModules": []
},
{
"id": "net.minecraft:client:1.20.1-20230612.114412:srg",
"name": "Minecraft Forge (client srg)",
"type": "Library",
"classpath": false,
"artifact": {
"size": 18842082,
"MD5": "8bfacfba4f54cda741019756165c5ecf",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraft/client/1.20.1-20230612.114412/client-1.20.1-20230612.114412-srg.jar"
},
"subModules": []
},
{
"id": "net.minecraft:client:1.20.1-20230612.114412:slim",
"name": "Minecraft Forge (client slim)",
"type": "Library",
"classpath": false,
"artifact": {
"size": 12592249,
"MD5": "28edebec7b5a007bc9961ee9bab4d764",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraft/client/1.20.1-20230612.114412/client-1.20.1-20230612.114412-slim.jar"
},
"subModules": []
},
{
"id": "net.minecraft:client:1.20.1-20230612.114412:extra",
"name": "Minecraft Forge (client extra)",
"type": "Library",
"classpath": false,
"artifact": {
"size": 10436626,
"MD5": "da6bb1a2c23108392fd6c103da40867c",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraft/client/1.20.1-20230612.114412/client-1.20.1-20230612.114412-extra.jar"
},
"subModules": []
},
{
"id": "cpw.mods:securejarhandler:2.1.10",
"name": "Minecraft Forge (securejarhandler)",
"type": "Library",
"artifact": {
"size": 88749,
"MD5": "d9ff48d1c68388270388b803fa42611e",
"url": "https://distribution.oier.ovh/repo/lib/cpw/mods/securejarhandler/2.1.10/securejarhandler-2.1.10.jar"
}
},
{
"id": "org.ow2.asm:asm:9.7",
"name": "Minecraft Forge (asm)",
"type": "Library",
"artifact": {
"size": 125428,
"MD5": "3957b18bf02a62edcb6726d074b90b08",
"url": "https://distribution.oier.ovh/repo/lib/org/ow2/asm/asm/9.7/asm-9.7.jar"
}
},
{
"id": "org.ow2.asm:asm-commons:9.7",
"name": "Minecraft Forge (asm-commons)",
"type": "Library",
"artifact": {
"size": 73426,
"MD5": "53a46610df6a8dbc4ff85b8fd4cdea66",
"url": "https://distribution.oier.ovh/repo/lib/org/ow2/asm/asm-commons/9.7/asm-commons-9.7.jar"
}
},
{
"id": "org.ow2.asm:asm-tree:9.7",
"name": "Minecraft Forge (asm-tree)",
"type": "Library",
"artifact": {
"size": 51934,
"MD5": "ea5cad3e0cbd2520688e4b0b5c4218e7",
"url": "https://distribution.oier.ovh/repo/lib/org/ow2/asm/asm-tree/9.7/asm-tree-9.7.jar"
}
},
{
"id": "org.ow2.asm:asm-util:9.7",
"name": "Minecraft Forge (asm-util)",
"type": "Library",
"artifact": {
"size": 93784,
"MD5": "e7d6e20888e6fd99605f4c5fe1dfa8b0",
"url": "https://distribution.oier.ovh/repo/lib/org/ow2/asm/asm-util/9.7/asm-util-9.7.jar"
}
},
{
"id": "org.ow2.asm:asm-analysis:9.7",
"name": "Minecraft Forge (asm-analysis)",
"type": "Library",
"artifact": {
"size": 34776,
"MD5": "910ac9c691023f1a9ff33c413ae9fbf6",
"url": "https://distribution.oier.ovh/repo/lib/org/ow2/asm/asm-analysis/9.7/asm-analysis-9.7.jar"
}
},
{
"id": "net.minecraftforge:accesstransformers:8.0.4",
"name": "Minecraft Forge (accesstransformers)",
"type": "Library",
"artifact": {
"size": 77756,
"MD5": "f0d3533f9437ba4428eaee9f28f7ecd9",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/accesstransformers/8.0.4/accesstransformers-8.0.4.jar"
}
},
{
"id": "org.antlr:antlr4-runtime:4.9.1",
"name": "Minecraft Forge (antlr4-runtime)",
"type": "Library",
"artifact": {
"size": 337868,
"MD5": "0dcc4b860d5d8d2852ab94d58c56ca2d",
"url": "https://distribution.oier.ovh/repo/lib/org/antlr/antlr4-runtime/4.9.1/antlr4-runtime-4.9.1.jar"
}
},
{
"id": "net.minecraftforge:eventbus:6.0.5",
"name": "Minecraft Forge (eventbus)",
"type": "Library",
"artifact": {
"size": 53985,
"MD5": "2a6245210b446b2144071e71ca13432b",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/eventbus/6.0.5/eventbus-6.0.5.jar"
}
},
{
"id": "net.minecraftforge:forgespi:7.0.1",
"name": "Minecraft Forge (forgespi)",
"type": "Library",
"artifact": {
"size": 29831,
"MD5": "bd34d20287dc95201fe9475a8bbc2540",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/forgespi/7.0.1/forgespi-7.0.1.jar"
}
},
{
"id": "net.minecraftforge:coremods:5.1.6",
"name": "Minecraft Forge (coremods)",
"type": "Library",
"artifact": {
"size": 24124,
"MD5": "4b4fe7e512819804660d621bf11c7381",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/coremods/5.1.6/coremods-5.1.6.jar"
}
},
{
"id": "cpw.mods:modlauncher:10.0.9",
"name": "Minecraft Forge (modlauncher)",
"type": "Library",
"artifact": {
"size": 130343,
"MD5": "07507d18d72661f8ae6a5da75bbf35be",
"url": "https://distribution.oier.ovh/repo/lib/cpw/mods/modlauncher/10.0.9/modlauncher-10.0.9.jar"
}
},
{
"id": "net.minecraftforge:unsafe:0.2.0",
"name": "Minecraft Forge (unsafe)",
"type": "Library",
"artifact": {
"size": 2834,
"MD5": "2d1016ebe4c1a63dd50a59d26bd12db1",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/unsafe/0.2.0/unsafe-0.2.0.jar"
}
},
{
"id": "net.minecraftforge:mergetool:1.1.5:api",
"name": "Minecraft Forge (mergetool)",
"type": "Library",
"artifact": {
"size": 2572,
"MD5": "8df9c5bf87d004ddb884eca99bc2a4b1",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/mergetool/1.1.5/mergetool-1.1.5-api.jar"
}
},
{
"id": "com.electronwill.night-config:core:3.6.4",
"name": "Minecraft Forge (core)",
"type": "Library",
"artifact": {
"size": 199834,
"MD5": "d83ab07267e402131fb93d899a57f5cd",
"url": "https://distribution.oier.ovh/repo/lib/com/electronwill/night-config/core/3.6.4/core-3.6.4.jar"
}
},
{
"id": "com.electronwill.night-config:toml:3.6.4",
"name": "Minecraft Forge (toml)",
"type": "Library",
"artifact": {
"size": 31816,
"MD5": "bc95d0709fff2164b01fd09fbc988be8",
"url": "https://distribution.oier.ovh/repo/lib/com/electronwill/night-config/toml/3.6.4/toml-3.6.4.jar"
}
},
{
"id": "org.apache.maven:maven-artifact:3.8.5",
"name": "Minecraft Forge (maven-artifact)",
"type": "Library",
"artifact": {
"size": 58077,
"MD5": "ce473b0d9fbfd10fe147f03fe8707d67",
"url": "https://distribution.oier.ovh/repo/lib/org/apache/maven/maven-artifact/3.8.5/maven-artifact-3.8.5.jar"
}
},
{
"id": "net.jodah:typetools:0.6.3",
"name": "Minecraft Forge (typetools)",
"type": "Library",
"artifact": {
"size": 18281,
"MD5": "d4a375bf382f726cf1a650ccb38a736c",
"url": "https://distribution.oier.ovh/repo/lib/net/jodah/typetools/0.6.3/typetools-0.6.3.jar"
}
},
{
"id": "net.minecrell:terminalconsoleappender:1.2.0",
"name": "Minecraft Forge (terminalconsoleappender)",
"type": "Library",
"artifact": {
"size": 15977,
"MD5": "679363fa893293791e55a21f81342f87",
"url": "https://distribution.oier.ovh/repo/lib/net/minecrell/terminalconsoleappender/1.2.0/terminalconsoleappender-1.2.0.jar"
}
},
{
"id": "org.jline:jline-reader:3.12.1",
"name": "Minecraft Forge (jline-reader)",
"type": "Library",
"artifact": {
"size": 150765,
"MD5": "a2e7b012cd9802f83321187409174a94",
"url": "https://distribution.oier.ovh/repo/lib/org/jline/jline-reader/3.12.1/jline-reader-3.12.1.jar"
}
},
{
"id": "org.jline:jline-terminal:3.12.1",
"name": "Minecraft Forge (jline-terminal)",
"type": "Library",
"artifact": {
"size": 211712,
"MD5": "3c52be5ab5e3847be6e62269de924cb0",
"url": "https://distribution.oier.ovh/repo/lib/org/jline/jline-terminal/3.12.1/jline-terminal-3.12.1.jar"
}
},
{
"id": "org.spongepowered:mixin:0.8.5",
"name": "Minecraft Forge (mixin)",
"type": "Library",
"artifact": {
"size": 1089277,
"MD5": "19b3a2ae9e445a6e626fd7d1648cfcb8",
"url": "https://distribution.oier.ovh/repo/lib/org/spongepowered/mixin/0.8.5/mixin-0.8.5.jar"
}
},
{
"id": "org.openjdk.nashorn:nashorn-core:15.3",
"name": "Minecraft Forge (nashorn-core)",
"type": "Library",
"artifact": {
"size": 2167288,
"MD5": "91e98c20afa1090c344229ce28b4c53f",
"url": "https://distribution.oier.ovh/repo/lib/org/openjdk/nashorn/nashorn-core/15.3/nashorn-core-15.3.jar"
}
},
{
"id": "net.minecraftforge:JarJarSelector:0.3.19",
"name": "Minecraft Forge (JarJarSelector)",
"type": "Library",
"artifact": {
"size": 17374,
"MD5": "2bb6cbe0e6c6fbcd8f92d2e6b1ea678e",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/JarJarSelector/0.3.19/JarJarSelector-0.3.19.jar"
}
},
{
"id": "net.minecraftforge:JarJarMetadata:0.3.19",
"name": "Minecraft Forge (JarJarMetadata)",
"type": "Library",
"artifact": {
"size": 15895,
"MD5": "9633546d299d4282ca68d10582be1c8f",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/JarJarMetadata/0.3.19/JarJarMetadata-0.3.19.jar"
}
},
{
"id": "cpw.mods:bootstraplauncher:1.1.2",
"name": "Minecraft Forge (bootstraplauncher)",
"type": "Library",
"artifact": {
"size": 8284,
"MD5": "48f5255aa337344c467c0150d347813d",
"url": "https://distribution.oier.ovh/repo/lib/cpw/mods/bootstraplauncher/1.1.2/bootstraplauncher-1.1.2.jar"
}
},
{
"id": "net.minecraftforge:JarJarFileSystems:0.3.19",
"name": "Minecraft Forge (JarJarFileSystems)",
"type": "Library",
"artifact": {
"size": 32195,
"MD5": "c2be1a88b63eb1b58b00ab6e498cd97d",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/JarJarFileSystems/0.3.19/JarJarFileSystems-0.3.19.jar"
}
},
{
"id": "net.minecraftforge:fmlloader:1.20.1-47.3.7",
"name": "Minecraft Forge (fmlloader)",
"type": "Library",
"artifact": {
"size": 264940,
"MD5": "23f0d0ea2c9b56938019c207363a1589",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/fmlloader/1.20.1-47.3.7/fmlloader-1.20.1-47.3.7.jar"
}
},
{
"id": "net.minecraftforge:fmlearlydisplay:1.20.1-47.3.7",
"name": "Minecraft Forge (fmlearlydisplay)",
"type": "Library",
"artifact": {
"size": 170425,
"MD5": "9866c86a40d79514f2fcfbf901788567",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/fmlearlydisplay/1.20.1-47.3.7/fmlearlydisplay-1.20.1-47.3.7.jar"
}
}
]
},
{
"id": "packwiz-installer-bootstrap.jar",
"name": "packwiz-installer-bootstrap.jar",
"type": "File",
"artifact": {
"size": 98989,
"url": "https://distribution.oier.ovh/servers/PatataPack2-1.20.1/files/packwiz-installer-bootstrap.jar",
"MD5": "51454da9ed9625bd3ca5cdc7a402b43b",
"path": "packwiz-installer-bootstrap.jar"
}
}
]
}
]
}

449
distribution_dev.json Normal file
View File

@@ -0,0 +1,449 @@
{
"version": "1.0.0",
"rss": "<LINK TO RSS FEED>",
"discord": {
"clientId": "<FILL IN OR REMOVE DISCORD OBJECT>",
"smallImageText": "<FILL IN OR REMOVE DISCORD OBJECT>",
"smallImageKey": "<FILL IN OR REMOVE DISCORD OBJECT>"
},
"servers": [
{
"id": "PatataPack2-1.20.1",
"name": "PatataPack2 (Minecraft 1.20.1)",
"description": "PatataPack2 Running Minecraft 1.20.1 (Forge v47.3.7)",
"icon": null,
"version": "1.0.0",
"address": "patatapack.oier.ovh:25565",
"minecraftVersion": "1.20.1",
"discord": {
"shortId": "<FILL IN OR REMOVE DISCORD OBJECT>",
"largeImageText": "<FILL IN OR REMOVE DISCORD OBJECT>",
"largeImageKey": "<FILL IN OR REMOVE DISCORD OBJECT>"
},
"mainServer": true,
"autoconnect": false,
"modules": [
{
"id": "net.minecraftforge:lowcodelanguage:1.20.1-47.3.7",
"name": "Minecraft Forge (lowcodelanguage)",
"type": "ForgeHosted",
"classpath": true,
"artifact": {
"size": 7399,
"MD5": "040d351d606060d5b83fddd26e81705d",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/lowcodelanguage/1.20.1-47.3.7/lowcodelanguage-1.20.1-47.3.7.jar"
},
"subModules": [
{
"id": "1.20.1-47.3.7",
"name": "Minecraft Forge (version.json)",
"type": "VersionManifest",
"artifact": {
"size": 16542,
"MD5": "9a8ba2d460c39e7af1595566ece8d136",
"url": "https://distribution.oier.ovh/repo/versions/1.20.1-forge-47.3.7/1.20.1-forge-47.3.7.json"
}
},
{
"id": "net.minecraftforge:fmlcore:1.20.1-47.3.7",
"name": "Minecraft Forge (fmlcore)",
"type": "Library",
"classpath": true,
"artifact": {
"size": 118686,
"MD5": "b1c804dde01878dbcf9310c3bd04eea6",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/fmlcore/1.20.1-47.3.7/fmlcore-1.20.1-47.3.7.jar"
},
"subModules": []
},
{
"id": "net.minecraftforge:javafmllanguage:1.20.1-47.3.7",
"name": "Minecraft Forge (javafmllanguage)",
"type": "Library",
"classpath": true,
"artifact": {
"size": 16516,
"MD5": "e9db49e1ca0eee9fec499c3e9173a319",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/javafmllanguage/1.20.1-47.3.7/javafmllanguage-1.20.1-47.3.7.jar"
},
"subModules": []
},
{
"id": "net.minecraftforge:mclanguage:1.20.1-47.3.7",
"name": "Minecraft Forge (mclanguage)",
"type": "Library",
"classpath": true,
"artifact": {
"size": 5000,
"MD5": "6b2bda8e9f9047e54d0e0d925f89cdf7",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/mclanguage/1.20.1-47.3.7/mclanguage-1.20.1-47.3.7.jar"
},
"subModules": []
},
{
"id": "net.minecraftforge:forge:1.20.1-47.3.7:universal",
"name": "Minecraft Forge (universal jar)",
"type": "Library",
"classpath": false,
"artifact": {
"size": 2753823,
"MD5": "015c7a55def72696038352f56d741d32",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/forge/1.20.1-47.3.7/forge-1.20.1-47.3.7-universal.jar"
},
"subModules": []
},
{
"id": "net.minecraftforge:forge:1.20.1-47.3.7:client",
"name": "Minecraft Forge (client jar)",
"type": "Library",
"classpath": false,
"artifact": {
"size": 4793821,
"MD5": "8e4fb7202d94e3336ea097a8621e8733",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/forge/1.20.1-47.3.7/forge-1.20.1-47.3.7-client.jar"
},
"subModules": []
},
{
"id": "net.minecraft:client:1.20.1-20230612.114412:srg",
"name": "Minecraft Forge (client srg)",
"type": "Library",
"classpath": false,
"artifact": {
"size": 18842082,
"MD5": "8bfacfba4f54cda741019756165c5ecf",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraft/client/1.20.1-20230612.114412/client-1.20.1-20230612.114412-srg.jar"
},
"subModules": []
},
{
"id": "net.minecraft:client:1.20.1-20230612.114412:slim",
"name": "Minecraft Forge (client slim)",
"type": "Library",
"classpath": false,
"artifact": {
"size": 12592249,
"MD5": "28edebec7b5a007bc9961ee9bab4d764",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraft/client/1.20.1-20230612.114412/client-1.20.1-20230612.114412-slim.jar"
},
"subModules": []
},
{
"id": "net.minecraft:client:1.20.1-20230612.114412:extra",
"name": "Minecraft Forge (client extra)",
"type": "Library",
"classpath": false,
"artifact": {
"size": 10436626,
"MD5": "da6bb1a2c23108392fd6c103da40867c",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraft/client/1.20.1-20230612.114412/client-1.20.1-20230612.114412-extra.jar"
},
"subModules": []
},
{
"id": "cpw.mods:securejarhandler:2.1.10",
"name": "Minecraft Forge (securejarhandler)",
"type": "Library",
"artifact": {
"size": 88749,
"MD5": "d9ff48d1c68388270388b803fa42611e",
"url": "https://distribution.oier.ovh/repo/lib/cpw/mods/securejarhandler/2.1.10/securejarhandler-2.1.10.jar"
}
},
{
"id": "org.ow2.asm:asm:9.7",
"name": "Minecraft Forge (asm)",
"type": "Library",
"artifact": {
"size": 125428,
"MD5": "3957b18bf02a62edcb6726d074b90b08",
"url": "https://distribution.oier.ovh/repo/lib/org/ow2/asm/asm/9.7/asm-9.7.jar"
}
},
{
"id": "org.ow2.asm:asm-commons:9.7",
"name": "Minecraft Forge (asm-commons)",
"type": "Library",
"artifact": {
"size": 73426,
"MD5": "53a46610df6a8dbc4ff85b8fd4cdea66",
"url": "https://distribution.oier.ovh/repo/lib/org/ow2/asm/asm-commons/9.7/asm-commons-9.7.jar"
}
},
{
"id": "org.ow2.asm:asm-tree:9.7",
"name": "Minecraft Forge (asm-tree)",
"type": "Library",
"artifact": {
"size": 51934,
"MD5": "ea5cad3e0cbd2520688e4b0b5c4218e7",
"url": "https://distribution.oier.ovh/repo/lib/org/ow2/asm/asm-tree/9.7/asm-tree-9.7.jar"
}
},
{
"id": "org.ow2.asm:asm-util:9.7",
"name": "Minecraft Forge (asm-util)",
"type": "Library",
"artifact": {
"size": 93784,
"MD5": "e7d6e20888e6fd99605f4c5fe1dfa8b0",
"url": "https://distribution.oier.ovh/repo/lib/org/ow2/asm/asm-util/9.7/asm-util-9.7.jar"
}
},
{
"id": "org.ow2.asm:asm-analysis:9.7",
"name": "Minecraft Forge (asm-analysis)",
"type": "Library",
"artifact": {
"size": 34776,
"MD5": "910ac9c691023f1a9ff33c413ae9fbf6",
"url": "https://distribution.oier.ovh/repo/lib/org/ow2/asm/asm-analysis/9.7/asm-analysis-9.7.jar"
}
},
{
"id": "net.minecraftforge:accesstransformers:8.0.4",
"name": "Minecraft Forge (accesstransformers)",
"type": "Library",
"artifact": {
"size": 77756,
"MD5": "f0d3533f9437ba4428eaee9f28f7ecd9",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/accesstransformers/8.0.4/accesstransformers-8.0.4.jar"
}
},
{
"id": "org.antlr:antlr4-runtime:4.9.1",
"name": "Minecraft Forge (antlr4-runtime)",
"type": "Library",
"artifact": {
"size": 337868,
"MD5": "0dcc4b860d5d8d2852ab94d58c56ca2d",
"url": "https://distribution.oier.ovh/repo/lib/org/antlr/antlr4-runtime/4.9.1/antlr4-runtime-4.9.1.jar"
}
},
{
"id": "net.minecraftforge:eventbus:6.0.5",
"name": "Minecraft Forge (eventbus)",
"type": "Library",
"artifact": {
"size": 53985,
"MD5": "2a6245210b446b2144071e71ca13432b",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/eventbus/6.0.5/eventbus-6.0.5.jar"
}
},
{
"id": "net.minecraftforge:forgespi:7.0.1",
"name": "Minecraft Forge (forgespi)",
"type": "Library",
"artifact": {
"size": 29831,
"MD5": "bd34d20287dc95201fe9475a8bbc2540",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/forgespi/7.0.1/forgespi-7.0.1.jar"
}
},
{
"id": "net.minecraftforge:coremods:5.1.6",
"name": "Minecraft Forge (coremods)",
"type": "Library",
"artifact": {
"size": 24124,
"MD5": "4b4fe7e512819804660d621bf11c7381",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/coremods/5.1.6/coremods-5.1.6.jar"
}
},
{
"id": "cpw.mods:modlauncher:10.0.9",
"name": "Minecraft Forge (modlauncher)",
"type": "Library",
"artifact": {
"size": 130343,
"MD5": "07507d18d72661f8ae6a5da75bbf35be",
"url": "https://distribution.oier.ovh/repo/lib/cpw/mods/modlauncher/10.0.9/modlauncher-10.0.9.jar"
}
},
{
"id": "net.minecraftforge:unsafe:0.2.0",
"name": "Minecraft Forge (unsafe)",
"type": "Library",
"artifact": {
"size": 2834,
"MD5": "2d1016ebe4c1a63dd50a59d26bd12db1",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/unsafe/0.2.0/unsafe-0.2.0.jar"
}
},
{
"id": "net.minecraftforge:mergetool:1.1.5:api",
"name": "Minecraft Forge (mergetool)",
"type": "Library",
"artifact": {
"size": 2572,
"MD5": "8df9c5bf87d004ddb884eca99bc2a4b1",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/mergetool/1.1.5/mergetool-1.1.5-api.jar"
}
},
{
"id": "com.electronwill.night-config:core:3.6.4",
"name": "Minecraft Forge (core)",
"type": "Library",
"artifact": {
"size": 199834,
"MD5": "d83ab07267e402131fb93d899a57f5cd",
"url": "https://distribution.oier.ovh/repo/lib/com/electronwill/night-config/core/3.6.4/core-3.6.4.jar"
}
},
{
"id": "com.electronwill.night-config:toml:3.6.4",
"name": "Minecraft Forge (toml)",
"type": "Library",
"artifact": {
"size": 31816,
"MD5": "bc95d0709fff2164b01fd09fbc988be8",
"url": "https://distribution.oier.ovh/repo/lib/com/electronwill/night-config/toml/3.6.4/toml-3.6.4.jar"
}
},
{
"id": "org.apache.maven:maven-artifact:3.8.5",
"name": "Minecraft Forge (maven-artifact)",
"type": "Library",
"artifact": {
"size": 58077,
"MD5": "ce473b0d9fbfd10fe147f03fe8707d67",
"url": "https://distribution.oier.ovh/repo/lib/org/apache/maven/maven-artifact/3.8.5/maven-artifact-3.8.5.jar"
}
},
{
"id": "net.jodah:typetools:0.6.3",
"name": "Minecraft Forge (typetools)",
"type": "Library",
"artifact": {
"size": 18281,
"MD5": "d4a375bf382f726cf1a650ccb38a736c",
"url": "https://distribution.oier.ovh/repo/lib/net/jodah/typetools/0.6.3/typetools-0.6.3.jar"
}
},
{
"id": "net.minecrell:terminalconsoleappender:1.2.0",
"name": "Minecraft Forge (terminalconsoleappender)",
"type": "Library",
"artifact": {
"size": 15977,
"MD5": "679363fa893293791e55a21f81342f87",
"url": "https://distribution.oier.ovh/repo/lib/net/minecrell/terminalconsoleappender/1.2.0/terminalconsoleappender-1.2.0.jar"
}
},
{
"id": "org.jline:jline-reader:3.12.1",
"name": "Minecraft Forge (jline-reader)",
"type": "Library",
"artifact": {
"size": 150765,
"MD5": "a2e7b012cd9802f83321187409174a94",
"url": "https://distribution.oier.ovh/repo/lib/org/jline/jline-reader/3.12.1/jline-reader-3.12.1.jar"
}
},
{
"id": "org.jline:jline-terminal:3.12.1",
"name": "Minecraft Forge (jline-terminal)",
"type": "Library",
"artifact": {
"size": 211712,
"MD5": "3c52be5ab5e3847be6e62269de924cb0",
"url": "https://distribution.oier.ovh/repo/lib/org/jline/jline-terminal/3.12.1/jline-terminal-3.12.1.jar"
}
},
{
"id": "org.spongepowered:mixin:0.8.5",
"name": "Minecraft Forge (mixin)",
"type": "Library",
"artifact": {
"size": 1089277,
"MD5": "19b3a2ae9e445a6e626fd7d1648cfcb8",
"url": "https://distribution.oier.ovh/repo/lib/org/spongepowered/mixin/0.8.5/mixin-0.8.5.jar"
}
},
{
"id": "org.openjdk.nashorn:nashorn-core:15.3",
"name": "Minecraft Forge (nashorn-core)",
"type": "Library",
"artifact": {
"size": 2167288,
"MD5": "91e98c20afa1090c344229ce28b4c53f",
"url": "https://distribution.oier.ovh/repo/lib/org/openjdk/nashorn/nashorn-core/15.3/nashorn-core-15.3.jar"
}
},
{
"id": "net.minecraftforge:JarJarSelector:0.3.19",
"name": "Minecraft Forge (JarJarSelector)",
"type": "Library",
"artifact": {
"size": 17374,
"MD5": "2bb6cbe0e6c6fbcd8f92d2e6b1ea678e",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/JarJarSelector/0.3.19/JarJarSelector-0.3.19.jar"
}
},
{
"id": "net.minecraftforge:JarJarMetadata:0.3.19",
"name": "Minecraft Forge (JarJarMetadata)",
"type": "Library",
"artifact": {
"size": 15895,
"MD5": "9633546d299d4282ca68d10582be1c8f",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/JarJarMetadata/0.3.19/JarJarMetadata-0.3.19.jar"
}
},
{
"id": "cpw.mods:bootstraplauncher:1.1.2",
"name": "Minecraft Forge (bootstraplauncher)",
"type": "Library",
"artifact": {
"size": 8284,
"MD5": "48f5255aa337344c467c0150d347813d",
"url": "https://distribution.oier.ovh/repo/lib/cpw/mods/bootstraplauncher/1.1.2/bootstraplauncher-1.1.2.jar"
}
},
{
"id": "net.minecraftforge:JarJarFileSystems:0.3.19",
"name": "Minecraft Forge (JarJarFileSystems)",
"type": "Library",
"artifact": {
"size": 32195,
"MD5": "c2be1a88b63eb1b58b00ab6e498cd97d",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/JarJarFileSystems/0.3.19/JarJarFileSystems-0.3.19.jar"
}
},
{
"id": "net.minecraftforge:fmlloader:1.20.1-47.3.7",
"name": "Minecraft Forge (fmlloader)",
"type": "Library",
"artifact": {
"size": 264940,
"MD5": "23f0d0ea2c9b56938019c207363a1589",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/fmlloader/1.20.1-47.3.7/fmlloader-1.20.1-47.3.7.jar"
}
},
{
"id": "net.minecraftforge:fmlearlydisplay:1.20.1-47.3.7",
"name": "Minecraft Forge (fmlearlydisplay)",
"type": "Library",
"artifact": {
"size": 170425,
"MD5": "9866c86a40d79514f2fcfbf901788567",
"url": "https://distribution.oier.ovh/repo/lib/net/minecraftforge/fmlearlydisplay/1.20.1-47.3.7/fmlearlydisplay-1.20.1-47.3.7.jar"
}
}
]
},
{
"id": "packwiz-installer-bootstrap.jar",
"name": "packwiz-installer-bootstrap.jar",
"type": "File",
"artifact": {
"size": 98989,
"url": "https://distribution.oier.ovh/servers/PatataPack2-1.20.1/files/packwiz-installer-bootstrap.jar",
"MD5": "51454da9ed9625bd3ca5cdc7a402b43b",
"path": "packwiz-installer-bootstrap.jar"
}
}
]
}
]
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,8 +1,8 @@
appId: 'helioslauncher'
productName: 'Helios Launcher'
artifactName: '${productName}-setup-${version}.${ext}'
appId: 'patatalauncher'
productName: 'PatataLauncher'
artifactName: '${productName}-${version}.${ext}'
copyright: 'Copyright © 2018-2022 Daniel Scalzi'
copyright: 'Copyleft 2024 Daniel Scalzi'
asar: true
compression: 'maximum'

9037
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{
"name": "helioslauncher",
"version": "2.0.6",
"name": "patatalauncher",
"version": "1.0.0",
"productName": "Helios Launcher",
"description": "Modded Minecraft Launcher",
"author": "Daniel Scalzi (https://github.com/dscalzi/)",
@@ -17,35 +17,37 @@
"dist:win": "npm run dist -- -w",
"dist:mac": "npm run dist -- -m",
"dist:linux": "npm run dist -- -l",
"lint": "eslint --config .eslintrc.json ."
"lint": "eslint --config .eslintrc.json .",
"postinstall": "patch-package"
},
"engines": {
"node": "18.x.x"
"node": "20.x.x"
},
"dependencies": {
"@electron/remote": "^2.1.0",
"adm-zip": "^0.5.9",
"@electron/remote": "^2.1.2",
"adm-zip": "^0.5.12",
"discord-rpc-patch": "^4.0.1",
"ejs": "^3.1.9",
"ejs-electron": "^2.1.1",
"electron-updater": "^6.1.7",
"ejs": "^3.1.10",
"ejs-electron": "^3.0.0",
"electron-updater": "^6.1.8",
"fs-extra": "^11.1.1",
"github-syntax-dark": "^0.5.0",
"got": "^11.8.5",
"helios-core": "~2.1.0",
"helios-core": "~2.2.1",
"helios-distribution-types": "^1.3.0",
"jquery": "^3.7.1",
"lodash.merge": "^4.6.2",
"semver": "^7.5.4",
"patch-package": "^8.0.0",
"semver": "^7.6.0",
"toml": "^3.0.0"
},
"devDependencies": {
"electron": "^27.1.2",
"electron-builder": "^24.9.1",
"eslint": "^8.54.0"
"electron": "^30.0.1",
"electron-builder": "^24.13.3",
"eslint": "^8.57.0"
},
"repository": {
"type": "git",
"url": "git+https://github.com/dscalzi/HeliosLauncher.git"
"url": "git@git.fosil.eu:oier/PatataLauncher.git"
}
}

View File

@@ -0,0 +1,26 @@
diff --git a/node_modules/helios-core/dist/mojang/rest/MojangRestAPI.d.ts b/node_modules/helios-core/dist/mojang/rest/MojangRestAPI.d.ts
index 49f2b19..cf661ce 100644
--- a/node_modules/helios-core/dist/mojang/rest/MojangRestAPI.d.ts
+++ b/node_modules/helios-core/dist/mojang/rest/MojangRestAPI.d.ts
@@ -44,7 +44,7 @@ export interface UpptimeSummary {
export declare class MojangRestAPI {
private static readonly logger;
private static readonly TIMEOUT;
- static readonly AUTH_ENDPOINT = "https://authserver.mojang.com";
+ static readonly AUTH_ENDPOINT = "https://auth.oier.ovh/api/yggdrasil/authserver";
static readonly STATUS_ENDPOINT = "https://raw.githubusercontent.com/AventiumSoftworks/helios-status-page/master/history/summary.json";
private static authClient;
private static statusClient;
diff --git a/node_modules/helios-core/dist/mojang/rest/MojangRestAPI.js b/node_modules/helios-core/dist/mojang/rest/MojangRestAPI.js
index 3fbc718..ba38f57 100644
--- a/node_modules/helios-core/dist/mojang/rest/MojangRestAPI.js
+++ b/node_modules/helios-core/dist/mojang/rest/MojangRestAPI.js
@@ -38,7 +38,7 @@ var MojangStatusColor;
class MojangRestAPI {
static logger = LoggerUtil_1.LoggerUtil.getLogger('Mojang');
static TIMEOUT = 2500;
- static AUTH_ENDPOINT = 'https://authserver.mojang.com';
+ static AUTH_ENDPOINT = 'https://auth.oier.ovh/api/yggdrasil/authserver';
static STATUS_ENDPOINT = 'https://raw.githubusercontent.com/AventiumSoftworks/helios-status-page/master/history/summary.json';
static authClient = got_1.default.extend({
prefixUrl: MojangRestAPI.AUTH_ENDPOINT,