Compare commits
38 Commits
1.0.0
...
a326a668ae
| Author | SHA1 | Date | |
|---|---|---|---|
| a326a668ae | |||
| c0ca35ef1d | |||
| febe14c088 | |||
| 28f64c495e | |||
| 1fce809e46 | |||
| 630523bd06 | |||
| fb45521fc4 | |||
| 458048f0f6 | |||
| b1a8813ea0 | |||
| 6c945aadb1 | |||
| c9545591bc | |||
| 818d8809b2 | |||
| 0a50067dc4 | |||
| e3b8698438 | |||
| 56aab21389 | |||
| e086c386e7 | |||
| 60816c8a7a | |||
| 44ff2ed84f | |||
| e946e2a9fe | |||
| bbbda846bd | |||
| 6db5152c93 | |||
| 877d9e4064 | |||
| 6ffb0a4f92 | |||
| 580412fac9 | |||
| b45827a4e7 | |||
| bab4c9043d | |||
| 9a56874da8 | |||
| 0e48ae2ab4 | |||
| c7a9a7377d | |||
| 2829e7f863 | |||
| 5663110730 | |||
| 0d10404b2c | |||
| 3d7d14ecec | |||
| b8286bc28b | |||
| 8747e22f58 | |||
| 6f8d2c1eb5 | |||
| 8905ebf2a8 | |||
| 69ed9cb1ab |
78
README.md
@@ -12,15 +12,15 @@ OmniNX ist ein vollständiges Custom-Firmware-Setup für die Nintendo Switch, ve
|
||||
* **Ultrahand Reload** – Overlay-Menü und Package-System (Alchemist, RAM Patcher, OmniNX Downloader)
|
||||
* **Vorkonfigurierte Payloads** – Lockpick RCM (Pro), TegraExplorer, Modchip-Toolboxen
|
||||
* **Sicherheit und Patches** – sys-patch, DNS-MitM, USB 3.0 Force
|
||||
* **Modulare Struktur** – Build-Skripte und Git LFS für überschaubare Repo-Größe
|
||||
* **Modulare Struktur** – Build-Skripte für einfaches Erstellen der Packs
|
||||
* **RAM-Patcher-Packages** – Optionale Speicher-Konfigurationen (Default, RAM Patch, 4GB Kip, etc.)
|
||||
|
||||
## Varianten
|
||||
|
||||
| Variante | Beschreibung |
|
||||
|----------|---------------|
|
||||
| **Standard** | Volles Pack: alle Homebrew-Apps, Overlays, Themes und Packages |
|
||||
| **Light** | Minimales Pack: nur Kern-Apps und Overlays (Daybreak, DBI, JKSV, Sphaira, Ultrahand, etc.) |
|
||||
| **Standard** | Volles Pack: alle Homebrew-Apps, Overlays, Themes und Packages |
|
||||
| **OC** | Volles Pack plus Overclocking: OC Toolkit, sys-clk EOS, SaltySD-Integration |
|
||||
|
||||
## Inhalt von OmniNX
|
||||
@@ -32,7 +32,7 @@ OmniNX ist ein vollständiges Custom-Firmware-Setup für die Nintendo Switch, ve
|
||||
4. **[Ultrahand Reload](https://github.com/ppkantorski/Ultrahand-Overlay)** – Overlay-Menü und Package-System
|
||||
|
||||
### **2. Payloads**
|
||||
* **[Lockpick RCM](https://github.com/saneki/Lockpick_RCM)** / **Lockpick RCM** – Konsolen-Key-Extraktion
|
||||
* **[Lockpick RCM](https://github.com/saneki/Lockpick_RCM)** – Konsolen-Key-Extraktion
|
||||
* **[TegraExplorer](https://github.com/suchmememanyskill/TegraExplorer)** – Low-Level-Dateimanager
|
||||
* **[hwfly_toolbox](https://github.com/hwfly-nx/hwfly-toolbox)** – hwfly-Modchip-Toolbox
|
||||
* **[Instinct_toolbox](https://github.com/Xnopyt/HWFLY-Instinct)** – Instinct-Modchip-Toolbox
|
||||
@@ -87,81 +87,43 @@ OmniNX ist ein vollständiges Custom-Firmware-Setup für die Nintendo Switch, ve
|
||||
```
|
||||
OmniNX/
|
||||
├── staging/ # Gemeinsame Install-Stage-Dateien (Bootloader, Payloads, Nyx, etc.)
|
||||
├── standard/ # Standard-Variante (voll)
|
||||
├── light/ # Light-Variante (minimal)
|
||||
├── oc/ # OC-Variante (Overclocking + SaltySD)
|
||||
└── scripts/ # Build-Skripte (build-pack.sh, build-all.sh)
|
||||
├── variants/ # Varianten-Inhalt
|
||||
│ ├── light/ # Light-Variante (minimal)
|
||||
│ ├── standard/ # Standard-Variante (voll)
|
||||
│ └── oc/ # OC-Variante (Overclocking + SaltySD)
|
||||
├── scripts/ # Build-Skripte
|
||||
│ └── build-all.sh
|
||||
├── VERSION # Version (wird in die Packs eingetragen)
|
||||
└── output/ # Erstellte ZIP-Archive (wird beim Build erstellt)
|
||||
```
|
||||
|
||||
## Repository-Setup (Git LFS)
|
||||
|
||||
Dieses Repository nutzt **Git LFS** für Binärdateien. Ohne LFS wäre das Repo sehr groß und würde mit jedem Update wachsen.
|
||||
|
||||
### Ersteinrichtung
|
||||
|
||||
```bash
|
||||
# Git LFS installieren (z. B. macOS)
|
||||
brew install git-lfs
|
||||
|
||||
# Im Repo initialisieren
|
||||
git lfs install
|
||||
```
|
||||
|
||||
### Klonen
|
||||
|
||||
```bash
|
||||
git clone <repository-url>
|
||||
cd OmniNX
|
||||
```
|
||||
|
||||
Falls das Repo bereits ohne LFS geklont wurde:
|
||||
|
||||
```bash
|
||||
git lfs install
|
||||
git lfs pull
|
||||
```
|
||||
|
||||
Siehe `.gitattributes` für LFS-Track-Muster. Zu GitHub-Quota und Bandbreiten-Limits siehe Projekt-Docs oder SETUP.md.
|
||||
|
||||
## Packs bauen
|
||||
|
||||
### Voraussetzungen
|
||||
|
||||
- Bash, `zip`, Git LFS
|
||||
|
||||
### Einzelne Variante bauen
|
||||
|
||||
```bash
|
||||
./scripts/build-pack.sh [standard|light|oc] [version]
|
||||
```
|
||||
|
||||
Beispiel: `./scripts/build-pack.sh standard 1.0.0`
|
||||
- Bash, `zip`
|
||||
|
||||
### Alle Varianten bauen
|
||||
|
||||
```bash
|
||||
./scripts/build-all.sh [version]
|
||||
./scripts/build-all.sh
|
||||
```
|
||||
|
||||
Die Skripte kopieren Staging- und Varianten-Inhalt, aktualisieren `manifest.ini` mit der Version und erstellen ZIP-Archive.
|
||||
|
||||
Die Version steht in `{variant}/config/omninx/manifest.ini`.
|
||||
Die Version wird aus der Datei `VERSION` gelesen und in `manifest.ini` sowie die ZIP-Dateinamen übernommen. Die fertigen Packs liegen in `output/`.
|
||||
|
||||
## Installation
|
||||
|
||||
1. **SD-Karte vorbereiten** – Als FAT32 formatieren
|
||||
2. **Dateien kopieren** – Gewünschtes Varianten-ZIP auf die SD-Root entpacken (oder OmniNX Installer nutzen)
|
||||
3. **Booten** – Hekate oder Fusee per RCM laden
|
||||
4. **Optional** – Einstellungen in `config/` anpassen (Sphaira, Ultrahand, etc.)
|
||||
2. **Dateien kopieren** – Gewünschtes Varianten-ZIP auf die SD-Root entpacken
|
||||
3. **Installation** – Beim start vom Hekate OmniNX Installer Payload auswählen und Anweisungen befolgen
|
||||
|
||||
## Verwendung
|
||||
|
||||
### Boot-Optionen (Hekate)
|
||||
### Boot-Optionen (Hekate-Launch)
|
||||
- **CFW-EmuMMC** – Custom Firmware mit EmuMMC
|
||||
- **OFW** – Original-Firmware
|
||||
- **TegraExplorer** – Dateisystem-Explorer
|
||||
- **Lockpick RCM** – Key-Extraktion
|
||||
- **Modchip-Toolboxen** – hwfly, Instinct, PicoFly (variantenabhängig)
|
||||
|
||||
### Overlay-Menü
|
||||
- **L + R + PLUS** – Ultrahand-Reload-Overlay öffnen
|
||||
@@ -189,14 +151,12 @@ Die verwendeten Projekte unterliegen ihren jeweiligen Lizenzen. Das OmniNX-Pack
|
||||
## Support
|
||||
|
||||
* **Discord:** [NiklasCFW Modding Community](https://discord.gg/niklascfw)
|
||||
* **GitHub:** [Woody-NX](https://github.com/Woody-NX) · **[NiklasCFW](https://github.com/Niklas080208)**
|
||||
* **Releases:** [OmniNX](https://github.com/Woody-NX/OmniNX/releases)
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
|
||||
[](https://github.com/OmniNX/OmniNX/releases)
|
||||
[](https://github.com/OmniNX/OmniNX)
|
||||
[](https://git.niklascfw.de/OmniNX/OmniNX/releases)
|
||||
[](https://git.niklascfw.de/OmniNX/OmniNX)
|
||||
|
||||
</div>
|
||||
|
||||
@@ -5,8 +5,9 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
||||
OUTPUT_DIR="$PROJECT_ROOT/output"
|
||||
STAGING_DIR="$PROJECT_ROOT/staging"
|
||||
VARIANTS_DIR="$PROJECT_ROOT/varients"
|
||||
VARIANTS_DIR="$PROJECT_ROOT/variants"
|
||||
VERSION="$(tr -d '[:space:]' < "$PROJECT_ROOT/VERSION")"
|
||||
ZIP_EXCLUDE=(-x "*.DS_Store" -x "*__MACOSX*" -x "._*")
|
||||
|
||||
# Clear output directory
|
||||
clear_output_directory() {
|
||||
@@ -16,7 +17,25 @@ clear_output_directory() {
|
||||
echo "Output-Verzeichnis gelöscht."
|
||||
}
|
||||
|
||||
# Light: Staging (Root) + Ordner "OmniNX Light" = varients/light
|
||||
# Update manifest.ini and Sphaira theme version in build directory
|
||||
update_manifest_version() {
|
||||
local build_dir="$1"
|
||||
local variant_dir="$2"
|
||||
local base="$build_dir/$variant_dir"
|
||||
local manifest_path="$base/config/omninx/manifest.ini"
|
||||
local theme_path="$base/config/sphaira/themes/omninx.ini"
|
||||
for path in "$manifest_path" "$theme_path"; do
|
||||
if [[ -f "$path" ]]; then
|
||||
if [[ "$(uname)" == "Darwin" ]]; then
|
||||
sed -i '' "s/^version=.*/version=$VERSION/" "$path"
|
||||
else
|
||||
sed -i "s/^version=.*/version=$VERSION/" "$path"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
# Light: Staging (Root) + Ordner "OmniNX Light" = variants/light
|
||||
build_light() {
|
||||
local build_dir
|
||||
build_dir="$(mktemp -d)"
|
||||
@@ -24,8 +43,9 @@ build_light() {
|
||||
cp -R "$STAGING_DIR/." "$build_dir/"
|
||||
mkdir -p "$build_dir/OmniNX Light"
|
||||
cp -R "$VARIANTS_DIR/light/." "$build_dir/OmniNX Light/"
|
||||
update_manifest_version "$build_dir" "OmniNX Light"
|
||||
mkdir -p "$OUTPUT_DIR"
|
||||
cd "$build_dir" && zip -q -r "$OUTPUT_DIR/OmniNX-Light-$VERSION.zip" . && cd "$PROJECT_ROOT"
|
||||
cd "$build_dir" && zip -q -r "$OUTPUT_DIR/OmniNX-Light-$VERSION.zip" . "${ZIP_EXCLUDE[@]}" && cd "$PROJECT_ROOT"
|
||||
rm -rf "$build_dir"
|
||||
}
|
||||
|
||||
@@ -38,8 +58,9 @@ build_standard() {
|
||||
mkdir -p "$build_dir/OmniNX Standard"
|
||||
cp -R "$VARIANTS_DIR/light/." "$build_dir/OmniNX Standard/"
|
||||
cp -R "$VARIANTS_DIR/standard/." "$build_dir/OmniNX Standard/"
|
||||
update_manifest_version "$build_dir" "OmniNX Standard"
|
||||
mkdir -p "$OUTPUT_DIR"
|
||||
cd "$build_dir" && zip -q -r "$OUTPUT_DIR/OmniNX-Standard-$VERSION.zip" . && cd "$PROJECT_ROOT"
|
||||
cd "$build_dir" && zip -q -r "$OUTPUT_DIR/OmniNX-Standard-$VERSION.zip" . "${ZIP_EXCLUDE[@]}" && cd "$PROJECT_ROOT"
|
||||
rm -rf "$build_dir"
|
||||
}
|
||||
|
||||
@@ -53,8 +74,9 @@ build_oc() {
|
||||
cp -R "$VARIANTS_DIR/light/." "$build_dir/OmniNX OC/"
|
||||
cp -R "$VARIANTS_DIR/standard/." "$build_dir/OmniNX OC/"
|
||||
cp -R "$VARIANTS_DIR/oc/." "$build_dir/OmniNX OC/"
|
||||
update_manifest_version "$build_dir" "OmniNX OC"
|
||||
mkdir -p "$OUTPUT_DIR"
|
||||
cd "$build_dir" && zip -q -r "$OUTPUT_DIR/OmniNX-OC-$VERSION.zip" . && cd "$PROJECT_ROOT"
|
||||
cd "$build_dir" && zip -q -r "$OUTPUT_DIR/OmniNX-OC-$VERSION.zip" . "${ZIP_EXCLUDE[@]}" && cd "$PROJECT_ROOT"
|
||||
rm -rf "$build_dir"
|
||||
}
|
||||
|
||||
|
||||
BIN
staging/bootloader/payloads/OmniNX-Installer.bin
Normal file → Executable file
BIN
staging/bootloader/sys/nyx.bin
Normal file → Executable file
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
@@ -1,7 +1,7 @@
|
||||
[config]
|
||||
autoboot=0
|
||||
autoboot_list=0
|
||||
bootwait=4
|
||||
bootwait=3
|
||||
backlight=90
|
||||
autohosoff=2
|
||||
updater2p=1
|
||||
@@ -40,16 +40,16 @@ icon=bootloader/res/empty_nobox.bmp
|
||||
payload=bootloader/payloads/Hekate.bin
|
||||
icon=bootloader/res/empty_nobox.bmp
|
||||
|
||||
[Tegra_Explorer]
|
||||
payload=bootloader/payloads/Tegra_Explorer.bin
|
||||
[APL]
|
||||
payload=bootloader/payloads/AllgemeinerProblemLoeser.bin
|
||||
icon=bootloader/res/Tegra_Explorer_hue.bmp
|
||||
|
||||
[Lockpick_RCM]
|
||||
payload=bootloader/payloads/Lockpick_RCM.bin
|
||||
icon=bootloader/res/lockpick_hue.bmp
|
||||
--------------------------------------------------------------
|
||||
;{NiklasCFW Ein Nintendo Switch CFW Pack}
|
||||
;{Created by Woody2408 @ https://github.com/Woody-NX}
|
||||
;{Niklas Discord Server @ https://discord.gg/KBmq9TGA}
|
||||
;{OmniNX - Ein Nintendo Switch CFW Pack}
|
||||
;{Created by Woody2408 and NiklasCFW @ https://git.niklascfw.de/OmniNX/OmniNX}
|
||||
;{NiklasCFW Discord Server @ https://discord.gg/niklascfw}
|
||||
|
||||
|
||||
BIN
variants/light/bootloader/payloads/AllgemeinerProblemLoeser.bin
Executable file
BIN
variants/light/bootloader/payloads/Lockpick_RCM_Pro.bin
Normal file
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 144 KiB |
BIN
variants/light/bootloader/res/Ubuntu-Noble_hue.bmp
Normal file
|
After Width: | Height: | Size: 144 KiB |
BIN
variants/light/bootloader/res/android_hue.bmp
Normal file
|
After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 150 KiB After Width: | Height: | Size: 150 KiB |
BIN
variants/light/bootloader/res/icon_fedora_hue.bmp
Normal file
|
After Width: | Height: | Size: 150 KiB |
BIN
variants/light/bootloader/res/icon_payload.bmp
Normal file
|
After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 144 KiB |
BIN
variants/light/bootloader/res/icon_switch_hue.bmp
Normal file
|
After Width: | Height: | Size: 144 KiB |
BIN
variants/light/bootloader/res/icon_ubuntu_hue.bmp
Normal file
|
After Width: | Height: | Size: 144 KiB |
BIN
variants/light/bootloader/res/lakka_hue.bmp
Normal file
|
After Width: | Height: | Size: 144 KiB |
BIN
variants/light/bootloader/res/linux_hue.bmp
Normal file
|
After Width: | Height: | Size: 144 KiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 144 KiB |
BIN
varients/light/bootloader/sys/nyx.bin → variants/light/bootloader/sys/nyx.bin
Normal file → Executable file
5
variants/light/config/omninx/manifest.ini
Normal file
@@ -0,0 +1,5 @@
|
||||
[OmniNX]
|
||||
current_pack=Light
|
||||
version={{VERSION}}
|
||||
update_channel=0
|
||||
channel_pack=Light
|
||||