Home Homebrew Rilasciato HATSKit Pro v2.0: Nuova gestione Component Extras, editor avanzato, sysMMC...

[Scena Switch] Rilasciato HATSKit Pro v2.0: Nuova gestione Component Extras, editor avanzato, sysMMC migliorata e pack Atmosphere personalizzati

122
0

HATSKit Pro è un software per PC Windows sviluppato da sthetix che semplifica in modo significativo la creazione, la personalizzazione e l’installazione di pack Atmosphere ed Hekate per Nintendo Switch modificate.

Pensato per chi utilizza regolarmente il custom firmware, il programma elimina gran parte delle operazioni manuali normalmente necessarie per mantenere aggiornati componenti fondamentali come Atmosphere, Hekate, SigPatches e numerosi homebrew.

Con l’arrivo della versione 2.0, HATSKit Pro compie un importante passo avanti, introducendo una struttura più moderna, flessibile e adatta sia agli utenti esperti sia a chi gestisce più console o più schede SD.

Il software consente di creare pack completamente personalizzati selezionando esclusivamente i componenti desiderati, evitando così l’installazione di file inutili e mantenendo il sistema più ordinato e leggero.

Uno dei cambiamenti più rilevanti riguarda l’introduzione dei Component Extras, una nuova funzione che permette a ogni homebrew di includere i propri file di configurazione dedicati senza dipendere dal tradizionale file skeleton.zip.

Quest’ultimo non è più obbligatorio e diventa semplicemente un’opzione aggiuntiva, offrendo una maggiore libertà nella costruzione dei pacchetti personalizzati.

La versione 2.0 introduce inoltre un editor dei componenti notevolmente migliorato, che rende più semplice la gestione delle configurazioni di Hekate, Atmosphere, Ultrahand, sys-clk, MissionControl e di molti altri strumenti utilizzati nella scena homebrew.

Anche l’interfaccia grafica è stata completamente rinnovata, adottando un moderno tema scuro che migliora la leggibilità e rende più piacevole l’utilizzo quotidiano del programma.

Particolare attenzione è stata dedicata alla gestione dei pack già presenti sulla scheda SD, con un sistema più affidabile per il riconoscimento e l’aggiornamento dei componenti installati.

Sono stati inoltre apportati miglioramenti alla gestione della sysMMC, aumentando la stabilità generale e offrendo opzioni più sicure per la configurazione e il blocco delle comunicazioni con i servizi Nintendo.

Tra le funzionalità più apprezzate troviamo il download automatico delle versioni più recenti direttamente dalle repository GitHub ufficiali, la possibilità di installare i pack sulla scheda SD con un singolo clic e il supporto all’aggiunta di file personalizzati e configurazioni specifiche per ciascun homebrew.

Questo approccio consente agli utenti di creare ambienti perfettamente adattati alle proprie esigenze senza dover intervenire manualmente su decine di archivi compressi.

Funzionalità

Pack Builder

  • Seleziona da una libreria di componenti disponibili.
  • Cerca e filtra i componenti per categoria.
  • Anteprima dei componenti selezionati prima della build.
  • Recupera le ultime informazioni di versione da GitHub.
  • Crea pack HATS personalizzati con i componenti scelti.
  • Rilevamento automatico della versione e download.
  • Applica gli extra dei componenti solo quando il componente è selezionato.
  • Continua la build senza assets/skeleton.zip quando gli extra forniscono i file migrati.

Component Editor

  • Visualizza e modifica le definizioni dei componenti.
  • Aggiungi nuovi componenti alla libreria.
  • Configura le sorgenti di download (GitHub releases o URL diretti).
  • Definisci i passaggi di elaborazione per ogni componente.
  • Gestisci i metadati dei componenti (nome, categoria, descrizione).
  • Supporto per più tipi di sorgenti e pattern di asset.
  • Gestisci gli extra dei componenti come config, risorse payload, file BMP, .bin e .dat.
  • Modifica direttamente nell’app file testuali (.ini, .txt, .config, .cfg, .json e simili).
  • Scansiona assets/component_extras/<component_id>/ per registrare automaticamente file aggiunti manualmente.
  • Modifica assets/skeleton.zip quando il contenuto di fallback legacy deve ancora essere aggiornato.

