Merge pull request #10 from marco-calautti/master
Refactor module definitions
This commit is contained in:
commit
1b32e8bb66
6
.github/workflows/buildRelease.yml
vendored
6
.github/workflows/buildRelease.yml
vendored
|
@ -37,17 +37,17 @@ jobs:
|
||||||
- name: Compile DeepSea Zip
|
- name: Compile DeepSea Zip
|
||||||
run: |
|
run: |
|
||||||
cd ./builder
|
cd ./builder
|
||||||
python ./builder.py deepsea output="./deepsea.zip"
|
python ./builder.py deepsea.json output="./deepsea.zip"
|
||||||
|
|
||||||
- name: Compile DeepSea-patches Zip
|
- name: Compile DeepSea-patches Zip
|
||||||
run: |
|
run: |
|
||||||
cd ./builder
|
cd ./builder
|
||||||
python ./builder.py deepsea-patches output="./deepsea-patched.zip"
|
python ./builder.py deepsea-patches.json output="./deepsea-patched.zip"
|
||||||
|
|
||||||
- name: Compile DeepSea-minimal Zip
|
- name: Compile DeepSea-minimal Zip
|
||||||
run: |
|
run: |
|
||||||
cd ./builder
|
cd ./builder
|
||||||
python ./builder.py deepsea-mini output="./deepsea-minimal.zip"
|
python ./builder.py deepsea-minimal.json output="./deepsea-minimal.zip"
|
||||||
|
|
||||||
- name: Create Release
|
- name: Create Release
|
||||||
id: create_release
|
id: create_release
|
||||||
|
|
|
@ -22,7 +22,7 @@ DeepSea - The new All-in-One CFW package for the Nintendo Switch.
|
||||||
## How to use
|
## How to use
|
||||||
Follow this guide to hack your switch: https://switch.homebrew.guide
|
Follow this guide to hack your switch: https://switch.homebrew.guide
|
||||||
|
|
||||||
Download the latest release and put it on your SD Card\
|
Download the latest release and put it on your SD Card<br />
|
||||||
Send the Hekate payload to your Switch in RCM mode and launch the CFW
|
Send the Hekate payload to your Switch in RCM mode and launch the CFW
|
||||||
|
|
||||||
|
|
||||||
|
@ -68,4 +68,4 @@ Send the Hekate payload to your Switch in RCM mode and launch the CFW
|
||||||
## Notes
|
## Notes
|
||||||
Though we offer a "patched" package that enables the installation and usage of your backup and unlawfully obtained games, we do not condone piracy. The reason we offer this package is because we rather include it ourself instead of letting users go to other sources and use more shady versions of our or other CFW's/packages. Its up to the end user to decide if he wants to be on the good or the bad side, just like in life. The patches used are from [HarukoNX/PKG2-Patches](https://github.com/HarukoNX/PKG2-Patches) and [HarukoNX/ES-Patches](https://github.com/HarukoNX/PKG2-Patches).
|
Though we offer a "patched" package that enables the installation and usage of your backup and unlawfully obtained games, we do not condone piracy. The reason we offer this package is because we rather include it ourself instead of letting users go to other sources and use more shady versions of our or other CFW's/packages. Its up to the end user to decide if he wants to be on the good or the bad side, just like in life. The patches used are from [HarukoNX/PKG2-Patches](https://github.com/HarukoNX/PKG2-Patches) and [HarukoNX/ES-Patches](https://github.com/HarukoNX/PKG2-Patches).
|
||||||
|
|
||||||
We will not offer any kind of support related to the patches or piracy.
|
We will not offer any kind of support related to the patches or piracy.
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
theme: jekyll-theme-architect
|
theme: jekyll-theme-cayman
|
425
builder/Modules/modules-definitions.json
Normal file
425
builder/Modules/modules-definitions.json
Normal file
|
@ -0,0 +1,425 @@
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"name": "Atmosphère",
|
||||||
|
"download_function_name": "download_atmosphere",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "Atmosphere-NX",
|
||||||
|
"repo_name": "Atmosphere",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*atmosphere.*\\.zip",
|
||||||
|
".*fusee.*\\.bin"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "must_have"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Hekate",
|
||||||
|
"download_function_name": "download_hekate",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "CTCaer",
|
||||||
|
"repo_name": "hekate",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*hekate.*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "hekate"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Hekate Icons",
|
||||||
|
"download_function_name": "download_hekate_icons",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "NicholeMattera",
|
||||||
|
"repo_name": "Hekate-Icons",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "hekate_icons"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Homebrew App Store",
|
||||||
|
"download_function_name": "download_appstore",
|
||||||
|
"git": {
|
||||||
|
"service": 1,
|
||||||
|
"org_name": "4TU",
|
||||||
|
"repo_name": "hb-appstore",
|
||||||
|
"asset_patterns": [
|
||||||
|
"\\[.*\\.nro\\.zip\\]\\((.*\\.nro\\.zip)\\)"
|
||||||
|
],
|
||||||
|
"group": 0,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "EdiZon",
|
||||||
|
"download_function_name": "download_edizon",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "WerWolv",
|
||||||
|
"repo_name": "EdiZon",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.nro",
|
||||||
|
".*\\.ovl"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Emuiibo",
|
||||||
|
"download_function_name": "download_emuiibo",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "XorTroll",
|
||||||
|
"repo_name": "emuiibo",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*emuiibo.*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "emuiibo"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Kosmos Cleaner",
|
||||||
|
"download_function_name": "download_kosmos_cleaner",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "AtlasNX",
|
||||||
|
"repo_name": "Kosmos-Cleaner",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "kosmos_cleaner"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Kosmos Updater",
|
||||||
|
"download_function_name": "download_kosmos_updater",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "AtlasNX",
|
||||||
|
"repo_name": "Kosmos-Updater",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.nro"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "kosmos_updater"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Goldleaf",
|
||||||
|
"download_function_name": "download_goldleaf",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "XorTroll",
|
||||||
|
"repo_name": "Goldleaf",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.nro"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Awoo Installer",
|
||||||
|
"download_function_name": "download_awoo",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "Huntereb",
|
||||||
|
"repo_name": "Awoo-Installer",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Kosmos Toolbox",
|
||||||
|
"download_function_name": "download_kosmos_toolbox",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "AtlasNX",
|
||||||
|
"repo_name": "Kosmos-Toolbox",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.nro"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "kosmos_toolbox"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "DeepSea Toolbox",
|
||||||
|
"download_function_name": "download_deepsea_toolbox",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "Team-Neptune",
|
||||||
|
"repo_name": "DeepSea-Toolbox",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.nro"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "DeepSea Updater",
|
||||||
|
"download_function_name": "download_kosmos_updater",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "Team-Neptune",
|
||||||
|
"repo_name": "DeepSea-Updater",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.nro"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "DeepSea Cleaner",
|
||||||
|
"download_function_name": "download_deepsea_cleaner",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "Team-Neptune",
|
||||||
|
"repo_name": "DeepSea-Cleaner",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "JKSV",
|
||||||
|
"download_function_name": "download_jksv",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "J-D-K",
|
||||||
|
"repo_name": "JKSV",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.nro"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "NXMTP",
|
||||||
|
"download_function_name": "download_nxmtp",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "liuervehc",
|
||||||
|
"repo_name": "nxmtp",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.nro"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ldn_mitm",
|
||||||
|
"download_function_name": "download_ldn_mitm",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "spacemeowx2",
|
||||||
|
"repo_name": "ldn_mitm",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*ldn_mitm.*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "ldn_mitm"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Lockpick_RCM",
|
||||||
|
"download_function_name": "download_lockpick_rcm",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "shchmue",
|
||||||
|
"repo_name": "Lockpick_RCM",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.bin"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "lockpick_rcm"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "nx-ovlloader",
|
||||||
|
"download_function_name": "download_nx_ovlloader",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "WerWolv",
|
||||||
|
"repo_name": "nx-ovlloader",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "nx_ovlloader"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ovlSysModules",
|
||||||
|
"download_function_name": "download_ovl_sysmodules",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "WerWolv",
|
||||||
|
"repo_name": "ovl-sysmodules",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.ovl"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "ovl_sysmodules"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Status Monitor Overlay",
|
||||||
|
"download_function_name": "download_status_monitor_overlay",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "masagrator",
|
||||||
|
"repo_name": "Status-Monitor-Overlay",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.ovl"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "status_monitor_overlay"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sys-clk",
|
||||||
|
"download_function_name": "download_sys_clk",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "retronx-team",
|
||||||
|
"repo_name": "sys-clk",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*sys-clk-.*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "sys_clk"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sys-clk-ovl",
|
||||||
|
"download_function_name": "download_sys_clk_ovl",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "Sun-Research-University",
|
||||||
|
"repo_name": "sys-clk-Overlay",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*sys-clk-Overlay.*\\.ovl"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "sys_clk_ovl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sys-con",
|
||||||
|
"download_function_name": "download_sys_con",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "cathery",
|
||||||
|
"repo_name": "sys-con",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*sys-con-.*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "sys_con"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "sys-ftpd-light",
|
||||||
|
"download_function_name": "download_sys_ftpd_light",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "cathery",
|
||||||
|
"repo_name": "sys-ftpd-light",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*sys-ftpd-light.*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "sys_ftpd"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Tesla-Menu",
|
||||||
|
"download_function_name": "download_tesla_menu",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "WerWolv",
|
||||||
|
"repo_name": "Tesla-Menu",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": "tesla_menu"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "PKG2-Patches",
|
||||||
|
"download_function_name": "download_pkg2_patches",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "HarukoNX",
|
||||||
|
"repo_name": "PKG2-Patches",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*fusee.*\\.zip",
|
||||||
|
".*hekate.*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "ES-Patches",
|
||||||
|
"download_function_name": "download_es_patches",
|
||||||
|
"git": {
|
||||||
|
"service": 0,
|
||||||
|
"org_name": "HarukoNX",
|
||||||
|
"repo_name": "ES-Patches",
|
||||||
|
"asset_patterns": [
|
||||||
|
".*\\.zip"
|
||||||
|
],
|
||||||
|
"group": null,
|
||||||
|
"version_pattern": null
|
||||||
|
},
|
||||||
|
"sdsetup_module_name": null
|
||||||
|
}
|
||||||
|
]
|
|
@ -26,7 +26,7 @@ import modules
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
import shutil
|
import shutil
|
||||||
import sys
|
import sys
|
||||||
|
import json
|
||||||
|
|
||||||
def parse_args():
|
def parse_args():
|
||||||
parser = argparse.ArgumentParser()
|
parser = argparse.ArgumentParser()
|
||||||
|
@ -36,51 +36,20 @@ def parse_args():
|
||||||
type=str,
|
type=str,
|
||||||
help='Overrides the DeepSea Version from the config file.',
|
help='Overrides the DeepSea Version from the config file.',
|
||||||
metavar='DeepSeaVersion')
|
metavar='DeepSeaVersion')
|
||||||
subparsers = parser.add_subparsers()
|
parser.add_argument(
|
||||||
|
"package_file",
|
||||||
# Kosmos subcommands
|
default=None,
|
||||||
parser_kosmos = subparsers.add_parser(
|
type=str,
|
||||||
'deepsea', help='Create a release build of DeepSea.')
|
help="Create a release build using the provided json file.")
|
||||||
parser_kosmos.add_argument('output', help='Zip file to create.')
|
parser.add_argument(
|
||||||
parser_kosmos.set_defaults(command=common.Command.Kosmos)
|
"output",
|
||||||
|
default=None,
|
||||||
# SDSetup subcommands
|
type=str,
|
||||||
parser_sdsetup = subparsers.add_parser(
|
help='Zip file to create.')
|
||||||
'sdsetup', help='Create a DeepSea modules for SDSetup.')
|
|
||||||
parser_sdsetup.add_argument(
|
|
||||||
'output', help='Directory to output modules to.')
|
|
||||||
parser_sdsetup.add_argument(
|
|
||||||
'-a', '--auto',
|
|
||||||
action='store_true',
|
|
||||||
default=False,
|
|
||||||
help='Perform an auto build.')
|
|
||||||
parser_sdsetup.set_defaults(command=common.Command.SDSetup)
|
|
||||||
|
|
||||||
# Kosmos Minimal subcommands
|
|
||||||
parser_kosmos = subparsers.add_parser(
|
|
||||||
'deepsea-mini', help='Create a release build of DeepSea Minimal.')
|
|
||||||
parser_kosmos.add_argument('output', help='Zip file to create.')
|
|
||||||
parser_kosmos.set_defaults(command=common.Command.KosmosMinimal)
|
|
||||||
|
|
||||||
# Kosmos with patches subcommands
|
|
||||||
parser_kosmos_patches = subparsers.add_parser(
|
|
||||||
'deepsea-patches', help='Create a release build of DeepSea with patches.')
|
|
||||||
parser_kosmos_patches.add_argument('output', help='Zip file to create.')
|
|
||||||
parser_kosmos_patches.set_defaults(command=common.Command.KosmosPatches)
|
|
||||||
|
|
||||||
# Kosmos minimal with patches subcommands
|
|
||||||
parser_kosmos_minimal_patches = subparsers.add_parser(
|
|
||||||
'deepsea-mini-patches', help='Create a release build of DeepSea Minimal with patches.')
|
|
||||||
parser_kosmos_minimal_patches.add_argument('output', help='Zip file to create.')
|
|
||||||
parser_kosmos_minimal_patches.set_defaults(command=common.Command.KosmosMinimalPatches)
|
|
||||||
|
|
||||||
# Parse arguments
|
# Parse arguments
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
if not hasattr(args, 'command'):
|
|
||||||
parser.print_help()
|
|
||||||
sys.exit()
|
|
||||||
|
|
||||||
return args
|
return args
|
||||||
|
|
||||||
|
|
||||||
|
@ -90,18 +59,9 @@ def get_deepsea_version(args):
|
||||||
return config.version
|
return config.version
|
||||||
|
|
||||||
|
|
||||||
def init_version_messages(args, kosmos_version):
|
def init_version_messages(package_content, kosmos_version):
|
||||||
if args.command == common.Command.Kosmos:
|
pkg_name = package_content['package_name']
|
||||||
return [f'DeepSea {kosmos_version} built with:']
|
return [f'{pkg_name} {kosmos_version} built with:']
|
||||||
elif args.command == common.Command.SDSetup and not args.auto:
|
|
||||||
return ['SDSetup Modules built with:']
|
|
||||||
elif args.command == common.Command.KosmosMinimal:
|
|
||||||
return [f'DeepSea Minimal {kosmos_version} built with:']
|
|
||||||
elif args.command == common.Command.KosmosPatches:
|
|
||||||
return [f'DeepSea with Patches {kosmos_version} built with:']
|
|
||||||
elif args.command == common.Command.KosmosMinimalPatches:
|
|
||||||
return [f'DeepSea Minimal with Patches {kosmos_version} built with:']
|
|
||||||
return []
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
@ -115,17 +75,20 @@ if __name__ == '__main__':
|
||||||
if hasattr(args, 'auto'):
|
if hasattr(args, 'auto'):
|
||||||
auto_build = args.auto
|
auto_build = args.auto
|
||||||
|
|
||||||
version_messages = init_version_messages(args, deepsea_version)
|
with open(args.package_file,'r') as pkgfile:
|
||||||
|
package_content = json.load(pkgfile)
|
||||||
|
|
||||||
|
version_messages = init_version_messages(package_content, deepsea_version)
|
||||||
|
|
||||||
build_messages = modules.build(
|
build_messages = modules.build(
|
||||||
temp_directory, deepsea_version, args.command, auto_build)
|
temp_directory, deepsea_version, package_content, auto_build)
|
||||||
|
|
||||||
common.delete(args.output)
|
common.delete(args.output)
|
||||||
|
|
||||||
if build_messages is not None:
|
if build_messages is not None:
|
||||||
version_messages += build_messages
|
version_messages += build_messages
|
||||||
|
|
||||||
if args.command == common.Command.SDSetup:
|
if package_content['is_sdsetup']:
|
||||||
common.move(temp_directory, args.output)
|
common.move(temp_directory, args.output)
|
||||||
else:
|
else:
|
||||||
shutil.make_archive(
|
shutil.make_archive(
|
||||||
|
|
|
@ -25,13 +25,6 @@ import re
|
||||||
import shutil
|
import shutil
|
||||||
import uuid
|
import uuid
|
||||||
|
|
||||||
class Command(enum.Enum):
|
|
||||||
Kosmos = 0
|
|
||||||
SDSetup = 1
|
|
||||||
KosmosMinimal = 2
|
|
||||||
KosmosPatches = 3
|
|
||||||
KosmosMinimalPatches = 4
|
|
||||||
|
|
||||||
class GitService(enum.Enum):
|
class GitService(enum.Enum):
|
||||||
GitHub = 0
|
GitHub = 0
|
||||||
GitLab = 1
|
GitLab = 1
|
||||||
|
|
|
@ -1,64 +1,22 @@
|
||||||
[
|
{
|
||||||
{
|
"package_name": "DeepSea Minimal with Patches",
|
||||||
"name": "Atmosphère",
|
"is_sdsetup": false,
|
||||||
"download_function_name": "download_atmosphere",
|
"modules": [
|
||||||
"git": {
|
{
|
||||||
"service": 0,
|
"module_name": "Atmosphère",
|
||||||
"org_name": "Atmosphere-NX",
|
"parameters": null
|
||||||
"repo_name": "Atmosphere",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*atmosphere.*\\.zip",
|
|
||||||
".*fusee.*\\.bin"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Hekate",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Hekate",
|
|
||||||
"download_function_name": "download_hekate",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "CTCaer",
|
|
||||||
"repo_name": "hekate",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*hekate.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "PKG2-Patches",
|
||||||
{
|
"parameters": null
|
||||||
"name": "PKG2-Patches",
|
|
||||||
"download_function_name": "download_pkg2_patches",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "HarukoNX",
|
|
||||||
"repo_name": "PKG2-Patches",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*fusee.*\\.zip",
|
|
||||||
".*hekate.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "ES-Patches",
|
||||||
{
|
"parameters": null
|
||||||
"name": "ES-Patches",
|
}
|
||||||
"download_function_name": "download_es_patches",
|
]
|
||||||
"git": {
|
}
|
||||||
"service": 0,
|
|
||||||
"org_name": "HarukoNX",
|
|
||||||
"repo_name": "ES-Patches",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
|
||||||
"sdsetup_module_name": null
|
|
||||||
}
|
|
||||||
]
|
|
|
@ -1,33 +1,14 @@
|
||||||
[
|
{
|
||||||
{
|
"package_name": "DeepSea Minimal",
|
||||||
"name": "Atmosphère",
|
"is_sdsetup": false,
|
||||||
"download_function_name": "download_atmosphere",
|
"modules": [
|
||||||
"git": {
|
{
|
||||||
"service": 0,
|
"module_name": "Atmosphère",
|
||||||
"org_name": "Atmosphere-NX",
|
"parameters": null
|
||||||
"repo_name": "Atmosphere",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*atmosphere.*\\.zip",
|
|
||||||
".*fusee.*\\.bin"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Hekate",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Hekate",
|
}
|
||||||
"download_function_name": "download_hekate",
|
]
|
||||||
"git": {
|
}
|
||||||
"service": 0,
|
|
||||||
"org_name": "CTCaer",
|
|
||||||
"repo_name": "hekate",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*hekate.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
|
||||||
"sdsetup_module_name": null
|
|
||||||
}
|
|
||||||
]
|
|
|
@ -1,365 +1,106 @@
|
||||||
[
|
{
|
||||||
{
|
"package_name": "DeepSea with Patches",
|
||||||
"name": "Atmosphère",
|
"is_sdsetup": false,
|
||||||
"download_function_name": "download_atmosphere",
|
"modules": [
|
||||||
"git": {
|
{
|
||||||
"service": 0,
|
"module_name": "Atmosphère",
|
||||||
"org_name": "Atmosphere-NX",
|
"parameters": null
|
||||||
"repo_name": "Atmosphere",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*atmosphere.*\\.zip",
|
|
||||||
".*fusee.*\\.bin"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Hekate",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Hekate",
|
|
||||||
"download_function_name": "download_hekate",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "CTCaer",
|
|
||||||
"repo_name": "hekate",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*hekate.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Hekate Icons",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Hekate Icons",
|
|
||||||
"download_function_name": "download_hekate_icons",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "NicholeMattera",
|
|
||||||
"repo_name": "Hekate-Icons",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Homebrew App Store",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Homebrew App Store",
|
|
||||||
"download_function_name": "download_appstore",
|
|
||||||
"git": {
|
|
||||||
"service": 1,
|
|
||||||
"org_name": "4TU",
|
|
||||||
"repo_name": "hb-appstore",
|
|
||||||
"asset_patterns": [
|
|
||||||
"\\[.*\\.nro\\.zip\\]\\((.*\\.nro\\.zip)\\)"
|
|
||||||
],
|
|
||||||
"group": 0,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "EdiZon",
|
||||||
{
|
"parameters": null
|
||||||
"name": "EdiZon",
|
|
||||||
"download_function_name": "download_edizon",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "EdiZon",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro",
|
|
||||||
".*\\.ovl"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Emuiibo",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Emuiibo",
|
|
||||||
"download_function_name": "download_emuiibo",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "XorTroll",
|
|
||||||
"repo_name": "emuiibo",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*emuiibo.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Goldleaf",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Goldleaf",
|
|
||||||
"download_function_name": "download_goldleaf",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "XorTroll",
|
|
||||||
"repo_name": "Goldleaf",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Awoo Installer",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Awoo Installer",
|
|
||||||
"download_function_name": "download_awoo",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "Huntereb",
|
|
||||||
"repo_name": "Awoo-Installer",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "DeepSea Toolbox",
|
||||||
{
|
"parameters": null
|
||||||
"name": "DeepSea Toolbox",
|
|
||||||
"download_function_name": "download_deepsea_toolbox",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "Team-Neptune",
|
|
||||||
"repo_name": "DeepSea-Toolbox",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "DeepSea Updater",
|
||||||
{
|
"parameters": null
|
||||||
"name": "DeepSea Updater",
|
|
||||||
"download_function_name": "download_kosmos_updater",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "Team-Neptune",
|
|
||||||
"repo_name": "DeepSea-Updater",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "DeepSea Cleaner",
|
||||||
{
|
"parameters": null
|
||||||
"name": "DeepSea Cleaner",
|
|
||||||
"download_function_name": "download_deepsea_cleaner",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "Team-Neptune",
|
|
||||||
"repo_name": "DeepSea-Cleaner",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "JKSV",
|
||||||
{
|
"parameters": null
|
||||||
"name": "JKSV",
|
|
||||||
"download_function_name": "download_jksv",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "J-D-K",
|
|
||||||
"repo_name": "JKSV",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "NXMTP",
|
||||||
{
|
"parameters": null
|
||||||
"name": "NXMTP",
|
|
||||||
"download_function_name": "download_nxmtp",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "liuervehc",
|
|
||||||
"repo_name": "nxmtp",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "ldn_mitm",
|
||||||
{
|
"parameters": null
|
||||||
"name": "ldn_mitm",
|
|
||||||
"download_function_name": "download_ldn_mitm",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "spacemeowx2",
|
|
||||||
"repo_name": "ldn_mitm",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*ldn_mitm.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Lockpick_RCM",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Lockpick_RCM",
|
|
||||||
"download_function_name": "download_lockpick_rcm",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "shchmue",
|
|
||||||
"repo_name": "Lockpick_RCM",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.bin"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "nx-ovlloader",
|
||||||
{
|
"parameters": null
|
||||||
"name": "nx-ovlloader",
|
|
||||||
"download_function_name": "download_nx_ovlloader",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "nx-ovlloader",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "ovlSysModules",
|
||||||
{
|
"parameters": null
|
||||||
"name": "ovlSysModules",
|
|
||||||
"download_function_name": "download_ovl_sysmodules",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "ovl-sysmodules",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.ovl"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Status Monitor Overlay",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Status Monitor Overlay",
|
|
||||||
"download_function_name": "download_status_monitor_overlay",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "masagrator",
|
|
||||||
"repo_name": "Status-Monitor-Overlay",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.ovl"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "sys-clk",
|
||||||
{
|
"parameters": null
|
||||||
"name": "sys-clk",
|
|
||||||
"download_function_name": "download_sys_clk",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "retronx-team",
|
|
||||||
"repo_name": "sys-clk",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*sys-clk-.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "sys-clk-ovl",
|
||||||
{
|
"parameters": null
|
||||||
"name": "sys-con",
|
|
||||||
"download_function_name": "download_sys_con",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "cathery",
|
|
||||||
"repo_name": "sys-con",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*sys-con-.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "sys-con",
|
||||||
{
|
"parameters": null
|
||||||
"name": "sys-ftpd-light",
|
|
||||||
"download_function_name": "download_sys_ftpd_light",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "cathery",
|
|
||||||
"repo_name": "sys-ftpd-light",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*sys-ftpd-light.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "sys-ftpd-light",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Tesla-Menu",
|
|
||||||
"download_function_name": "download_tesla_menu",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "Tesla-Menu",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Tesla-Menu",
|
||||||
{
|
"parameters": null
|
||||||
"name": "PKG2-Patches",
|
|
||||||
"download_function_name": "download_pkg2_patches",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "HarukoNX",
|
|
||||||
"repo_name": "PKG2-Patches",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*fusee.*\\.zip",
|
|
||||||
".*hekate.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "PKG2-Patches",
|
||||||
{
|
"parameters": null
|
||||||
"name": "ES-Patches",
|
|
||||||
"download_function_name": "download_es_patches",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "HarukoNX",
|
|
||||||
"repo_name": "ES-Patches",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
}
|
"module_name": "ES-Patches",
|
||||||
]
|
"parameters": null
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
|
@ -1,334 +1,98 @@
|
||||||
[
|
{
|
||||||
{
|
"package_name": "DeepSea",
|
||||||
"name": "Atmosphère",
|
"is_sdsetup": false,
|
||||||
"download_function_name": "download_atmosphere",
|
"modules": [
|
||||||
"git": {
|
{
|
||||||
"service": 0,
|
"module_name": "Atmosphère",
|
||||||
"org_name": "Atmosphere-NX",
|
"parameters": null
|
||||||
"repo_name": "Atmosphere",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*atmosphere.*\\.zip",
|
|
||||||
".*fusee.*\\.bin"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Hekate",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Hekate",
|
|
||||||
"download_function_name": "download_hekate",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "CTCaer",
|
|
||||||
"repo_name": "hekate",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*hekate.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Hekate Icons",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Hekate Icons",
|
|
||||||
"download_function_name": "download_hekate_icons",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "NicholeMattera",
|
|
||||||
"repo_name": "Hekate-Icons",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Homebrew App Store",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Homebrew App Store",
|
|
||||||
"download_function_name": "download_appstore",
|
|
||||||
"git": {
|
|
||||||
"service": 1,
|
|
||||||
"org_name": "4TU",
|
|
||||||
"repo_name": "hb-appstore",
|
|
||||||
"asset_patterns": [
|
|
||||||
"\\[.*\\.nro\\.zip\\]\\((.*\\.nro\\.zip)\\)"
|
|
||||||
],
|
|
||||||
"group": 0,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "EdiZon",
|
||||||
{
|
"parameters": null
|
||||||
"name": "EdiZon",
|
|
||||||
"download_function_name": "download_edizon",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "EdiZon",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro",
|
|
||||||
".*\\.ovl"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Emuiibo",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Emuiibo",
|
|
||||||
"download_function_name": "download_emuiibo",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "XorTroll",
|
|
||||||
"repo_name": "emuiibo",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*emuiibo.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Goldleaf",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Goldleaf",
|
|
||||||
"download_function_name": "download_goldleaf",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "XorTroll",
|
|
||||||
"repo_name": "Goldleaf",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Awoo Installer",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Awoo Installer",
|
|
||||||
"download_function_name": "download_awoo",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "Huntereb",
|
|
||||||
"repo_name": "Awoo-Installer",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "DeepSea Toolbox",
|
||||||
{
|
"parameters": null
|
||||||
"name": "DeepSea Toolbox",
|
|
||||||
"download_function_name": "download_deepsea_toolbox",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "Team-Neptune",
|
|
||||||
"repo_name": "DeepSea-Toolbox",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "DeepSea Updater",
|
||||||
{
|
"parameters": null
|
||||||
"name": "DeepSea Updater",
|
|
||||||
"download_function_name": "download_kosmos_updater",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "Team-Neptune",
|
|
||||||
"repo_name": "DeepSea-Updater",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "DeepSea Cleaner",
|
||||||
{
|
"parameters": null
|
||||||
"name": "DeepSea Cleaner",
|
|
||||||
"download_function_name": "download_deepsea_cleaner",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "Team-Neptune",
|
|
||||||
"repo_name": "DeepSea-Cleaner",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "JKSV",
|
||||||
{
|
"parameters": null
|
||||||
"name": "JKSV",
|
|
||||||
"download_function_name": "download_jksv",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "J-D-K",
|
|
||||||
"repo_name": "JKSV",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "NXMTP",
|
||||||
{
|
"parameters": null
|
||||||
"name": "NXMTP",
|
|
||||||
"download_function_name": "download_nxmtp",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "liuervehc",
|
|
||||||
"repo_name": "nxmtp",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "ldn_mitm",
|
||||||
{
|
"parameters": null
|
||||||
"name": "ldn_mitm",
|
|
||||||
"download_function_name": "download_ldn_mitm",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "spacemeowx2",
|
|
||||||
"repo_name": "ldn_mitm",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*ldn_mitm.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Lockpick_RCM",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Lockpick_RCM",
|
|
||||||
"download_function_name": "download_lockpick_rcm",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "shchmue",
|
|
||||||
"repo_name": "Lockpick_RCM",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.bin"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "nx-ovlloader",
|
||||||
{
|
"parameters": null
|
||||||
"name": "nx-ovlloader",
|
|
||||||
"download_function_name": "download_nx_ovlloader",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "nx-ovlloader",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "ovlSysModules",
|
||||||
{
|
"parameters": null
|
||||||
"name": "ovlSysModules",
|
|
||||||
"download_function_name": "download_ovl_sysmodules",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "ovl-sysmodules",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.ovl"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "Status Monitor Overlay",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Status Monitor Overlay",
|
|
||||||
"download_function_name": "download_status_monitor_overlay",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "masagrator",
|
|
||||||
"repo_name": "Status-Monitor-Overlay",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.ovl"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "sys-clk",
|
||||||
{
|
"parameters": null
|
||||||
"name": "sys-clk",
|
|
||||||
"download_function_name": "download_sys_clk",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "retronx-team",
|
|
||||||
"repo_name": "sys-clk",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*sys-clk-.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "sys-clk-ovl",
|
||||||
{
|
"parameters": null
|
||||||
"name": "sys-con",
|
|
||||||
"download_function_name": "download_sys_con",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "cathery",
|
|
||||||
"repo_name": "sys-con",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*sys-con-.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "sys-con",
|
||||||
{
|
"parameters": null
|
||||||
"name": "sys-ftpd-light",
|
|
||||||
"download_function_name": "download_sys_ftpd_light",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "cathery",
|
|
||||||
"repo_name": "sys-ftpd-light",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*sys-ftpd-light.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
},
|
"module_name": "sys-ftpd-light",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Tesla-Menu",
|
|
||||||
"download_function_name": "download_tesla_menu",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "Tesla-Menu",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": null
|
{
|
||||||
}
|
"module_name": "Tesla-Menu",
|
||||||
]
|
"parameters": null
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
|
@ -183,7 +183,7 @@ def get_version(module, release, index):
|
||||||
return groups[0]
|
return groups[0]
|
||||||
|
|
||||||
|
|
||||||
def download_atmosphere(module, temp_directory, deepsea_version, deepsea_build):
|
def download_atmosphere(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -214,7 +214,7 @@ def download_atmosphere(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_hekate(module, temp_directory, deepsea_version, deepsea_build):
|
def download_hekate(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -254,7 +254,7 @@ def download_hekate(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_hekate_icons(module, temp_directory, deepsea_version, deepsea_build):
|
def download_hekate_icons(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -279,7 +279,7 @@ def download_hekate_icons(module, temp_directory, deepsea_version, deepsea_build
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_appstore(module, temp_directory, deepsea_version, deepsea_build):
|
def download_appstore(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -296,7 +296,7 @@ def download_appstore(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_edizon(module, temp_directory, deepsea_version, deepsea_build):
|
def download_edizon(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -316,7 +316,7 @@ def download_edizon(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_emuiibo(module, temp_directory, deepsea_version, deepsea_build):
|
def download_emuiibo(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -342,7 +342,7 @@ def download_emuiibo(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_goldleaf(module, temp_directory, deepsea_version, deepsea_build):
|
def download_goldleaf(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -355,7 +355,7 @@ def download_goldleaf(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_deepsea_cleaner(module, temp_directory, deepsea_version, deepsea_build):
|
def download_deepsea_cleaner(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -367,7 +367,7 @@ def download_deepsea_cleaner(module, temp_directory, deepsea_version, deepsea_bu
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_deepsea_toolbox(module, temp_directory, deepsea_version, deepsea_build):
|
def download_deepsea_toolbox(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -384,7 +384,7 @@ def download_deepsea_toolbox(module, temp_directory, deepsea_version, deepsea_bu
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_kosmos_updater(module, temp_directory, deepsea_version, deepsea_build):
|
def download_kosmos_updater(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -401,7 +401,7 @@ def download_kosmos_updater(module, temp_directory, deepsea_version, deepsea_bui
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_ldn_mitm(module, temp_directory, deepsea_version, deepsea_build):
|
def download_ldn_mitm(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -420,7 +420,7 @@ def download_ldn_mitm(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_lockpick(module, temp_directory, deepsea_version, deepsea_build):
|
def download_lockpick(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -433,7 +433,7 @@ def download_lockpick(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_lockpick_rcm(module, temp_directory, deepsea_version, deepsea_build):
|
def download_lockpick_rcm(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
payload_path = download_asset(module, release, 0)
|
payload_path = download_asset(module, release, 0)
|
||||||
if payload_path is None:
|
if payload_path is None:
|
||||||
|
@ -449,7 +449,7 @@ def download_lockpick_rcm(module, temp_directory, deepsea_version, deepsea_build
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_nxdumptool(module, temp_directory, deepsea_version, deepsea_build):
|
def download_nxdumptool(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -462,7 +462,7 @@ def download_nxdumptool(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_nx_ovlloader(module, temp_directory, deepsea_version, deepsea_build):
|
def download_nx_ovlloader(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -476,7 +476,7 @@ def download_nx_ovlloader(module, temp_directory, deepsea_version, deepsea_build
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_ovl_sysmodules(module, temp_directory, deepsea_version, deepsea_build):
|
def download_ovl_sysmodules(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -489,7 +489,7 @@ def download_ovl_sysmodules(module, temp_directory, deepsea_version, deepsea_bui
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_status_monitor_overlay(module, temp_directory, deepsea_version, deepsea_build):
|
def download_status_monitor_overlay(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -502,7 +502,7 @@ def download_status_monitor_overlay(module, temp_directory, deepsea_version, dee
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_sys_clk(module, temp_directory, deepsea_version, deepsea_build):
|
def download_sys_clk(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -522,7 +522,19 @@ def download_sys_clk(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_sys_con(module, temp_directory, deepsea_version, deepsea_build):
|
def download_sys_clk_ovl(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
|
release = get_latest_release(module)
|
||||||
|
app_path = download_asset(module, release, 0)
|
||||||
|
if app_path is None:
|
||||||
|
return None
|
||||||
|
|
||||||
|
common.move(app_path, temp_directory.joinpath(
|
||||||
|
'switch/.overlays/sys-clk-Overlay.ovl'))
|
||||||
|
|
||||||
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
|
def download_sys_con(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -539,7 +551,7 @@ def download_sys_con(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_sys_ftpd_light(module, temp_directory, deepsea_version, deepsea_build):
|
def download_sys_ftpd_light(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -556,7 +568,7 @@ def download_sys_ftpd_light(module, temp_directory, deepsea_version, deepsea_bui
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_tesla_menu(module, temp_directory, deepsea_version, deepsea_build):
|
def download_tesla_menu(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
bundle_path = download_asset(module, release, 0)
|
bundle_path = download_asset(module, release, 0)
|
||||||
if bundle_path is None:
|
if bundle_path is None:
|
||||||
|
@ -570,7 +582,7 @@ def download_tesla_menu(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_awoo(module, temp_directory, deepsea_version, deepsea_build):
|
def download_awoo(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -582,7 +594,7 @@ def download_awoo(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_jksv(module, temp_directory, deepsea_version, deepsea_build):
|
def download_jksv(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -595,7 +607,7 @@ def download_jksv(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_nxmtp(module, temp_directory, deepsea_version, deepsea_build):
|
def download_nxmtp(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
app_path = download_asset(module, release, 0)
|
app_path = download_asset(module, release, 0)
|
||||||
if app_path is None:
|
if app_path is None:
|
||||||
|
@ -608,7 +620,7 @@ def download_nxmtp(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_pkg2_patches(module, temp_directory, deepsea_version, deepsea_build):
|
def download_pkg2_patches(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
fusee_patches_path = download_asset(module, release, 0)
|
fusee_patches_path = download_asset(module, release, 0)
|
||||||
if fusee_patches_path is None:
|
if fusee_patches_path is None:
|
||||||
|
@ -635,7 +647,7 @@ def download_pkg2_patches(module, temp_directory, deepsea_version, deepsea_build
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def download_es_patches(module, temp_directory, deepsea_version, deepsea_build):
|
def download_es_patches(module, temp_directory, deepsea_version, parameters, deepsea_build):
|
||||||
release = get_latest_release(module)
|
release = get_latest_release(module)
|
||||||
es_patches_path = download_asset(module, release, 0)
|
es_patches_path = download_asset(module, release, 0)
|
||||||
if es_patches_path is None:
|
if es_patches_path is None:
|
||||||
|
@ -649,60 +661,67 @@ def download_es_patches(module, temp_directory, deepsea_version, deepsea_build):
|
||||||
return get_version(module, release, 0)
|
return get_version(module, release, 0)
|
||||||
|
|
||||||
|
|
||||||
def build(temp_directory, deepsea_version, command, auto_build):
|
def build(temp_directory, deepsea_version, package_content, auto_build):
|
||||||
results = []
|
results = []
|
||||||
|
|
||||||
modules_filename = 'deepsea.json'
|
# Open up modules-definitions.json first and load all modules
|
||||||
if command == common.Command.KosmosMinimal:
|
mods_map = {}
|
||||||
modules_filename = 'deepsea-minimal.json'
|
with open("Modules/modules-definitions.json") as mod_json_file:
|
||||||
elif command == common.Command.SDSetup:
|
mods_data = json.load(mod_json_file)
|
||||||
modules_filename = 'sdsetup.json'
|
|
||||||
elif command == common.Command.KosmosPatches:
|
for module_def in mods_data:
|
||||||
modules_filename = "deepsea-patches.json"
|
name = module_def['name']
|
||||||
elif command == common.Command.KosmosMinimalPatches:
|
if name in mods_map:
|
||||||
modules_filename = "deepsea-minimal-patches.json"
|
raise Exception(
|
||||||
|
'Multiple definitions of module with name '+name)
|
||||||
|
mods_map[name] = module_def
|
||||||
|
|
||||||
# Open up modules.json
|
# Open up modules.json
|
||||||
with open(modules_filename) as json_file:
|
data = package_content['modules']
|
||||||
# Parse JSON
|
|
||||||
data = json.load(json_file)
|
|
||||||
|
|
||||||
# Loop through modules
|
# Loop through modules
|
||||||
for module in data:
|
for mod_entry in data:
|
||||||
# Running a SDSetup Build
|
mod_id = mod_entry['module_name']
|
||||||
if command == common.Command.SDSetup:
|
if mod_id not in mods_map:
|
||||||
# Only show prompts when it's not an auto build.
|
raise Exception('Module with name '+mod_id+' does not exist')
|
||||||
if not auto_build:
|
|
||||||
print(f'Downloading {module["name"]}...')
|
|
||||||
|
|
||||||
# Make sure module directory is created.
|
module = mods_map[mod_id]
|
||||||
module_directory = temp_directory.joinpath(
|
parameters = mod_entry.get('parameters')
|
||||||
module['sdsetup_module_name'])
|
|
||||||
common.mkdir(module_directory)
|
|
||||||
|
|
||||||
# Download the module.
|
# Running a SDSetup Build
|
||||||
download = globals()[module['download_function_name']]
|
if package_content['is_sdsetup']:
|
||||||
version = download(module, module_directory,
|
# Only show prompts when it's not an auto build.
|
||||||
deepsea_version, False)
|
if not auto_build:
|
||||||
if version is None:
|
|
||||||
return None
|
|
||||||
|
|
||||||
# Auto builds have a different prompt at the end for parsing.
|
|
||||||
if auto_build:
|
|
||||||
results.append(
|
|
||||||
f'{module["sdsetup_module_name"]}:{version}')
|
|
||||||
else:
|
|
||||||
results.append(f' {module["name"]} - {version}')
|
|
||||||
|
|
||||||
# Running a Kosmos Build
|
|
||||||
else:
|
|
||||||
# Download the module.
|
|
||||||
print(f'Downloading {module["name"]}...')
|
print(f'Downloading {module["name"]}...')
|
||||||
download = globals()[module['download_function_name']]
|
|
||||||
version = download(module, temp_directory,
|
# Make sure module directory is created.
|
||||||
deepsea_version, True)
|
module_directory = temp_directory.joinpath(
|
||||||
if version is None:
|
module['sdsetup_module_name'])
|
||||||
return None
|
common.mkdir(module_directory)
|
||||||
|
|
||||||
|
# Download the module.
|
||||||
|
download = globals()[module['download_function_name']]
|
||||||
|
version = download(module, module_directory,
|
||||||
|
deepsea_version, parameters, False)
|
||||||
|
if version is None:
|
||||||
|
return None
|
||||||
|
|
||||||
|
# Auto builds have a different prompt at the end for parsing.
|
||||||
|
if auto_build:
|
||||||
|
results.append(
|
||||||
|
f'{module["sdsetup_module_name"]}:{version}')
|
||||||
|
else:
|
||||||
results.append(f' {module["name"]} - {version}')
|
results.append(f' {module["name"]} - {version}')
|
||||||
|
|
||||||
|
# Running a Kosmos Build
|
||||||
|
else:
|
||||||
|
# Download the module.
|
||||||
|
print(f'Downloading {module["name"]}...')
|
||||||
|
download = globals()[module['download_function_name']]
|
||||||
|
version = download(module, temp_directory,
|
||||||
|
deepsea_version, parameters, True)
|
||||||
|
if version is None:
|
||||||
|
return None
|
||||||
|
results.append(f' {module["name"]} - {version}')
|
||||||
|
|
||||||
return results
|
return results
|
||||||
|
|
|
@ -1,243 +1,70 @@
|
||||||
[
|
{
|
||||||
{
|
"package_name": "SDSetup",
|
||||||
"name": "Atmosphère",
|
"is_sdsetup": true,
|
||||||
"download_function_name": "download_atmosphere",
|
"modules": [
|
||||||
"git": {
|
{
|
||||||
"service": 0,
|
"module_name": "Atmosphère",
|
||||||
"org_name": "Atmosphere-NX",
|
"parameters": null
|
||||||
"repo_name": "Atmosphere",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*atmosphere.*\\.zip",
|
|
||||||
".*fusee.*\\.bin"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "must_have"
|
{
|
||||||
},
|
"module_name": "Hekate",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Hekate",
|
|
||||||
"download_function_name": "download_hekate",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "CTCaer",
|
|
||||||
"repo_name": "hekate",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*hekate.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "hekate"
|
{
|
||||||
},
|
"module_name": "Hekate Icons",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Hekate Icons",
|
|
||||||
"download_function_name": "download_hekate_icons",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "NicholeMattera",
|
|
||||||
"repo_name": "Hekate-Icons",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "hekate_icons"
|
{
|
||||||
},
|
"module_name": "Emuiibo",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Emuiibo",
|
|
||||||
"download_function_name": "download_emuiibo",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "XorTroll",
|
|
||||||
"repo_name": "emuiibo",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*emuiibo.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "emuiibo"
|
{
|
||||||
},
|
"module_name": "Kosmos Cleaner",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Kosmos Cleaner",
|
|
||||||
"download_function_name": "download_kosmos_cleaner",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "AtlasNX",
|
|
||||||
"repo_name": "Kosmos-Cleaner",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "kosmos_cleaner"
|
{
|
||||||
},
|
"module_name": "Kosmos Toolbox",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Kosmos Toolbox",
|
|
||||||
"download_function_name": "download_kosmos_toolbox",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "AtlasNX",
|
|
||||||
"repo_name": "Kosmos-Toolbox",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "kosmos_toolbox"
|
{
|
||||||
},
|
"module_name": "Kosmos Updater",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Kosmos Updater",
|
|
||||||
"download_function_name": "download_kosmos_updater",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "AtlasNX",
|
|
||||||
"repo_name": "Kosmos-Updater",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.nro"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "kosmos_updater"
|
{
|
||||||
},
|
"module_name": "ldn_mitm",
|
||||||
{
|
"parameters": null
|
||||||
"name": "ldn_mitm",
|
|
||||||
"download_function_name": "download_ldn_mitm",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "spacemeowx2",
|
|
||||||
"repo_name": "ldn_mitm",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*ldn_mitm.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "ldn_mitm"
|
{
|
||||||
},
|
"module_name": "Lockpick_RCM",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Lockpick_RCM",
|
|
||||||
"download_function_name": "download_lockpick_rcm",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "shchmue",
|
|
||||||
"repo_name": "Lockpick_RCM",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.bin"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "lockpick_rcm"
|
{
|
||||||
},
|
"module_name": "nx-ovlloader",
|
||||||
{
|
"parameters": null
|
||||||
"name": "nx-ovlloader",
|
|
||||||
"download_function_name": "download_nx_ovlloader",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "nx-ovlloader",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "nx_ovlloader"
|
{
|
||||||
},
|
"module_name": "ovlSysModules",
|
||||||
{
|
"parameters": null
|
||||||
"name": "ovlSysModules",
|
|
||||||
"download_function_name": "download_ovl_sysmodules",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "ovl-sysmodules",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.ovl"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "ovl_sysmodules"
|
{
|
||||||
},
|
"module_name": "Status Monitor Overlay",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Status Monitor Overlay",
|
|
||||||
"download_function_name": "download_status_monitor_overlay",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "masagrator",
|
|
||||||
"repo_name": "Status-Monitor-Overlay",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.ovl"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "status_monitor_overlay"
|
{
|
||||||
},
|
"module_name": "sys-clk",
|
||||||
{
|
"parameters": null
|
||||||
"name": "sys-clk",
|
|
||||||
"download_function_name": "download_sys_clk",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "retronx-team",
|
|
||||||
"repo_name": "sys-clk",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*sys-clk-.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "sys_clk"
|
{
|
||||||
},
|
"module_name": "sys-con",
|
||||||
{
|
"parameters": null
|
||||||
"name": "sys-con",
|
|
||||||
"download_function_name": "download_sys_con",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "cathery",
|
|
||||||
"repo_name": "sys-con",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*sys-con-.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "sys_con"
|
{
|
||||||
},
|
"module_name": "sys-ftpd-light",
|
||||||
{
|
"parameters": null
|
||||||
"name": "sys-ftpd-light",
|
|
||||||
"download_function_name": "download_sys_ftpd_light",
|
|
||||||
"git": {
|
|
||||||
"service": 0,
|
|
||||||
"org_name": "cathery",
|
|
||||||
"repo_name": "sys-ftpd-light",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*sys-ftpd-light.*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
},
|
||||||
"sdsetup_module_name": "sys_ftpd"
|
{
|
||||||
},
|
"module_name": "Tesla-Menu",
|
||||||
{
|
"parameters": null
|
||||||
"name": "Tesla-Menu",
|
}
|
||||||
"download_function_name": "download_tesla_menu",
|
]
|
||||||
"git": {
|
}
|
||||||
"service": 0,
|
|
||||||
"org_name": "WerWolv",
|
|
||||||
"repo_name": "Tesla-Menu",
|
|
||||||
"asset_patterns": [
|
|
||||||
".*\\.zip"
|
|
||||||
],
|
|
||||||
"group": null,
|
|
||||||
"version_pattern": null
|
|
||||||
},
|
|
||||||
"sdsetup_module_name": "tesla_menu"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
|
|
Reference in a new issue