Initial Commit
This commit is contained in:
139
.github/workflows/build-and-release.yml
vendored
Normal file
139
.github/workflows/build-and-release.yml
vendored
Normal file
@@ -0,0 +1,139 @@
|
||||
name: Build and Release
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '[0-9]+.[0-9]+.[0-9]+*' # Trigger on version tags like 1.0.0
|
||||
workflow_dispatch: # Allow manual trigger
|
||||
inputs:
|
||||
hotfix:
|
||||
description: 'Hotfix mode - update latest release instead of creating new one'
|
||||
required: false
|
||||
type: boolean
|
||||
default: false
|
||||
|
||||
jobs:
|
||||
build-and-release:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
permissions:
|
||||
contents: write # Required to create releases
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Make
|
||||
run: |
|
||||
# Make is pre-installed on Ubuntu, but ensure zip is available
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y zip rsync
|
||||
|
||||
- name: Verify GitHub CLI
|
||||
if: steps.get_version.outputs.hotfix == 'true'
|
||||
run: |
|
||||
gh --version || echo "GitHub CLI not available"
|
||||
|
||||
- name: Build zip package
|
||||
run: make zip
|
||||
|
||||
- name: Get version from tag or use default
|
||||
id: get_version
|
||||
run: |
|
||||
if [ "${{ inputs.hotfix }}" = "true" ]; then
|
||||
echo "mode=hotfix" >> $GITHUB_OUTPUT
|
||||
echo "hotfix=true" >> $GITHUB_OUTPUT
|
||||
elif [ "${{ github.ref_type }}" = "tag" ]; then
|
||||
VERSION="${{ github.ref_name }}"
|
||||
IS_PRERELEASE="false"
|
||||
echo "version=$VERSION" >> $GITHUB_OUTPUT
|
||||
echo "tag_name=$VERSION" >> $GITHUB_OUTPUT
|
||||
echo "prerelease=$IS_PRERELEASE" >> $GITHUB_OUTPUT
|
||||
echo "hotfix=false" >> $GITHUB_OUTPUT
|
||||
else
|
||||
VERSION="dev-$(date +'%Y%m%d-%H%M%S')-${GITHUB_SHA::8}"
|
||||
IS_PRERELEASE="true"
|
||||
echo "version=$VERSION" >> $GITHUB_OUTPUT
|
||||
echo "tag_name=$VERSION" >> $GITHUB_OUTPUT
|
||||
echo "prerelease=$IS_PRERELEASE" >> $GITHUB_OUTPUT
|
||||
echo "hotfix=false" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Get latest release for hotfix
|
||||
if: steps.get_version.outputs.hotfix == 'true'
|
||||
id: get_latest_release
|
||||
run: |
|
||||
# Get the latest release (non-draft, non-prerelease)
|
||||
LATEST_RELEASE=$(gh api repos/${{ github.repository }}/releases/latest --jq '.tag_name' 2>/dev/null || echo "")
|
||||
if [ -z "$LATEST_RELEASE" ]; then
|
||||
echo "Error: No latest release found. Cannot perform hotfix."
|
||||
exit 1
|
||||
fi
|
||||
RELEASE_ID=$(gh api repos/${{ github.repository }}/releases/latest --jq '.id')
|
||||
echo "tag_name=$LATEST_RELEASE" >> $GITHUB_OUTPUT
|
||||
echo "release_id=$RELEASE_ID" >> $GITHUB_OUTPUT
|
||||
echo "Latest release: $LATEST_RELEASE (ID: $RELEASE_ID)"
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Delete existing asset if hotfix
|
||||
if: steps.get_version.outputs.hotfix == 'true'
|
||||
run: |
|
||||
ASSET_ID=$(gh api repos/${{ github.repository }}/releases/${{ steps.get_latest_release.outputs.release_id }}/assets --jq '.[] | select(.name == "OmniNX Downloader.zip") | .id' || echo "")
|
||||
if [ -n "$ASSET_ID" ]; then
|
||||
echo "Deleting existing asset (ID: $ASSET_ID)"
|
||||
gh api repos/${{ github.repository }}/releases/assets/$ASSET_ID -X DELETE
|
||||
echo "Waiting for asset deletion to complete..."
|
||||
sleep 2
|
||||
else
|
||||
echo "No existing asset found"
|
||||
fi
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Prepare release info
|
||||
id: release_info
|
||||
run: |
|
||||
if [ "${{ inputs.hotfix }}" = "true" ]; then
|
||||
echo "release_name=Release ${{ steps.get_latest_release.outputs.tag_name }} (Hotfix Update)" >> $GITHUB_OUTPUT
|
||||
RELEASE_BODY="**HOTFIX UPDATE** - Updated existing release"
|
||||
echo "release_body<<EOF" >> $GITHUB_OUTPUT
|
||||
echo "$RELEASE_BODY" >> $GITHUB_OUTPUT
|
||||
echo "EOF" >> $GITHUB_OUTPUT
|
||||
echo "release_tag=${{ steps.get_latest_release.outputs.tag_name }}" >> $GITHUB_OUTPUT
|
||||
echo "is_prerelease=false" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "release_name=Release ${{ steps.get_version.outputs.version }}" >> $GITHUB_OUTPUT
|
||||
RELEASE_BODY="Automated build of OmniNX Downloader"
|
||||
echo "release_body<<EOF" >> $GITHUB_OUTPUT
|
||||
echo "$RELEASE_BODY" >> $GITHUB_OUTPUT
|
||||
echo "EOF" >> $GITHUB_OUTPUT
|
||||
echo "release_tag=${{ steps.get_version.outputs.tag_name }}" >> $GITHUB_OUTPUT
|
||||
echo "is_prerelease=${{ steps.get_version.outputs.prerelease }}" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Create or Update Release (Normal Mode)
|
||||
if: steps.get_version.outputs.hotfix != 'true'
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
tag_name: ${{ steps.release_info.outputs.release_tag }}
|
||||
name: ${{ steps.release_info.outputs.release_name }}
|
||||
body: ${{ steps.release_info.outputs.release_body }}
|
||||
draft: false
|
||||
prerelease: ${{ steps.release_info.outputs.is_prerelease == 'true' }}
|
||||
files: ./output/OmniNX Downloader.zip
|
||||
|
||||
- name: Update Release (Hotfix Mode)
|
||||
if: steps.get_version.outputs.hotfix == 'true'
|
||||
run: |
|
||||
# Update release body
|
||||
gh release edit ${{ steps.get_latest_release.outputs.tag_name }} \
|
||||
--title "${{ steps.release_info.outputs.release_name }}" \
|
||||
--notes "${{ steps.release_info.outputs.release_body }}"
|
||||
|
||||
# Upload new asset
|
||||
gh release upload ${{ steps.get_latest_release.outputs.tag_name }} \
|
||||
"./output/OmniNX Downloader.zip" \
|
||||
--clobber
|
||||
env:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
46
.github/workflows/generate-release-files.yml
vendored
Normal file
46
.github/workflows/generate-release-files.yml
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
name: Generate Release Files
|
||||
|
||||
on:
|
||||
schedule:
|
||||
# Run daily at 00:00 UTC
|
||||
- cron: '0 0 * * *'
|
||||
workflow_dispatch: # Allow manual trigger
|
||||
|
||||
jobs:
|
||||
generate-releases:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
permissions:
|
||||
contents: write # Required to commit and push changes
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.x'
|
||||
|
||||
- name: Generate release files
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GH_API_TOKEN }}
|
||||
run: python3 generate_release_files.py
|
||||
|
||||
- name: Check for changes
|
||||
id: verify-changed-files
|
||||
run: |
|
||||
if [ -n "$(git status --porcelain)" ]; then
|
||||
echo "changed=true" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "changed=false" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Commit and push changes
|
||||
if: steps.verify-changed-files.outputs.changed == 'true'
|
||||
run: |
|
||||
git config --local user.email "action@github.com"
|
||||
git config --local user.name "GitHub Action"
|
||||
git add "include/*/RELEASE_*.ini"
|
||||
git commit -m "chore: update release files [skip ci]"
|
||||
git push
|
||||
23
Makefile
Normal file
23
Makefile
Normal file
@@ -0,0 +1,23 @@
|
||||
.PHONY: zip clean
|
||||
|
||||
zip: "./output/OmniNX Downloader.zip"
|
||||
|
||||
"./output/OmniNX Downloader.zip":
|
||||
@echo "Creating OmniNX Downloader.zip..."
|
||||
@mkdir -p output
|
||||
@rm -rf "output/OmniNX Downloader"
|
||||
@mkdir -p "output/OmniNX Downloader"
|
||||
@cp package.ini "output/OmniNX Downloader/"
|
||||
@rsync -av --exclude='RELEASE*.ini' --exclude='*.pyc' --exclude='__pycache__' --exclude='.DS_Store' include/ "output/OmniNX Downloader/include/"
|
||||
@cd output && zip -r "OmniNX Downloader.zip" "OmniNX Downloader" \
|
||||
-x "*.pyc" \
|
||||
-x "__pycache__/*" \
|
||||
-x ".DS_Store" \
|
||||
-x "*/.DS_Store"
|
||||
@rm -rf "output/OmniNX Downloader"
|
||||
@echo "✓ Created output/OmniNX Downloader.zip"
|
||||
|
||||
clean:
|
||||
@rm -f "output/OmniNX Downloader.zip"
|
||||
@rm -rf "output/OmniNX Downloader"
|
||||
@echo "✓ Cleaned up output/OmniNX Downloader.zip"
|
||||
245
generate_release_files.py
Executable file
245
generate_release_files.py
Executable file
@@ -0,0 +1,245 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Generate RELEASE_X.ini files by fetching latest GitHub release tags
|
||||
for sysmodules, overlays, apps, and emulatoren.
|
||||
"""
|
||||
|
||||
import re
|
||||
import json
|
||||
import os
|
||||
import time
|
||||
import urllib.request
|
||||
import urllib.error
|
||||
import configparser
|
||||
from pathlib import Path
|
||||
from typing import Dict, List, Tuple, Optional
|
||||
|
||||
# GitHub API base URL
|
||||
GITHUB_API = "https://api.github.com/repos"
|
||||
|
||||
# Get GitHub token from environment variable if available
|
||||
GITHUB_TOKEN = os.environ.get('GITHUB_TOKEN', '')
|
||||
|
||||
def extract_repo_from_url(url: str) -> Optional[Tuple[str, str]]:
|
||||
"""Extract owner and repo from GitHub API URL."""
|
||||
# Pattern: https://api.github.com/repos/owner/repo/releases?...
|
||||
match = re.search(r'/repos/([^/]+)/([^/]+)/releases', url)
|
||||
if match:
|
||||
return (match.group(1), match.group(2))
|
||||
return None
|
||||
|
||||
def get_latest_tag(owner: str, repo: str) -> Optional[str]:
|
||||
"""Fetch the latest release tag from GitHub API."""
|
||||
url = f"{GITHUB_API}/{owner}/{repo}/releases?per_page=1"
|
||||
try:
|
||||
req = urllib.request.Request(url)
|
||||
req.add_header('User-Agent', 'Release-Tag-Fetcher/1.0')
|
||||
if GITHUB_TOKEN:
|
||||
req.add_header('Authorization', f'token {GITHUB_TOKEN}')
|
||||
|
||||
with urllib.request.urlopen(req, timeout=10) as response:
|
||||
releases = json.loads(response.read().decode('utf-8'))
|
||||
if releases and len(releases) > 0:
|
||||
return releases[0].get('tag_name', releases[0].get('name', ''))
|
||||
except urllib.error.HTTPError as e:
|
||||
if e.code == 403:
|
||||
print(f" Rate limit exceeded. Set GITHUB_TOKEN env var for higher limits.")
|
||||
elif e.code == 404:
|
||||
print(f" Repository not found")
|
||||
else:
|
||||
print(f" HTTP {e.code}: {e.reason}")
|
||||
except Exception as e:
|
||||
print(f" Error: {e}")
|
||||
return None
|
||||
|
||||
def parse_ini_file(file_path: Path) -> List[Dict[str, str]]:
|
||||
"""Parse .ini file and extract entries with GitHub API URLs."""
|
||||
entries = []
|
||||
|
||||
with open(file_path, 'r', encoding='utf-8') as f:
|
||||
content = f.read()
|
||||
|
||||
# Find all section headers
|
||||
sections = re.finditer(r'^\[([^\]]+)\]', content, re.MULTILINE)
|
||||
|
||||
for section_match in sections:
|
||||
section_name = section_match.group(1)
|
||||
section_start = section_match.end()
|
||||
|
||||
# Find next section or end of file
|
||||
next_section = re.search(r'^\[', content[section_start:], re.MULTILINE)
|
||||
section_end = section_start + (next_section.start() if next_section else len(content[section_start:]))
|
||||
section_content = content[section_start:section_end]
|
||||
|
||||
# Look for GitHub API URLs in this section
|
||||
github_urls = re.findall(r'https://api\.github\.com/repos/[^\s]+', section_content)
|
||||
|
||||
if github_urls:
|
||||
repo_info = extract_repo_from_url(github_urls[0])
|
||||
if repo_info:
|
||||
entries.append({
|
||||
'name': section_name,
|
||||
'owner': repo_info[0],
|
||||
'repo': repo_info[1],
|
||||
'url': github_urls[0]
|
||||
})
|
||||
|
||||
return entries
|
||||
|
||||
def generate_release_ini(category: str, entries: List[Dict[str, str]], output_path: Path):
|
||||
"""Generate RELEASE_X.ini file for a category."""
|
||||
print(f"\nGenerating {output_path.name}...")
|
||||
print(f"Found {len(entries)} entries")
|
||||
|
||||
# Create config parser
|
||||
config = configparser.ConfigParser()
|
||||
config.optionxform = str # Preserve case
|
||||
|
||||
# Create section based on category
|
||||
if category == 'sysmodules':
|
||||
section_name = 'Versions'
|
||||
elif category == 'overlays':
|
||||
section_name = 'Versions'
|
||||
elif category == 'apps':
|
||||
section_name = 'Versions'
|
||||
elif category == 'emulatoren':
|
||||
section_name = 'Versions'
|
||||
else:
|
||||
section_name = 'Release Info'
|
||||
|
||||
config.add_section(section_name)
|
||||
|
||||
# Monitoring statistics
|
||||
success_count = 0
|
||||
failure_count = 0
|
||||
failed_entries = []
|
||||
|
||||
# Fetch tags for each entry
|
||||
for i, entry in enumerate(entries):
|
||||
# Add delay between requests to avoid rate limiting (except for first request)
|
||||
if i > 0:
|
||||
time.sleep(0.5) # 500ms delay between requests
|
||||
|
||||
print(f" Fetching {entry['name']} ({entry['owner']}/{entry['repo']})...", end=' ')
|
||||
tag = get_latest_tag(entry['owner'], entry['repo'])
|
||||
if tag:
|
||||
# Remove 'v' prefix if present for cleaner version
|
||||
clean_tag = tag.lstrip('v')
|
||||
# Truncate very long version strings (e.g., commit hashes) to max 30 chars for Switch display
|
||||
if len(clean_tag) > 30:
|
||||
# Try to extract meaningful part (e.g., commit hash from "weekly-canary-release-25f89d3...")
|
||||
if '-' in clean_tag:
|
||||
parts = clean_tag.split('-')
|
||||
# If it looks like a commit hash at the end, take last part and truncate to 7 chars
|
||||
if len(parts) > 1 and len(parts[-1]) > 20:
|
||||
clean_tag = f"{parts[-2]}-{parts[-1][:7]}" if len(parts) > 1 else parts[-1][:7]
|
||||
else:
|
||||
clean_tag = clean_tag[:30]
|
||||
else:
|
||||
clean_tag = clean_tag[:30]
|
||||
config.set(section_name, entry['name'], clean_tag)
|
||||
success_count += 1
|
||||
print(f"✓ {clean_tag}")
|
||||
else:
|
||||
failure_count += 1
|
||||
failed_entries.append(f"{entry['name']} ({entry['owner']}/{entry['repo']})")
|
||||
print("✗ Failed")
|
||||
|
||||
# Write to file
|
||||
with open(output_path, 'w', encoding='utf-8') as f:
|
||||
config.write(f, space_around_delimiters=False)
|
||||
|
||||
# Print monitoring summary
|
||||
print(f"\n✓ Created {output_path}")
|
||||
print(f" Success: {success_count}/{len(entries)}")
|
||||
if failure_count > 0:
|
||||
print(f" Failed: {failure_count}/{len(entries)}")
|
||||
for failed in failed_entries:
|
||||
print(f" - {failed}")
|
||||
|
||||
return {
|
||||
'category': category,
|
||||
'total': len(entries),
|
||||
'success': success_count,
|
||||
'failed': failure_count,
|
||||
'failed_entries': failed_entries
|
||||
}
|
||||
|
||||
def main():
|
||||
"""Main function."""
|
||||
base_path = Path(__file__).parent
|
||||
include_path = base_path / "include"
|
||||
|
||||
print("GitHub Release Tag Fetcher")
|
||||
if GITHUB_TOKEN:
|
||||
print("✓ Using GitHub token (higher rate limit)")
|
||||
else:
|
||||
print("⚠ No GitHub token found. Set GITHUB_TOKEN env var for higher rate limits.")
|
||||
print("=" * 50)
|
||||
|
||||
# Track all results for final summary
|
||||
all_results = []
|
||||
|
||||
# Process sysmodules
|
||||
sysmodules_path = include_path / "sysmodules" / "sysmodules.ini"
|
||||
if sysmodules_path.exists():
|
||||
entries = parse_ini_file(sysmodules_path)
|
||||
if entries:
|
||||
output_path = include_path / "sysmodules" / "RELEASE_SM.ini"
|
||||
result = generate_release_ini('sysmodules', entries, output_path)
|
||||
all_results.append(result)
|
||||
|
||||
# Process overlays
|
||||
overlays_path = include_path / "overlays" / "overlays.ini"
|
||||
if overlays_path.exists():
|
||||
entries = parse_ini_file(overlays_path)
|
||||
if entries:
|
||||
output_path = include_path / "overlays" / "RELEASE_OV.ini"
|
||||
result = generate_release_ini('overlays', entries, output_path)
|
||||
all_results.append(result)
|
||||
|
||||
# Process apps
|
||||
apps_path = include_path / "apps" / "apps.ini"
|
||||
if apps_path.exists():
|
||||
entries = parse_ini_file(apps_path)
|
||||
if entries:
|
||||
output_path = include_path / "apps" / "RELEASE_APPS.ini"
|
||||
result = generate_release_ini('apps', entries, output_path)
|
||||
all_results.append(result)
|
||||
|
||||
# Process emulatoren
|
||||
emulatoren_path = include_path / "emulatoren" / "emulatoren.ini"
|
||||
if emulatoren_path.exists():
|
||||
entries = parse_ini_file(emulatoren_path)
|
||||
if entries:
|
||||
output_path = include_path / "emulatoren" / "RELEASE_EM.ini"
|
||||
result = generate_release_ini('emulatoren', entries, output_path)
|
||||
all_results.append(result)
|
||||
|
||||
# Print final monitoring summary
|
||||
print("\n" + "=" * 50)
|
||||
print("FINAL SUMMARY")
|
||||
print("=" * 50)
|
||||
total_entries = sum(r['total'] for r in all_results)
|
||||
total_success = sum(r['success'] for r in all_results)
|
||||
total_failed = sum(r['failed'] for r in all_results)
|
||||
|
||||
print(f"Total entries processed: {total_entries}")
|
||||
print(f"Successfully fetched: {total_success} ({total_success/total_entries*100:.1f}%)" if total_entries > 0 else "Successfully fetched: 0")
|
||||
print(f"Failed: {total_failed} ({total_failed/total_entries*100:.1f}%)" if total_entries > 0 else "Failed: 0")
|
||||
|
||||
# List all failed entries by category
|
||||
if total_failed > 0:
|
||||
print("\nFailed entries by category:")
|
||||
for result in all_results:
|
||||
if result['failed'] > 0:
|
||||
print(f" {result['category']}:")
|
||||
for failed in result['failed_entries']:
|
||||
print(f" - {failed}")
|
||||
|
||||
print("\n" + "=" * 50)
|
||||
print("Done!")
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
|
||||
23
include/apps/RELEASE_APPS.ini
Normal file
23
include/apps/RELEASE_APPS.ini
Normal file
@@ -0,0 +1,23 @@
|
||||
[Versions]
|
||||
Amiibo Generator=2.2.1
|
||||
Amiigo=2.4.1
|
||||
DBI_EN=849
|
||||
DBI_DE=849
|
||||
Chiaki_NG=release-af569df
|
||||
DNS_mitm Tester=1.0.4
|
||||
Hekate-Toolbox=4.0.4
|
||||
JKSV=12/02/2025
|
||||
Moonlight Switch=1.3.4
|
||||
Neumann=0.0.30-2
|
||||
NX-Activity-Log=1.4.0
|
||||
Sphaira=1.0.0
|
||||
ThemezerNX=2.0.3
|
||||
emuiibo=1.1.2
|
||||
Tinwoo=1.0.28
|
||||
Goldleaf=1.2.0
|
||||
linkalho=2.0.2
|
||||
nxmp=0.9.3
|
||||
aio-switch-updater=2.23.3
|
||||
switchfin=0.8.3
|
||||
NXThemesInstaller=4.8.3
|
||||
|
||||
194
include/apps/apps.ini
Normal file
194
include/apps/apps.ini
Normal file
@@ -0,0 +1,194 @@
|
||||
[Homebrew Apps]
|
||||
|
||||
[Amiibo Generator]
|
||||
try:
|
||||
download https://api.github.com/repos/yusufakg/AmiiboGenerator/releases?per_page=1 /config/ultrahand/downloads/amiibo-generator-api.json
|
||||
json_file /config/ultrahand/downloads/amiibo-generator-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/amiibo-generator.nro
|
||||
mv /config/ultrahand/downloads/amiibo-generator.nro /switch/AmiiboGenerator/
|
||||
delete /config/ultrahand/downloads/amiibo-generator-api.json
|
||||
|
||||
[Amiigo]
|
||||
try:
|
||||
download https://api.github.com/repos/CompSciOrBust/Amiigo/releases?per_page=1 /config/ultrahand/downloads/amiigo-api.json
|
||||
json_file /config/ultrahand/downloads/amiigo-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/amiigo.nro
|
||||
mv /config/ultrahand/downloads/amiigo.nro /switch/Amiigo/
|
||||
delete /config/ultrahand/downloads/amiigo-api.json
|
||||
|
||||
[DBI_EN]
|
||||
try:
|
||||
download https://git.niklascfw.de/api/v1/repos/OmniNX/DBI_EN/releases?limit=1 /config/ultrahand/downloads/dbi-api.json
|
||||
json_file /config/ultrahand/downloads/dbi-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/dbi.zip
|
||||
unzip /config/ultrahand/downloads/dbi.zip /
|
||||
delete /config/ultrahand/downloads/dbi-api.json
|
||||
delete /config/ultrahand/downloads/dbi.zip
|
||||
|
||||
[DBI_DE]
|
||||
try:
|
||||
download https://git.niklascfw.de/api/v1/repos/OmniNX/DBI_DE/releases?limit=1 /config/ultrahand/downloads/dbi-api.json
|
||||
json_file /config/ultrahand/downloads/dbi-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/dbi.zip
|
||||
unzip /config/ultrahand/downloads/dbi.zip /
|
||||
delete /config/ultrahand/downloads/dbi-api.json
|
||||
delete /config/ultrahand/downloads/dbi.zip
|
||||
|
||||
[Chiaki_NG]
|
||||
try:
|
||||
download https://api.github.com/repos/streetpea/chiaki-ng/releases?per_page=1 /config/ultrahand/downloads/chiaki-api.json
|
||||
json_file /config/ultrahand/downloads/chiaki-api.json
|
||||
download {json_file(0,assets,8,browser_download_url)} /config/ultrahand/downloads/chiaki.nro
|
||||
mv /config/ultrahand/downloads/chiaki.nro /switch/Chiaki/
|
||||
delete /config/ultrahand/downloads/chiaki-api.json
|
||||
|
||||
[DNS_mitm Tester]
|
||||
try:
|
||||
download https://api.github.com/repos/meganukebmp/Switch_90DNS_tester/releases?per_page=1 /config/ultrahand/downloads/dns-tester-api.json
|
||||
json_file /config/ultrahand/downloads/dns-tester-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/dns-tester.nro
|
||||
mv /config/ultrahand/downloads/dns-tester.nro /switch/DNS-Block_Tester/
|
||||
delete /config/ultrahand/downloads/dns-tester-api.json
|
||||
|
||||
[Hekate-Toolbox]
|
||||
try:
|
||||
download https://api.github.com/repos/WerWolv/Hekate-Toolbox/releases?per_page=1 /config/ultrahand/downloads/hekate-toolbox-api.json
|
||||
json_file /config/ultrahand/downloads/hekate-toolbox-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/hekate-toolbox.nro
|
||||
mv /config/ultrahand/downloads/hekate-toolbox.nro /switch/Hekate-Toolbox/
|
||||
delete /config/ultrahand/downloads/hekate-toolbox-api.json
|
||||
|
||||
[JKSV]
|
||||
try:
|
||||
download https://api.github.com/repos/J-D-K/JKSV/releases?per_page=1 /config/ultrahand/downloads/jksv-api.json
|
||||
json_file /config/ultrahand/downloads/jksv-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/jksv.nro
|
||||
mv /config/ultrahand/downloads/jksv.nro /switch/JKSV/
|
||||
delete /config/ultrahand/downloads/jksv-api.json
|
||||
|
||||
[Moonlight Switch]
|
||||
try:
|
||||
download https://api.github.com/repos/XITRIX/Moonlight-Switch/releases?per_page=1 /config/ultrahand/downloads/moonlight-api.json
|
||||
json_file /config/ultrahand/downloads/moonlight-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/moonlight.nro
|
||||
mv /config/ultrahand/downloads/moonlight.nro /switch/Moonlight Switch/
|
||||
delete /config/ultrahand/downloads/moonlight-api.json
|
||||
|
||||
[Neumann]
|
||||
try:
|
||||
download https://api.github.com/repos/turtle-insect/Neumann/releases?per_page=1 /config/ultrahand/downloads/neumann-api.json
|
||||
json_file /config/ultrahand/downloads/neumann-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/neumann.nro
|
||||
mv /config/ultrahand/downloads/neumann.nro /switch/Neumann/
|
||||
delete /config/ultrahand/downloads/neumann-api.json
|
||||
|
||||
[NX-Activity-Log]
|
||||
try:
|
||||
download https://api.github.com/repos/tallbl0nde/NX-Activity-Log/releases?per_page=1 /config/ultrahand/downloads/nx-activity-log-api.json
|
||||
json_file /config/ultrahand/downloads/nx-activity-log-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/nx-activity-log.nro
|
||||
mv /config/ultrahand/downloads/nx-activity-log.nro /switch/NX-Activity-Log/
|
||||
delete /config/ultrahand/downloads/nx-activity-log-api.json
|
||||
|
||||
[Sphaira]
|
||||
try:
|
||||
download https://api.github.com/repos/ITotalJustice/sphaira/releases?per_page=1 /config/ultrahand/downloads/sphaira-api.json
|
||||
json_file /config/ultrahand/downloads/sphaira-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/sphaira.zip
|
||||
unzip /config/ultrahand/downloads/sphaira.zip /
|
||||
delete /config/ultrahand/downloads/sphaira-api.json
|
||||
delete /config/ultrahand/downloads/sphaira.zip
|
||||
|
||||
[ThemezerNX]
|
||||
try:
|
||||
download https://api.github.com/repos/suchmememanyskill/themezer-nx/releases?per_page=1 /config/ultrahand/downloads/themezer-api.json
|
||||
json_file /config/ultrahand/downloads/themezer-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/themezer.nro
|
||||
mv /config/ultrahand/downloads/themezer.nro /switch/ThemezerNX/
|
||||
cp /Backup/SB/Icongrabber/config.json /config/Icongrabber/config.json
|
||||
delete /config/ultrahand/downloads/themezer-api.json
|
||||
|
||||
[emuiibo]
|
||||
try:
|
||||
download https://api.github.com/repos/XorTroll/emuiibo/releases?per_page=1 /config/ultrahand/downloads/emuiibo-api.json
|
||||
json_file /config/ultrahand/downloads/emuiibo-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/emuiibo.nro
|
||||
mv /config/ultrahand/downloads/emuiibo.nro /switch/emuiibo/
|
||||
delete /config/ultrahand/downloads/emuiibo-api.json
|
||||
|
||||
[Tinwoo]
|
||||
try:
|
||||
download https://api.github.com/repos/mrdude2478/Tinwoo-Release/releases?per_page=1 /config/ultrahand/downloads/tinwoo-api.json
|
||||
json_file /config/ultrahand/downloads/tinwoo-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/tinwoo.nro
|
||||
mv /config/ultrahand/downloads/tinwoo.nro /switch/Tinwoo/
|
||||
delete /config/ultrahand/downloads/tinwoo-api.json
|
||||
|
||||
[Goldleaf]
|
||||
try:
|
||||
download https://api.github.com/repos/XorTroll/Goldleaf/releases?per_page=1 /config/ultrahand/downloads/goldleaf-api.json
|
||||
json_file /config/ultrahand/downloads/goldleaf-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/goldleaf.zip
|
||||
unzip /config/ultrahand/downloads/goldleaf.zip /
|
||||
delete /config/ultrahand/downloads/goldleaf-api.json
|
||||
delete /config/ultrahand/downloads/goldleaf.zip
|
||||
|
||||
[linkalho]
|
||||
try:
|
||||
download https://api.github.com/repos/impeeza/linkalho/releases?per_page=1 /config/ultrahand/downloads/linkalho-api.json
|
||||
json_file /config/ultrahand/downloads/linkalho-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/linkalho.nro
|
||||
mv /config/ultrahand/downloads/linkalho.nro /switch/linkalho/
|
||||
delete /config/ultrahand/downloads/linkalho-api.json
|
||||
|
||||
[nxmp]
|
||||
try:
|
||||
download https://api.github.com/repos/proconsule/nxmp/releases?per_page=1 /config/ultrahand/downloads/nxmp-api.json
|
||||
json_file /config/ultrahand/downloads/nxmp-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/nxmp.nro
|
||||
mv /config/ultrahand/downloads/nxmp.nro /switch/nxmp/
|
||||
delete /config/ultrahand/downloads/nxmp-api.json
|
||||
|
||||
[aio-switch-updater]
|
||||
try:
|
||||
download https://api.github.com/repos/HamletDuFromage/aio-switch-updater/releases?per_page=1 /config/ultrahand/downloads/aio-switch-updater-api.json
|
||||
json_file /config/ultrahand/downloads/aio-switch-updater-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/aio-switch-updater.nro
|
||||
mv /config/ultrahand/downloads/aio-switch-updater.nro /switch/aio-switch-updater/
|
||||
delete /config/ultrahand/downloads/aio-switch-updater-api.json
|
||||
|
||||
[switchfin]
|
||||
try:
|
||||
download https://api.github.com/repos/dragonflylee/switchfin/releases?per_page=1 /config/ultrahand/downloads/switchfin-api.json
|
||||
json_file /config/ultrahand/downloads/switchfin-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/switchfin.nro
|
||||
mv /config/ultrahand/downloads/switchfin.nro /switch/switchfin/
|
||||
delete /config/ultrahand/downloads/switchfin-api.json
|
||||
|
||||
[NXThemesInstaller]
|
||||
try:
|
||||
download https://api.github.com/repos/exelix11/SwitchThemeInjector/releases?per_page=1 /config/ultrahand/downloads/switchthemeinjector-api.json
|
||||
json_file /config/ultrahand/downloads/switchthemeinjector-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/switchthemeinjector.nro
|
||||
mv /config/ultrahand/downloads/switchthemeinjector.nro /switch/NXThemesInstaller/
|
||||
delete /config/ultrahand/downloads/switchthemeinjector-api.json
|
||||
|
||||
|
||||
[Patched Apps]
|
||||
|
||||
[Crunchyroll Patched]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/apps/Crunchyroll_Patched.zip' '/config/ultrahand/downloads/Crunchyroll_Patched.zip'
|
||||
unzip '/config/ultrahand/downloads/Crunchyroll_Patched.zip' '/Patched Apps/'
|
||||
delete '/config/ultrahand/downloads/Crunchyroll_Patched.zip'
|
||||
|
||||
[YouTube Patched]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/apps/YouTube_Patched.zip' '/config/ultrahand/downloads/YouTube_Patched.zip'
|
||||
unzip '/config/ultrahand/downloads/YouTube_Patched.zip' '/Patched Apps/'
|
||||
delete '/config/ultrahand/downloads/YouTube_Patched.zip'
|
||||
|
||||
[gap]
|
||||
;mode=table
|
||||
;background=false
|
||||
;gap=30
|
||||
48
include/apps/boot_package.ini
Normal file
48
include/apps/boot_package.ini
Normal file
@@ -0,0 +1,48 @@
|
||||
[boot]
|
||||
set-ini-val ./include/apps/config.ini 'Amiibo Generator' 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini Amiigo 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini DBI_EN 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini DBI_DE 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini Chiaki_NG 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini 'DNS_mitm Tester' 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini Hekate-Toolbox 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini JKSV 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini 'Moonlight Switch' 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini Neumann 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini 'NX-Activity-Log' 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini RetroArch 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini Sphaira 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini ThemezerNX 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini emuiibo 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini Tinwoo 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini Goldleaf 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini linkalho 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini nxmp 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini aio-switch-updater 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini switchfin 'footer' ''
|
||||
set-ini-val ./include/apps/config.ini NXThemesInstaller 'footer' ''
|
||||
|
||||
download https://git.niklascfw.de/OmniNX/Omni-Downloader/raw/branch/main/include/apps/RELEASE_APPS.ini ./include/apps/RELEASE_APPS.ini
|
||||
ini_file ./include/apps/RELEASE_APPS.ini
|
||||
set-ini-val ./include/apps/config.ini 'Amiibo Generator' 'footer' '{ini_file(Versions,Amiibo Generator)}'
|
||||
set-ini-val ./include/apps/config.ini Amiigo 'footer' '{ini_file(Versions,Amiigo)}'
|
||||
set-ini-val ./include/apps/config.ini DBI_EN 'footer' '{ini_file(Versions,DBI_EN)}'
|
||||
set-ini-val ./include/apps/config.ini DBI_DE 'footer' '{ini_file(Versions,DBI_DE)}'
|
||||
set-ini-val ./include/apps/config.ini Chiaki_NG 'footer' '{ini_file(Versions,Chiaki_NG)}'
|
||||
set-ini-val ./include/apps/config.ini 'DNS_mitm Tester' 'footer' '{ini_file(Versions,DNS_mitm Tester)}'
|
||||
set-ini-val ./include/apps/config.ini Hekate-Toolbox 'footer' '{ini_file(Versions,Hekate-Toolbox)}'
|
||||
set-ini-val ./include/apps/config.ini JKSV 'footer' '{ini_file(Versions,JKSV)}'
|
||||
set-ini-val ./include/apps/config.ini 'Moonlight Switch' 'footer' '{ini_file(Versions,Moonlight Switch)}'
|
||||
set-ini-val ./include/apps/config.ini Neumann 'footer' '{ini_file(Versions,Neumann)}'
|
||||
set-ini-val ./include/apps/config.ini 'NX-Activity-Log' 'footer' '{ini_file(Versions,NX-Activity-Log)}'
|
||||
set-ini-val ./include/apps/config.ini RetroArch 'footer' '{ini_file(Versions,RetroArch)}'
|
||||
set-ini-val ./include/apps/config.ini Sphaira 'footer' '{ini_file(Versions,Sphaira)}'
|
||||
set-ini-val ./include/apps/config.ini ThemezerNX 'footer' '{ini_file(Versions,ThemezerNX)}'
|
||||
set-ini-val ./include/apps/config.ini emuiibo 'footer' '{ini_file(Versions,emuiibo)}'
|
||||
set-ini-val ./include/apps/config.ini Tinwoo 'footer' '{ini_file(Versions,Tinwoo)}'
|
||||
set-ini-val ./include/apps/config.ini Goldleaf 'footer' '{ini_file(Versions,Goldleaf)}'
|
||||
set-ini-val ./include/apps/config.ini linkalho 'footer' '{ini_file(Versions,linkalho)}'
|
||||
set-ini-val ./include/apps/config.ini nxmp 'footer' '{ini_file(Versions,nxmp)}'
|
||||
set-ini-val ./include/apps/config.ini aio-switch-updater 'footer' '{ini_file(Versions,aio-switch-updater)}'
|
||||
set-ini-val ./include/apps/config.ini switchfin 'footer' '{ini_file(Versions,switchfin)}'
|
||||
set-ini-val ./include/apps/config.ini NXThemesInstaller 'footer' '{ini_file(Versions,NXThemesInstaller)}'
|
||||
0
include/apps/config.ini
Normal file
0
include/apps/config.ini
Normal file
4
include/emulatoren/RELEASE_EM.ini
Normal file
4
include/emulatoren/RELEASE_EM.ini
Normal file
@@ -0,0 +1,4 @@
|
||||
[Versions]
|
||||
melonDS=7.2.1
|
||||
PPSSPP-NX=1.19.3
|
||||
|
||||
8
include/emulatoren/boot_package.ini
Normal file
8
include/emulatoren/boot_package.ini
Normal file
@@ -0,0 +1,8 @@
|
||||
[boot]
|
||||
set-ini-val ./include/emulatoren/config.ini melonDS 'footer' ''
|
||||
set-ini-val ./include/emulatoren/config.ini PPSSPP-NX 'footer' ''
|
||||
|
||||
download https://git.niklascfw.de/OmniNX/Omni-Downloader/raw/branch/main/include/emulatoren/RELEASE_EM.ini ./include/emulatoren/RELEASE_EM.ini
|
||||
ini_file ./include/emulatoren/RELEASE_EM.ini
|
||||
set-ini-val ./include/emulatoren/config.ini melonDS 'footer' '{ini_file(Versions,melonDS)}'
|
||||
set-ini-val ./include/emulatoren/config.ini PPSSPP-NX 'footer' '{ini_file(Versions,PPSSPP-NX)}'
|
||||
0
include/emulatoren/config.ini
Normal file
0
include/emulatoren/config.ini
Normal file
35
include/emulatoren/emulatoren.ini
Normal file
35
include/emulatoren/emulatoren.ini
Normal file
@@ -0,0 +1,35 @@
|
||||
;show_widget=true
|
||||
|
||||
[Emulatoren]
|
||||
|
||||
|
||||
[Lakka - 6.1.0]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/os/lakka.zip' '/config/ultrahand/downloads/lakka.zip'
|
||||
unzip '/config/ultrahand/downloads/lakka.zip' '/'
|
||||
delete '/config/ultrahand/downloads/lakka.zip'
|
||||
|
||||
[RetroArch - 1.22.2]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/apps/RetroArch_1.22.2.zip' '/config/ultrahand/downloads/RetroArch_1.22.2.zip'
|
||||
unzip '/config/ultrahand/downloads/RetroArch_1.22.2.zip' '/'
|
||||
delete '/config/ultrahand/downloads/RetroArch_1.22.2.zip'
|
||||
|
||||
[melonDS]
|
||||
try:
|
||||
download https://api.github.com/repos/ArcDelta/melonDS/releases?per_page=1 /config/ultrahand/downloads/melonds-api.json
|
||||
json_file /config/ultrahand/downloads/melonds-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/melonds.nro
|
||||
mv /config/ultrahand/downloads/melonds.nro /switch/melonDS/
|
||||
delete /config/ultrahand/downloads/melonds-api.json
|
||||
|
||||
[PPSSPP-NX]
|
||||
try:
|
||||
download https://git.niklascfw.de/api/v1/repos/OmniNX/PPSSPP-NX/releases?limit=1 /config/ultrahand/downloads/ppsspp-nx-api.json
|
||||
json_file /config/ultrahand/downloads/ppsspp-nx-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/ppsspp-nx.zip
|
||||
unzip /config/ultrahand/downloads/ppsspp-nx.zip '/switch/'
|
||||
delete /config/ultrahand/downloads/ppsspp-nx-api.json
|
||||
delete /config/ultrahand/downloads/ppsspp-nx.zip
|
||||
|
||||
|
||||
20
include/os/android.ini
Normal file
20
include/os/android.ini
Normal file
@@ -0,0 +1,20 @@
|
||||
[Android]
|
||||
|
||||
[Android TAB - 15]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/os/Android_Tab.zip' '/config/ultrahand/downloads/Android_Tab.zip'
|
||||
unzip '/config/ultrahand/downloads/Android_Tab.zip' '/'
|
||||
delete '/config/ultrahand/downloads/Android_Tab.zip'
|
||||
|
||||
[Android TV - 15]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/os/Android_TV.zip' '/config/ultrahand/downloads/Android_TV.zip'
|
||||
unzip '/config/ultrahand/downloads/Android_TV.zip' '/'
|
||||
delete '/config/ultrahand/downloads/Android_TV.zip'
|
||||
|
||||
[CrDroid - 15]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/os/CrDroid.zip' '/config/ultrahand/downloads/CrDroid.zip'
|
||||
unzip '/config/ultrahand/downloads/CrDroid.zip' '/'
|
||||
delete '/config/ultrahand/downloads/CrDroid.zip'
|
||||
|
||||
79
include/os/hekate_inis.ini
Normal file
79
include/os/hekate_inis.ini
Normal file
@@ -0,0 +1,79 @@
|
||||
[Hekate INIs]
|
||||
|
||||
[*SD Installation]
|
||||
[Android_LineageOS.ini - SD]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Android_LineageOS.ini' '/bootloader/ini/'
|
||||
|
||||
[CrDroid.ini - SD]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/CrDroid.ini' '/bootloader/ini/'
|
||||
|
||||
[Fedora.ini - SD]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Fedora.ini' '/bootloader/ini/'
|
||||
|
||||
[Lakka.ini - SD]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Lakka.ini' '/bootloader/ini/'
|
||||
|
||||
[Ubuntu_Bionic.ini - SD]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Ubuntu_Bionic.ini' '/bootloader/ini/'
|
||||
|
||||
[Ubuntu_Jammy.ini - SD]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Ubuntu_Jammy.ini' '/bootloader/ini/'
|
||||
|
||||
[Ubuntu_Noble.ini - SD]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Ubuntu_Jammy_eMMC.ini' '/bootloader/ini/'
|
||||
|
||||
[Stock_CFW.ini - SysMMC]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Stock_CFW.ini' '/bootloader/ini/'
|
||||
|
||||
[Stock_CFW_8GB.ini - SysMMC]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Stock_CFW_8GB.ini' '/bootloader/ini/'
|
||||
|
||||
[gap]
|
||||
;mode=table
|
||||
;background=false
|
||||
;gap=30
|
||||
|
||||
[*eMMC Installation]
|
||||
[Android_LineageOS.ini - eMMC]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Android_LineageOS_eMMC.ini' '/bootloader/ini/'
|
||||
delete '/bootloader/ini/Android_LineageOS.ini'
|
||||
|
||||
[CrDroid.ini - eMMC]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/CrDroid_eMMC.ini' '/bootloader/ini/'
|
||||
delete '/bootloader/ini/CrDroid.ini'
|
||||
|
||||
[Fedora.ini - eMMC]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Fedora_eMMC.ini' '/bootloader/ini/'
|
||||
delete '/bootloader/ini/Fedora.ini'
|
||||
|
||||
[Ubuntu_Bionic.ini - eMMC]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Ubuntu_Bionic_eMMC.ini' '/bootloader/ini/'
|
||||
delete '/bootloader/ini/Ubuntu_Bionic.ini'
|
||||
|
||||
[Ubuntu_Jammy.ini - eMMC]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Ubuntu_Jammy_eMMC.ini' '/bootloader/ini/'
|
||||
delete '/bootloader/ini/Ubuntu_Jammy.ini'
|
||||
|
||||
[Ubuntu_Noble.ini - eMMC]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/inis/Ubuntu_Noble_eMMC.ini' '/bootloader/ini/'
|
||||
delete '/bootloader/ini/Ubuntu_Noble.ini'
|
||||
|
||||
[gap]
|
||||
;mode=table
|
||||
;background=false
|
||||
;gap=30
|
||||
26
include/os/linux.ini
Normal file
26
include/os/linux.ini
Normal file
@@ -0,0 +1,26 @@
|
||||
[Linux]
|
||||
|
||||
[Fedora - 42]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/os/Fedora.zip' '/config/ultrahand/downloads/Fedora.zip'
|
||||
unzip '/config/ultrahand/downloads/Fedora.zip' '/'
|
||||
delete '/config/ultrahand/downloads/Fedora.zip'
|
||||
|
||||
[Ubuntu - Bionic]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/os/Ubuntu_Bionic.zip' '/config/ultrahand/downloads/Ubuntu_Bionic.zip'
|
||||
unzip '/config/ultrahand/downloads/Ubuntu_Bionic.zip' '/'
|
||||
delete '/config/ultrahand/downloads/Ubuntu_Bionic.zip'
|
||||
|
||||
[Ubuntu - Jammy]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/os/Ubuntu_Jammy.zip' '/config/ultrahand/downloads/Ubuntu_Jammy.zip'
|
||||
unzip '/config/ultrahand/downloads/Ubuntu_Jammy.zip' '/'
|
||||
delete '/config/ultrahand/downloads/Ubuntu_Jammy.zip'
|
||||
|
||||
[Ubuntu - Noble]
|
||||
try:
|
||||
download 'https://cdn.niklascfw.de/switch/pack/os/Ubuntu_Noble.zip' '/config/ultrahand/downloads/Ubuntu_Noble.zip'
|
||||
unzip '/config/ultrahand/downloads/Ubuntu_Noble.zip' '/'
|
||||
delete '/config/ultrahand/downloads/Ubuntu_Noble.zip'
|
||||
|
||||
16
include/os/os.ini
Normal file
16
include/os/os.ini
Normal file
@@ -0,0 +1,16 @@
|
||||
;show_widget=true
|
||||
|
||||
[Betriebssysteme]
|
||||
|
||||
[*Android]
|
||||
;mode=forwarder
|
||||
package_source ./android.ini
|
||||
|
||||
[*Linux]
|
||||
;mode=forwarder
|
||||
package_source ./linux.ini
|
||||
|
||||
[*Hekate INIs]
|
||||
;mode=forwarder
|
||||
package_source ./hekate_inis.ini
|
||||
|
||||
13
include/overlays/RELEASE_OV.ini
Normal file
13
include/overlays/RELEASE_OV.ini
Normal file
@@ -0,0 +1,13 @@
|
||||
[Versions]
|
||||
DNS-MITM_Manager=0.2.0
|
||||
EdiZon-Overlay=1.0.14
|
||||
FPSLocker=3.2.4
|
||||
Fizeau=2.8.2
|
||||
NXFanControl+=1.0.5+
|
||||
QuickNTP=1.6.0
|
||||
ReverseNX-RT=2.2.1
|
||||
Sysmodules=1.4.7
|
||||
Sys-Clk=2.0.1+r21
|
||||
SysDVR=1.0.14
|
||||
Status-Monitor-Overlay=1.3.2+r6
|
||||
|
||||
26
include/overlays/boot_package.ini
Normal file
26
include/overlays/boot_package.ini
Normal file
@@ -0,0 +1,26 @@
|
||||
[boot]
|
||||
set-ini-val ./include/overlays/config.ini DNS-MITM_Manager 'footer' ''
|
||||
set-ini-val ./include/overlays/config.ini EdiZon-Overlay 'footer' ''
|
||||
set-ini-val ./include/overlays/config.ini FPSLocker 'footer' ''
|
||||
set-ini-val ./include/overlays/config.ini Fizeau 'footer' ''
|
||||
set-ini-val ./include/overlays/config.ini NXFanControl+ 'footer' ''
|
||||
set-ini-val ./include/overlays/config.ini QuickNTP 'footer' ''
|
||||
set-ini-val ./include/overlays/config.ini ReverseNX-RT 'footer' ''
|
||||
set-ini-val ./include/overlays/config.ini Sysmodules 'footer' ''
|
||||
set-ini-val ./include/overlays/config.ini Sys-Clk 'footer' ''
|
||||
set-ini-val ./include/overlays/config.ini SysDVR 'footer' ''
|
||||
set-ini-val ./include/overlays/config.ini Status-Monitor-Overlay 'footer' ''
|
||||
|
||||
download https://git.niklascfw.de/OmniNX/Omni-Downloader/raw/branch/main/include/overlays/RELEASE_OV.ini ./include/overlays/RELEASE_OV.ini
|
||||
ini_file ./include/overlays/RELEASE_OV.ini
|
||||
set-ini-val ./include/overlays/config.ini DNS-MITM_Manager 'footer' '{ini_file(Versions,DNS-MITM_Manager)}'
|
||||
set-ini-val ./include/overlays/config.ini EdiZon-Overlay 'footer' '{ini_file(Versions,EdiZon-Overlay)}'
|
||||
set-ini-val ./include/overlays/config.ini FPSLocker 'footer' '{ini_file(Versions,FPSLocker)}'
|
||||
set-ini-val ./include/overlays/config.ini Fizeau 'footer' '{ini_file(Versions,Fizeau)}'
|
||||
set-ini-val ./include/overlays/config.ini NXFanControl+ 'footer' '{ini_file(Versions,NXFanControl+)}'
|
||||
set-ini-val ./include/overlays/config.ini QuickNTP 'footer' '{ini_file(Versions,QuickNTP)}'
|
||||
set-ini-val ./include/overlays/config.ini ReverseNX-RT 'footer' '{ini_file(Versions,ReverseNX-RT)}'
|
||||
set-ini-val ./include/overlays/config.ini Sysmodules 'footer' '{ini_file(Versions,Sysmodules)}'
|
||||
set-ini-val ./include/overlays/config.ini Sys-Clk 'footer' '{ini_file(Versions,Sys-Clk)}'
|
||||
set-ini-val ./include/overlays/config.ini SysDVR 'footer' '{ini_file(Versions,SysDVR)}'
|
||||
set-ini-val ./include/overlays/config.ini Status-Monitor-Overlay 'footer' '{ini_file(Versions,Status-Monitor-Overlay)}'
|
||||
0
include/overlays/config.ini
Normal file
0
include/overlays/config.ini
Normal file
99
include/overlays/overlays.ini
Normal file
99
include/overlays/overlays.ini
Normal file
@@ -0,0 +1,99 @@
|
||||
[UltraHand Overlays]
|
||||
|
||||
[DNS-MITM_Manager]
|
||||
try:
|
||||
download https://api.github.com/repos/sthetix/DNS-MITM_Manager/releases?per_page=1 /config/ultrahand/downloads/dns-mitm-api.json
|
||||
json_file /config/ultrahand/downloads/dns-mitm-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/dns-mitm.zip
|
||||
unzip /config/ultrahand/downloads/dns-mitm.zip /
|
||||
delete /config/ultrahand/downloads/dns-mitm-api.json
|
||||
delete /config/ultrahand/downloads/dns-mitm.zip
|
||||
|
||||
[EdiZon-Overlay]
|
||||
try:
|
||||
download https://api.github.com/repos/proferabg/EdiZon-Overlay/releases?per_page=1 /config/ultrahand/downloads/edizon-api.json
|
||||
json_file /config/ultrahand/downloads/edizon-api.json
|
||||
download {json_file(0,assets,1,browser_download_url)} /config/ultrahand/downloads/edizon.ovl
|
||||
move /config/ultrahand/downloads/edizon.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/edizon-api.json
|
||||
|
||||
[FPSLocker]
|
||||
try:
|
||||
download https://api.github.com/repos/masagrator/FPSLocker/releases?per_page=1 /config/ultrahand/downloads/fpslocker-api.json
|
||||
json_file /config/ultrahand/downloads/fpslocker-api.json
|
||||
download {json_file(0,assets,1,browser_download_url)} /config/ultrahand/downloads/fpslocker.ovl
|
||||
move /config/ultrahand/downloads/fpslocker.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/fpslocker-api.json
|
||||
|
||||
[Fizeau]
|
||||
try:
|
||||
download https://api.github.com/repos/averne/Fizeau/releases?per_page=1 /config/ultrahand/downloads/fizeau-api.json
|
||||
json_file /config/ultrahand/downloads/fizeau-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/fizeau.zip
|
||||
unzip /config/ultrahand/downloads/fizeau.zip /
|
||||
delete /config/ultrahand/downloads/fizeau-api.json
|
||||
delete /config/ultrahand/downloads/fizeau.zip
|
||||
|
||||
[NXFanControl+]
|
||||
try:
|
||||
download https://api.github.com/repos/dominatorul/NX-FanControl/releases?per_page=1 /config/ultrahand/downloads/nxfancontrol-api.json
|
||||
json_file /config/ultrahand/downloads/nxfancontrol-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/nxfancontrol.zip
|
||||
unzip /config/ultrahand/downloads/nxfancontrol.zip /
|
||||
delete /config/ultrahand/downloads/nxfancontrol-api.json
|
||||
delete /config/ultrahand/downloads/nxfancontrol.zip
|
||||
|
||||
[QuickNTP]
|
||||
try:
|
||||
download https://api.github.com/repos/nedex/QuickNTP/releases?per_page=1 /config/ultrahand/downloads/quickntp-api.json
|
||||
json_file /config/ultrahand/downloads/quickntp-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/quickntp.zip
|
||||
unzip /config/ultrahand/downloads/quickntp.zip /
|
||||
delete /config/ultrahand/downloads/quickntp-api.json
|
||||
delete /config/ultrahand/downloads/quickntp.zip
|
||||
|
||||
[ReverseNX-RT]
|
||||
try:
|
||||
download https://api.github.com/repos/masagrator/ReverseNX-RT/releases?per_page=1 /config/ultrahand/downloads/reversenx-api.json
|
||||
json_file /config/ultrahand/downloads/reversenx-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/reversenx.ovl
|
||||
move /config/ultrahand/downloads/reversenx.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/reversenx-api.json
|
||||
|
||||
[Sysmodules]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/ovl-sysmodules/releases?per_page=1 /config/ultrahand/downloads/sysmodules-ovl-api.json
|
||||
json_file /config/ultrahand/downloads/sysmodules-ovl-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/sysmodules.ovl
|
||||
move /config/ultrahand/downloads/sysmodules.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/sysmodules-ovl-api.json
|
||||
|
||||
[Sys-Clk]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/sys-clk/releases?per_page=1 /config/ultrahand/downloads/sys-clk-api.json
|
||||
json_file /config/ultrahand/downloads/sys-clk-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/sys-clk.ovl
|
||||
move /config/ultrahand/downloads/sys-clk.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/sys-clk-api.json
|
||||
|
||||
[SysDVR]
|
||||
try:
|
||||
download https://api.github.com/repos/zdm65477730/sysdvr-overlay/releases?per_page=1 /config/ultrahand/downloads/sysdvr-api.json
|
||||
json_file /config/ultrahand/downloads/sysdvr-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/sysdvr.zip
|
||||
unzip /config/ultrahand/downloads/sysdvr.zip /
|
||||
delete /config/ultrahand/downloads/sysdvr-api.json
|
||||
delete /config/ultrahand/downloads/sysdvr.zip
|
||||
|
||||
[Status-Monitor-Overlay]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/Status-Monitor-Overlay/releases?per_page=1 /config/ultrahand/downloads/status-monitor-api.json
|
||||
json_file /config/ultrahand/downloads/status-monitor-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/status-monitor.ovl
|
||||
move /config/ultrahand/downloads/status-monitor.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/status-monitor-api.json
|
||||
|
||||
[gap]
|
||||
;mode=table
|
||||
;background=false
|
||||
;gap=30
|
||||
18
include/sysmodules/RELEASE_SM.ini
Normal file
18
include/sysmodules/RELEASE_SM.ini
Normal file
@@ -0,0 +1,18 @@
|
||||
[Versions]
|
||||
ldn-mitm=1.20.2
|
||||
MissionControl=0.14.2
|
||||
sys-patch=1.5.9
|
||||
SaltyNX=1.7.3
|
||||
sys-botbase=2.41
|
||||
TriPlayer=2.2.6
|
||||
Alchemist=1.0.5
|
||||
Memory-Kit=1.0.0
|
||||
Fizeau=2.8.2+r2
|
||||
QuickNTP=1.6.0+r2
|
||||
ovl-sysmodules=1.4.7
|
||||
EdiZon-Overlay=1.0.15
|
||||
FPSLocker=3.2.3+r1
|
||||
sys-clk=2.0.1+r21
|
||||
Status-Monitor-Overlay=1.3.2+r6
|
||||
NX-FanControl=1.0.3
|
||||
|
||||
36
include/sysmodules/boot_package.ini
Normal file
36
include/sysmodules/boot_package.ini
Normal file
@@ -0,0 +1,36 @@
|
||||
[boot]
|
||||
set-ini-val ./include/sysmodules/config.ini ldn-mitm 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini MissionControl 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini sys-patch 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini SaltyNX 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini sys-botbase 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini TriPlayer 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini Alchemist 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini Memory-Kit 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini Fizeau 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini QuickNTP 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini ovl-sysmodules 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini EdiZon-Overlay 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini FPSLocker 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini sys-clk 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini Status-Monitor-Overlay 'footer' ''
|
||||
set-ini-val ./include/sysmodules/config.ini NX-FanControl 'footer' ''
|
||||
|
||||
download https://git.niklascfw.de/OmniNX/Omni-Downloader/raw/branch/main/include/sysmodules/RELEASE_SM.ini ./include/sysmodules/RELEASE_SM.ini
|
||||
ini_file ./include/sysmodules/RELEASE_SM.ini
|
||||
set-ini-val ./include/sysmodules/config.ini ldn-mitm 'footer' '{ini_file(Versions,ldn-mitm)}'
|
||||
set-ini-val ./include/sysmodules/config.ini MissionControl 'footer' '{ini_file(Versions,MissionControl)}'
|
||||
set-ini-val ./include/sysmodules/config.ini sys-patch 'footer' '{ini_file(Versions,sys-patch)}'
|
||||
set-ini-val ./include/sysmodules/config.ini SaltyNX 'footer' '{ini_file(Versions,SaltyNX)}'
|
||||
set-ini-val ./include/sysmodules/config.ini sys-botbase 'footer' '{ini_file(Versions,sys-botbase)}'
|
||||
set-ini-val ./include/sysmodules/config.ini TriPlayer 'footer' '{ini_file(Versions,TriPlayer)}'
|
||||
set-ini-val ./include/sysmodules/config.ini Alchemist 'footer' '{ini_file(Versions,Alchemist)}'
|
||||
set-ini-val ./include/sysmodules/config.ini Memory-Kit 'footer' '{ini_file(Versions,Memory-Kit)}'
|
||||
set-ini-val ./include/sysmodules/config.ini Fizeau 'footer' '{ini_file(Versions,Fizeau)}'
|
||||
set-ini-val ./include/sysmodules/config.ini QuickNTP 'footer' '{ini_file(Versions,QuickNTP)}'
|
||||
set-ini-val ./include/sysmodules/config.ini ovl-sysmodules 'footer' '{ini_file(Versions,ovl-sysmodules)}'
|
||||
set-ini-val ./include/sysmodules/config.ini EdiZon-Overlay 'footer' '{ini_file(Versions,EdiZon-Overlay)}'
|
||||
set-ini-val ./include/sysmodules/config.ini FPSLocker 'footer' '{ini_file(Versions,FPSLocker)}'
|
||||
set-ini-val ./include/sysmodules/config.ini sys-clk 'footer' '{ini_file(Versions,sys-clk)}'
|
||||
set-ini-val ./include/sysmodules/config.ini Status-Monitor-Overlay 'footer' '{ini_file(Versions,Status-Monitor-Overlay)}'
|
||||
set-ini-val ./include/sysmodules/config.ini NX-FanControl 'footer' '{ini_file(Versions,NX-FanControl)}'
|
||||
0
include/sysmodules/config.ini
Normal file
0
include/sysmodules/config.ini
Normal file
144
include/sysmodules/sysmodules.ini
Normal file
144
include/sysmodules/sysmodules.ini
Normal file
@@ -0,0 +1,144 @@
|
||||
[System Module]
|
||||
|
||||
[ldn-mitm]
|
||||
try:
|
||||
download https://api.github.com/repos/DefenderOfHyrule/ldn_mitm/releases?per_page=1 /config/ultrahand/downloads/ldn-mitm-api.json
|
||||
json_file /config/ultrahand/downloads/ldn-mitm-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/ldn-mitm.zip
|
||||
unzip /config/ultrahand/downloads/ldn-mitm.zip /
|
||||
delete /config/ultrahand/downloads/ldn-mitm-api.json
|
||||
delete /config/ultrahand/downloads/ldn-mitm.zip
|
||||
|
||||
[MissionControl]
|
||||
try:
|
||||
download https://api.github.com/repos/ndeadly/MissionControl/releases?per_page=1 /config/ultrahand/downloads/missioncontrol-api.json
|
||||
json_file /config/ultrahand/downloads/missioncontrol-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/missioncontrol.zip
|
||||
unzip /config/ultrahand/downloads/missioncontrol.zip /
|
||||
delete /config/ultrahand/downloads/missioncontrol-api.json
|
||||
delete /config/ultrahand/downloads/missioncontrol.zip
|
||||
|
||||
[sys-patch]
|
||||
try:
|
||||
download https://api.github.com/repos/impeeza/sys-patch/releases?per_page=1 /config/ultrahand/downloads/sys-patch-api.json
|
||||
json_file /config/ultrahand/downloads/sys-patch-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/sys-patch.zip
|
||||
unzip /config/ultrahand/downloads/sys-patch.zip /
|
||||
delete /config/ultrahand/downloads/sys-patch-api.json
|
||||
delete /config/ultrahand/downloads/sys-patch.zip
|
||||
|
||||
[SaltyNX]
|
||||
try:
|
||||
download https://api.github.com/repos/masagrator/SaltyNX/releases?per_page=1 /config/ultrahand/downloads/saltynx-api.json
|
||||
json_file /config/ultrahand/downloads/saltynx-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/saltynx.zip
|
||||
unzip /config/ultrahand/downloads/saltynx.zip /
|
||||
delete /config/ultrahand/downloads/saltynx-api.json
|
||||
delete /config/ultrahand/downloads/saltynx.zip
|
||||
|
||||
[sys-botbase]
|
||||
try:
|
||||
download https://api.github.com/repos/olliz0r/sys-botbase/releases?per_page=1 /config/ultrahand/downloads/sys-botbase-api.json
|
||||
json_file /config/ultrahand/downloads/sys-botbase-api.json
|
||||
download {json_file(0,assets,1,browser_download_url)} /config/ultrahand/downloads/sys-botbase.zip
|
||||
unzip /config/ultrahand/downloads/sys-botbase.zip /
|
||||
delete /config/ultrahand/downloads/sys-botbase-api.json
|
||||
delete /config/ultrahand/downloads/sys-botbase.zip
|
||||
|
||||
[TriPlayer]
|
||||
try:
|
||||
download https://api.github.com/repos/DefenderOfHyrule/TriPlayer/releases?per_page=1 /config/ultrahand/downloads/triplayer-api.json
|
||||
json_file /config/ultrahand/downloads/triplayer-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/triplayer.zip
|
||||
unzip /config/ultrahand/downloads/triplayer.zip /
|
||||
delete /config/ultrahand/downloads/triplayer-api.json
|
||||
delete /config/ultrahand/downloads/triplayer.zip
|
||||
|
||||
[Alchemist]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/Alchemist/releases?per_page=1 /config/ultrahand/downloads/alchemist-api.json
|
||||
json_file /config/ultrahand/downloads/alchemist-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/alchemist.zip
|
||||
unzip /config/ultrahand/downloads/alchemist.zip /
|
||||
delete /config/ultrahand/downloads/alchemist-api.json
|
||||
delete /config/ultrahand/downloads/alchemist.zip
|
||||
|
||||
[Memory-Kit]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/Memory-Kit/releases?per_page=1 /config/ultrahand/downloads/memory-kit-api.json
|
||||
json_file /config/ultrahand/downloads/memory-kit-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/memory-kit.zip
|
||||
unzip /config/ultrahand/downloads/memory-kit.zip /
|
||||
delete /config/ultrahand/downloads/memory-kit-api.json
|
||||
delete /config/ultrahand/downloads/memory-kit.zip
|
||||
|
||||
[Fizeau]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/Fizeau/releases?per_page=1 /config/ultrahand/downloads/fizeau-api.json
|
||||
json_file /config/ultrahand/downloads/fizeau-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/fizeau.ovl
|
||||
mv /config/ultrahand/downloads/fizeau.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/fizeau-api.json
|
||||
|
||||
[QuickNTP]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/QuickNTP/releases?per_page=1 /config/ultrahand/downloads/quickntp-api.json
|
||||
json_file /config/ultrahand/downloads/quickntp-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/quickntp.ovl
|
||||
mv /config/ultrahand/downloads/quickntp.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/quickntp-api.json
|
||||
|
||||
[ovl-sysmodules]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/ovl-sysmodules/releases?per_page=1 /config/ultrahand/downloads/ovl-sysmodules-api.json
|
||||
json_file /config/ultrahand/downloads/ovl-sysmodules-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/ovl-sysmodules.ovl
|
||||
mv /config/ultrahand/downloads/ovl-sysmodules.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/ovl-sysmodules-api.json
|
||||
|
||||
[EdiZon-Overlay]
|
||||
try:
|
||||
download https://api.github.com/repos/Arch9SK7/EdiZon-Overlay/releases?per_page=1 /config/ultrahand/downloads/edizon-overlay-api.json
|
||||
json_file /config/ultrahand/downloads/edizon-overlay-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/edizon-overlay.ovl
|
||||
mv /config/ultrahand/downloads/edizon-overlay.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/edizon-overlay-api.json
|
||||
|
||||
[FPSLocker]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/FPSLocker/releases?per_page=1 /config/ultrahand/downloads/fpslocker-api.json
|
||||
json_file /config/ultrahand/downloads/fpslocker-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/fpslocker.ovl
|
||||
mv /config/ultrahand/downloads/fpslocker.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/fpslocker-api.json
|
||||
|
||||
[sys-clk]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/sys-clk/releases?per_page=1 /config/ultrahand/downloads/sys-clk-api.json
|
||||
json_file /config/ultrahand/downloads/sys-clk-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/sys-clk.zip
|
||||
unzip /config/ultrahand/downloads/sys-clk.zip /
|
||||
delete /config/ultrahand/downloads/sys-clk-api.json
|
||||
delete /config/ultrahand/downloads/sys-clk.zip
|
||||
|
||||
[Status-Monitor-Overlay]
|
||||
try:
|
||||
download https://api.github.com/repos/ppkantorski/Status-Monitor-Overlay/releases?per_page=1 /config/ultrahand/downloads/status-monitor-overlay-api.json
|
||||
json_file /config/ultrahand/downloads/status-monitor-overlay-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/status-monitor-overlay.ovl
|
||||
mv /config/ultrahand/downloads/status-monitor-overlay.ovl /switch/.overlays/
|
||||
delete /config/ultrahand/downloads/status-monitor-overlay-api.json
|
||||
|
||||
[NX-FanControl]
|
||||
try:
|
||||
download https://api.github.com/repos/auggeythecat/NX-FanControl-recomp/releases?per_page=1 /config/ultrahand/downloads/nx-fancontrol-api.json
|
||||
json_file /config/ultrahand/downloads/nx-fancontrol-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/nx-fancontrol.zip
|
||||
unzip /config/ultrahand/downloads/nx-fancontrol.zip /
|
||||
delete /config/ultrahand/downloads/nx-fancontrol-api.json
|
||||
delete /config/ultrahand/downloads/nx-fancontrol.zip
|
||||
|
||||
[gap]
|
||||
;mode=table
|
||||
;background=false
|
||||
;gap=30
|
||||
2
include/updater/CURRENT.ini
Normal file
2
include/updater/CURRENT.ini
Normal file
@@ -0,0 +1,2 @@
|
||||
[OmniNX Downloader]
|
||||
version=1.0.0
|
||||
3
include/updater/RELEASE.ini
Normal file
3
include/updater/RELEASE.ini
Normal file
@@ -0,0 +1,3 @@
|
||||
[Release Info]
|
||||
pack_version=1.0.0
|
||||
firmware_version=21.2.0
|
||||
34
include/updater/boot_package.ini
Normal file
34
include/updater/boot_package.ini
Normal file
@@ -0,0 +1,34 @@
|
||||
[boot]
|
||||
make /config/omninx/manifest.ini
|
||||
set-ini-val ./include/updater/config.ini 'OmniNX' footer ''
|
||||
set-ini-val ./include/updater/config.ini 'Switch Firmware' footer ''
|
||||
set-ini-val ./include/updater/config.ini 'Omni Downloader' footer ''
|
||||
|
||||
try:
|
||||
download https://git.niklascfw.de/OmniNX/Omni-Downloader/raw/branch/main/include/updater/RELEASE.ini ./include/updater/RELEASE.ini
|
||||
ini_file ./include/updater/RELEASE.ini
|
||||
|
||||
set-ini-val ./include/updater/config.ini 'OmniNX' footer '{ini_file(Release Info,pack_version)}'
|
||||
ini_file /config/omninx/manifest.ini
|
||||
json '{"null":"true","{ini_file(OmniNX,version)}":"false"}'
|
||||
ini_file ./include/updater/RELEASE.ini
|
||||
set-ini-val ./include/updater/config.ini 'OmniNX' footer_highlight '{json({ini_file(Release Info,pack_version)})}'
|
||||
|
||||
set-ini-val ./include/updater/config.ini 'Switch Firmware' footer '{ini_file(Release Info,firmware_version)}'
|
||||
json '{"null":"true","{hos_version}":"false"}'
|
||||
set-ini-val ./include/updater/config.ini 'Switch Firmware' footer_highlight '{json({ini_file(Release Info,firmware_version)})}'
|
||||
|
||||
set-ini-val ./include/updater/config.ini 'Omni Downloader' footer '{ini_file(Release Info,pack_version)}'
|
||||
ini_file ./include/updater/CURRENT.ini
|
||||
json '{"null":"true","{ini_file(OmniNX Downloader,version)}":"false"}'
|
||||
ini_file ./include/updater/RELEASE.ini
|
||||
set-ini-val ./include/updater/config.ini 'Omni Downloader' footer_highlight '{json({ini_file(Release Info,pack_version)})}'
|
||||
|
||||
ini_file /config/omninx/manifest.ini
|
||||
json '{"null":"notify","{ini_file(OmniNX,version)}":""}'
|
||||
ini_file ./include/updater/RELEASE.ini
|
||||
'{json({ini_file(Release Info,pack_version)})}' '{WARNING_SYMBOL} Pack update verfügbar!' 24
|
||||
|
||||
ini_file ./include/updater/RELEASE.ini
|
||||
json '{"null":"notify","{hos_version}":""}'
|
||||
'{json({ini_file(Release Info,firmware_version)})}' '{WARNING_SYMBOL} Firmware update verfügbar!' 24
|
||||
14
include/updater/change_channel.ini
Normal file
14
include/updater/change_channel.ini
Normal file
@@ -0,0 +1,14 @@
|
||||
[Pack Varianten]
|
||||
|
||||
[Light Pack]
|
||||
ini_file '/config/omninx/manifest.ini'
|
||||
set-ini-val '/config/omninx/manifest.ini' 'OmniNX' 'channel_pack' 'Light'
|
||||
set-ini-val '/config/omninx/manifest.ini' 'OmniNX' 'update_channel' '0'
|
||||
[Standard Pack]
|
||||
ini_file '/config/omninx/manifest.ini'
|
||||
set-ini-val '/config/omninx/manifest.ini' 'OmniNX' 'channel_pack' 'Standard'
|
||||
set-ini-val '/config/omninx/manifest.ini' 'OmniNX' 'update_channel' '2'
|
||||
[OC Pack]
|
||||
ini_file '/config/omninx/manifest.ini'
|
||||
set-ini-val '/config/omninx/manifest.ini' 'OmniNX' 'channel_pack' 'OC'
|
||||
set-ini-val '/config/omninx/manifest.ini' 'OmniNX' 'update_channel' '1'
|
||||
8
include/updater/config.ini
Normal file
8
include/updater/config.ini
Normal file
@@ -0,0 +1,8 @@
|
||||
[OmniNX Pack]
|
||||
footer=
|
||||
footer_highlight=
|
||||
|
||||
[Switch Firmware]
|
||||
footer=
|
||||
footer_highlight=
|
||||
|
||||
80
include/updater/updater.ini
Normal file
80
include/updater/updater.ini
Normal file
@@ -0,0 +1,80 @@
|
||||
;title='OmniNX Updater'
|
||||
;creator=Woody2408, NiklasCFW
|
||||
;version=1.0.0
|
||||
;about='OmniNX Updater'
|
||||
;show_widget=true
|
||||
|
||||
[@CFW Pack]
|
||||
|
||||
[Version]
|
||||
;mode=table
|
||||
;background=true
|
||||
;gap=20
|
||||
ini_file '/config/omninx/manifest.ini'
|
||||
'Pack Variante' = '{ini_file(OmniNX,channel_pack)}'
|
||||
'Zurzeit installiert' = '{ini_file(OmniNX,version)}'
|
||||
|
||||
[OmniNX]
|
||||
try:
|
||||
download https://git.niklascfw.de/api/v1/repos/OmniNX/OmniNX/releases?limit=1 /config/ultrahand/downloads/omninx-api.json
|
||||
json_file /config/ultrahand/downloads/omninx-api.json
|
||||
ini_file '/config/omninx/manifest.ini'
|
||||
download {json_file(0,assets,{ini_file(OmniNX,update_channel)},browser_download_url)} /config/ultrahand/downloads/OmniNX.zip
|
||||
unzip /config/ultrahand/downloads/OmniNX.zip /
|
||||
delete /config/ultrahand/downloads/omninx-api.json
|
||||
delete /config/ultrahand/downloads/OmniNX.zip
|
||||
notify '{WARNING_SYMBOL} Führe in Hekate fort' 24
|
||||
|
||||
[*Update Channel ändern]
|
||||
;mini=true
|
||||
;mode=forwarder
|
||||
package_source ./change_channel.ini
|
||||
refresh-to *Update Channel ändern
|
||||
|
||||
[gap]
|
||||
;mode=table
|
||||
;background=false
|
||||
;gap=30
|
||||
|
||||
[Version]
|
||||
;mode=table
|
||||
;background=true
|
||||
;gap=20
|
||||
'Zurzeit installiert' = '{hos_version}'
|
||||
|
||||
[Switch Firmware]
|
||||
try:
|
||||
ini_file ./RELEASE.ini
|
||||
download https://git.niklascfw.de/api/v1/repos/OmniNX/NX_Firmware/releases?limit=1 /config/ultrahand/downloads/firmware-api.json
|
||||
json_file /config/ultrahand/downloads/firmware-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/firmware.zip
|
||||
mkdir '/Firmware.{ini_file(Release Info,firmware_version)}/'
|
||||
unzip '/config/ultrahand/downloads/firmware.zip' '/Firmware.{ini_file(Release Info,firmware_version)}/'
|
||||
delete '/config/ultrahand/downloads/firmware-api.json'
|
||||
delete '/config/ultrahand/downloads/firmware.zip'
|
||||
notify '{WARNING_SYMBOL} Führe in Daybreak fort' 24
|
||||
|
||||
[gap]
|
||||
;mode=table
|
||||
;background=false
|
||||
;gap=30
|
||||
|
||||
[Package Info]
|
||||
|
||||
[@Erweitert]
|
||||
|
||||
[Version]
|
||||
;mode=table
|
||||
;background=true
|
||||
;gap=20
|
||||
ini_file './CURRENT.ini'
|
||||
'Zurzeit installiert' = '{ini_file(OmniNX Downloader,version)}'
|
||||
|
||||
[Omni Downloader]
|
||||
try:
|
||||
download https://git.niklascfw.de/api/v1/repos/OmniNX/Omni-Downloader/releases?limit=1 /config/ultrahand/downloads/omni-downloader-api.json
|
||||
json_file /config/ultrahand/downloads/omni-downloader-api.json
|
||||
download {json_file(0,assets,0,browser_download_url)} /config/ultrahand/downloads/omni-downloader.zip
|
||||
unzip /config/ultrahand/downloads/omni-downloader.zip '/switch/.packages/'
|
||||
delete /config/ultrahand/downloads/omni-downloader-api.json
|
||||
delete /config/ultrahand/downloads/omni-downloader.zip
|
||||
48
package.ini
Normal file
48
package.ini
Normal file
@@ -0,0 +1,48 @@
|
||||
;creator=Woody2408
|
||||
;version=1.0.0
|
||||
;about='OmniNX Downloader'
|
||||
|
||||
[@CFW Pack]
|
||||
|
||||
[Version]
|
||||
;mode=table
|
||||
;background=true
|
||||
;gap=20
|
||||
ini_file './include/updater/config.ini'
|
||||
'Nach neuen Update suchen' = ''
|
||||
|
||||
[*OmniNX Updater]
|
||||
;mode=forwarder
|
||||
exec boot ./include/updater/boot_package.ini
|
||||
package_source ./include/updater/updater.ini
|
||||
|
||||
|
||||
[gap]
|
||||
;mode=table
|
||||
;background=false
|
||||
;gap=30
|
||||
|
||||
|
||||
[*Apps]
|
||||
;mode=forwarder
|
||||
exec boot ./include/apps/boot_package.ini
|
||||
package_source ./include/apps/apps.ini
|
||||
|
||||
[*Betriebssysteme]
|
||||
;mode=forwarder
|
||||
package_source ./include/os/os.ini
|
||||
|
||||
[*Emulatoren]
|
||||
;mode=forwarder
|
||||
exec boot ./include/emulatoren/boot_package.ini
|
||||
package_source ./include/emulatoren/emulatoren.ini
|
||||
|
||||
[*System Module]
|
||||
;mode=forwarder
|
||||
exec boot ./include/sysmodules/boot_package.ini
|
||||
package_source ./include/sysmodules/sysmodules.ini
|
||||
|
||||
[*Overlays]
|
||||
;mode=forwarder
|
||||
exec boot ./include/overlays/boot_package.ini
|
||||
package_source ./include/overlays/overlays.ini
|
||||
Reference in New Issue
Block a user