Pack Manager

  • Scarica pack HATS ufficiali direttamente da GitHub.
  • Scarica firmware pack ufficiali direttamente da GitHub.
  • Installa i pack sulla scheda SD con un clic.
  • Visualizza i componenti installati con informazioni dettagliate.
  • Sposta i componenti nel cestino per una rimozione sicura.
  • Ripristina i componenti dal cestino.
  • Rilevamento automatico del percorso della scheda SD.

Extra Config

  • Gestisci la connettività di rete Nintendo sysMMC dalla configurazione su SD.
  • Blocca la connettività sysMMC Nintendo usando la configurazione sicura predefinita.
  • Consenti la connettività sysMMC Nintendo quando necessario.
  • Aggiorna gli stessi file core usati dal controllo rete sysMMC in stile NetMan.
  • Si concentra solo sulla connettività sysMMC; le modalità online/offline emuMMC non sono gestite qui.

Funzionalità aggiuntive

  • Integrazione API GitHub integrata con supporto PAT.
  • Dimensione chunk download configurabile per prestazioni ottimali.
  • Interfaccia dark theme basata su ttkbootstrap.
  • Gestione avanzata degli errori e feedback utente.
  • Archiviazione persistente della configurazione.
  • Fallback skeleton opzionale per layout legacy dei pack.

Installazione

Usando il launcher Python (consigliato)

  • Scaricare l’ultima release.
  • Estrarre l’archivio nella cartella desiderata.
  • Fare doppio click su HATSKitPro.exe per avviare l’app.

Fatto! Il launcher farà automaticamente:

  • Verifica se .NET è installato sul sistema.
  • Installa .NET se assente.
  • Verifica se Python è installato.
  • Installa Python se assente.
  • Installa tutte le dipendenze richieste (ttkbootstrap, requests, py7zr).
    • py7zr viene usato per estrarre archivi .7z durante la build dei pack.
  • Avvia HATSKit Pro.

Nessuna configurazione manuale o operazione da terminale richiesta!

Installazione manuale (utenti avanzati)

Se si preferisce eseguire dal sorgente:

  • Clonare la repository:
bash

git clone https://github.com/sthetix/HATSKitPro.git
cd HATSKit-Pro
  • Installare Python 3.8 o superiore (se non già presente).
  • Installare le dipendenze: pip install ttkbootstrap requests py7zr
    • py7zr è necessario per estrarre archivi .7z durante la build dei pack.
  • Avviare l’app: python hatskitpro.py

Utilizzo

Prima configurazione

  1. Configurare GitHub Personal Access Token (opzionale ma consigliato).
    • Andare su Settings > GitHub PAT.
    • Inserire il token.
    • Questo aumenta i limiti API e velocizza i controlli versione.
    • Il token viene salvato in modo sicuro in config.json.
  2. Impostare il percorso della SD.
    • Andare nel tab Manager.
    • Cliccare Browse... per selezionare la SD card.
    • Oppure inserire manualmente il percorso (es. E:\ o F:).

Creazione di un pack personalizzato

  • Andare al tab Pack Builder.
  • Cercare o esplorare i componenti.
  • Utilizzare il filtro categoria.
  • Selezionare i componenti (Ctrl o Shift per multi-selezione).
  • Anteprima nella colonna destra.
  • Cliccare su Fetch Versions (opzionale).
  • Cliccare su Build Pack.

Il pack verrà salvato come: HATS-[data]-[hash].zip

Installazione di un pack

  1. Andare sul tab Manager.
  2. Opzione A – Pack ufficiale
  3. Cliccare Refresh.
  4. Cliccare Download Latest.
  5. Attendere il download.
  6. Cliccare Install to SD Card.
  7. Opzione B – Pack personalizzato
    • Cliccare Select Pack (.zip)...
    • Oppure viene selezionato automaticamente dopo la build.
  8. Assicurarsi che il percorso SD sia impostato.
  9. Cliccare Install.

Gestione componenti

  • Andare su Manager.
  • Visualizzare componenti installati.
  • Selezionare quelli da rimuovere.
  • Cliccare su Move to Trash.
  • Utilizzare il cestino per ripristinare se necessario.

Configurazione rete sysMMC

La scheda Extra Config segue lo stesso ambito semplificato del payload NetMan: gestisce esclusivamente la connettività di rete sysMMC Nintendo.

Modalità disponibili:

  • Blocca connettività Nintendo (default sicuro).
  • Consenti connettività Nintendo.

Quando blocca sysMMC:

  • HATSKit Pro applica impostazioni equivalenti alla modalità sysMMC protetta di NetMan.
  • Abilita blank_prodinfo_sysmmc.
  • Mantiene blank_prodinfo_emummc disabilitato.
  • Scrive regole in atmosphere/hosts/sysmmc.txt.
  • Mantiene DNS MITM attivo.
  • Abilita sys-patch e blocco update firmware.

Quando consente sysMMC:

  • Disabilita blank_prodinfo_sysmmc.
  • Mantiene blank_prodinfo_emummc disabilitato.
  • Rimuove il blocco degli host Nintendo su sysMMC.
  • Mantiene attivo DNS MITM con host predefiniti disabilitati.
  • Mantiene attive le patch di rete sys-patch.
  • Consente gli aggiornamenti del firmware.

La scheda Configurazione aggiuntiva non gestisce più separatamente le modalità online/offline o entrambe online di emuMMC.

Editing componenti

  1. Andare nella scheda Component Editor.
  2. Selezionare un componente dalla lista.
  3. Modificare i dettagli del componente:
    • Informazioni di base (nome, categoria, descrizione).
    • Tipo di sorgente (release GitHub o URL diretto).
    • Informazioni della repository e pattern degli asset.
    • Passaggi di elaborazione per estrazione e posizionamento.
  4. Cliccare su Save Changes per aggiornare la definizione del componente.
  5. Utilizzare Add New per creare nuove voci di componenti.

Gestione Component Extras

I component extras sono file che appartengono a un componente specifico e vengono inclusi nel pack finale solo quando quel componente viene selezionato.

Esempi:

  • Hekate: bootloader/hekate_ipl.ini, bootloader/res/*.bmp
  • Ultrahand: config/ultrahand/config.ini
  • DBI: switch/DBI/dbi.config
  • Modchip payload helpers: boot.dat, bootloader/payloads/*.bin

Per aggiungere gli extras tramite interfaccia (UI):

  • Andare nella scheda Component Editor.
  • Selezionare un componente.
  • Cliccare su Edit Extras.
  • Cliccare su Add File.
  • Scegliere il file da includere.
  • Inserire la cartella di destinazione all’interno del pack.
  • Per file nella root come boot.dat, lasciare la cartella vuota o usare /.
  • Per risorse Hekate, usare bootloader/res/.
  • Per configurazioni Ultrahand, utilizzare config/ultrahand/.
  • I file di testo possono essere selezionati e modificati con Edit.
  • I file binari o risorse possono essere sostituiti con Edit.

Per registrare i file copiati manualmente:

  • Copiare i file in assets/component_extras/<component_id>/
  • Mantenere sotto quella cartella la struttura del percorso finale prevista nel pack.
  • Cliccare su Edit Extras.
  • Cliccare su Scan Folder.

Esempio:


assets/component_extras/hekate/bootloader/hekate_ipl.ini
assets/component_extras/hekate/bootloader/res/ofw.bmp
assets/component_extras/hekate/bootloader/res/sysnand.bmp

Dopo la scansione, i file vengono registrati come:


bootloader/hekate_ipl.ini
bootloader/res/ofw.bmp
bootloader/res/sysnand.bmp

Durante la fase di build, i component extras sovrascrivono per impostazione predefinita i file già esistenti nello stesso percorso di destinazione. Questo rende possibile migrare gradualmente i file fuori da skeleton.zip in modo sicuro.

Skeleton fallback

Il file assets/skeleton.zip ora è opzionale. Può ancora essere utilizzato come archivio base legacy, ma gli component extras rappresentano la soluzione preferita per ospitare configurazioni e file di risorse appartenenti ai singoli componenti.

Ordine di costruzione:


optional skeleton.zip
+ selected component downloads
+ selected component extras
+ generated manifest and metadata
= final HATS pack

Se il file assets/skeleton.zip non è presente, il programma di compilazione registra un messaggio che indica che sta continuando senza di esso. Questo comportamento è previsto per le configurazioni migrate da HATSKit Pro 2.0.

Processing steps (riferimento)

Le fasi di elaborazione definiscono come le risorse scaricate vengono estratte e inserite nel pacchetto HATS. Azioni disponibili:

Azione Parametri Descrizione
unzip_to_root nessuno Estrae l’intero archivio nella root della scheda SD
unzip_to_path target_path Estrae l’intero archivio in un percorso specifico (es. switch/DBI/)
unzip_subfolder_to_path subfolder_name, target_path (opzionale) Estrae una sottocartella specifica dall’archivio in un percorso. Utile per cartelle annidate come theme-patches-master/systemPatches
copy_file target_path Copia un singolo file nella directory specificata
copy_file_to_auto_folder target_path Copia un file in una cartella creata automaticamente dal nome del file. Esempio: NXThemesInstaller.nro → switch/NXThemesInstaller/NXThemesInstaller.nro
find_and_copy source_file_pattern, target_path Trova i file che corrispondono a un pattern nell’archivio e li copia in un percorso
find_and_rename source_file_pattern, target_path, target_filename Trova e rinomina un file dall’archivio
delete_file path Elimina un file o una cartella specifica dopo l’estrazione

Esempio: Organizzazione di applicazioni homebrew:

bash

{
  "pattern": "*.nro",
  "processing_steps": [
    {
      "action": "copy_file_to_auto_folder",
      "target_path": "switch/"
    }
  ]
}

Esempio – Patch del tema:

bash

{
  "pattern": "theme-patches-*.zip",
  "processing_steps": [
    {
      "action": "unzip_subfolder_to_path",
      "subfolder_name": "theme-patches-master/systemPatches",
      "target_path": "themes/"
    }
  ]
}

Configurazione

config.json

Contiene le impostazioni dell’applicazione:

  • github_pat: Il GitHub Personal Access Token (opzionale)
  • download_chunk_size: Dimensione dei chunk di download in byte (predefinito: 2 MB)

components.json

Contiene tutte le definizioni dei componenti, inclusi:

  • Metadati dei componenti.
  • Sorgenti di download.
  • Informazioni sulle versioni.
  • Istruzioni di elaborazione (processing).
  • Metadati degli extra dei componenti.

Esempio di componenti aggiuntivi:

json

{
  "component_extras": [
    {
      "type": "text",
      "target": "bootloader/hekate_ipl.ini",
      "source": "assets/component_extras/hekate/bootloader/hekate_ipl.ini",
      "enabled": true,
      "overwrite": true
    },
    {
      "type": "file",
      "target": "bootloader/res/ofw.bmp",
      "source": "assets/component_extras/hekate/bootloader/res/ofw.bmp",
      "enabled": true,
      "overwrite": true
    }
  ]
}

manifest.json

  • Tiene traccia delle informazioni relative all’ultimo pacchetto compilato, a scopo di riferimento.

Requisiti di sistema

  • Sistema operativo: Windows 7/8/10/11 (64 bit)
  • Python: versione 3.8 o superiore (installato automaticamente dal launcher)
  • Memoria RAM: minimo 2 GB
  • Spazio su disco: almeno 100 MB liberi (più spazio aggiuntivo per i pack)
  • Connessione Internet: necessaria per scaricare componenti e pack ufficiali

Limiti API di GitHub

Senza autenticazione, le API di GitHub sono limitate a 60 richieste all’ora. Utilizzando un Personal Access Token (PAT):

  • Il limite aumenta fino a 5.000 richieste all’ora.
  • Consente un controllo più rapido delle versioni dei componenti.
  • Questo è consigliato (e spesso necessario) per un utilizzo intensivo del sistema.

Creazione di un GitHub PAT

  • Andare su GitHub Settings > Developer settings > Personal access tokens
  • Cliccare su “Generate new token (classic)”.
  • Assegnare un nome descrittivo al token (es. “HATSKit Pro”).
  • Per repository pubblici non sono necessari permessi o scope speciali.
  • Cliccare su “Generate token”.
  • Copiare il token e incollarlo nelle impostazioni di HATSKit Pro.

Risoluzione problemi

L’app non si avvia

  • Assicurarsi di eseguire il launcher HATSKitPro.exe, non lo script Python direttamente.
  • Verificare che l’antivirus non stia bloccando l’applicazione.
  • Provare ad avviarla come amministratore.

I componenti non vengono scaricati

  • Controllare la connessione a Internet.
  • Verificare che GitHub PAT sia valido (se utilizzato).
  • Potreste aver raggiunto il limite di richieste dell’API GitHub.
  • Riprovare più tardi oppure configurare un PAT.

Installazione non riuscita

  • Controllare che il percorso della scheda SD sia corretto.
  • Verificare che la SD non sia in sola lettura.
  • Assicurarsi di avere spazio sufficiente sulla scheda.
  • La SD deve essere formattata in FAT32 o exFAT.

Scheda SD non trovata

  • Verificare che la scheda SD sia inserita correttamente.
  • Controllare in Esplora File la lettera dell’unità assegnata.
  • Provare un’altra porta USB o un lettore di schede diverso.

Changelog

HATSKit Pro v2.0.0 si concentra nel rendere l’editor dei pack più completo e meno dipendente da un archivio skeleton globale.

  • Component Extras: ogni componente può avere file extra propri, che vengono inclusi nel pack solo quando il componente viene selezionato.
  • File di configurazione modificabili: gli extra di tipo testuale possono essere modificati direttamente in HATSKit Pro.
  • Allegati risorse: gli extra binari o di risorse (come .bmp, .bin e .dat) possono essere aggiunti, sostituiti, abilitati, disabilitati o rimossi.
  • Scan Folder: è possibile inserire manualmente i file in assets/component_extras/<component_id>/ e poi scansionare la cartella per registrarli automaticamente.
  • Skeleton opzionale: assets/skeleton.zip non è più obbligatorio e resta supportato solo come fallback per contenuti legacy/globali.
  • Ordine di build ottimizzato per la migrazione: il builder estrae prima lo skeleton opzionale, poi elabora i download dei componenti selezionati e infine applica gli extras.
  • Configurazione sysMMC in stile NetMan: la sezione Extra Config è limitata alla connettività Nintendo su sysMMC invece di gestire modalità separate sysMMC/emuMMC/both-online.

Download: HATSKit Pro v2.0

Download: Source code HATSKit Pro v2.0

Alcune parti di questo articolo sono state generate con l’aiuto dell’intelligenza artificiale.

🔥 Prodotti in promozione e articoli più venduti: Nintendo Switch

Vedi altri prodotti Nintendo Switch

Questo articolo contiene link affiliati a Amazon. Se acquisti tramite questi link, potrei guadagnare una commissione senza costi aggiuntivi per te.

Ultimo aggiornamento 2026-06-16 / Link di affiliazione / Immagini da Amazon Product Advertising API

LASCIA UN COMMENTO

Per favore inserisci il tuo commento!
Per favore inserisci il tuo nome qui
Captcha verification failed!
Punteggio utente captcha non riuscito. Ci contatti per favore!

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.