Il developer The-4n ha rilasciato un nuovo aggiornamento per hacBrewPack, lo strumento ci permette di creare archivi NCA da applicazioni homebrew per poi comprimerli in file NSP (Nintendo Submission Package) da poter utilizzare su Nintendo Switch.
L’applicazione, ricordiamo, necessita del keyset (file keys.dat
) che come abbiamo già ampiamente spiegato a più riprese potranno essere dumpate attraverso l’applicazione kezplez-nx e Hekate.
Chiavi richieste
Nome chiave | Descrizione |
header_key | Chiave di intestazione NCA |
key_area_key_application_xx | Chiavi di crittografia dell'area chiavi dell'applicazione |
Si rende necessario compilare l’applicazione homebrew con il proprio makefile, è comunque possibile utilizzare quello presente nella cartella dei modelli.
L’applicazione homebrew compilato deve avere i seguenti file:
build\exefs\main
build\exefs\main.npdm
[TARGET].nacp
- Posizionare i file
main
emain.npdm
nella cartellaexefs
, è possibile trovarli inbuild/exefs
. - Inserire successivamente il file nacp creato con il nome file
control.nacp
nella cartellacontrol
. - Posizionare l’icona con il nome file
icon_{Lingua}.dat
nella cartellacontrol
,icon_AmericanEnglish.dat
è quella predefinita se non si modifica manualmente il proprio nacp. - Controlla switchbrew per maggiori informazioni sui nomi delle lingue.
- Il formato del file dell’icona deve essere JPEG con dimensioni 256×256.
- Se hai problemi con l’icona, prova a farlo con Adobe Photoshop o inserisci i dati exi di Adobe Photoshop nel tuo file di icone.
- Se non inserisci l’icona nella cartella di controllo, dopo l’installazione del file nsp vedrai un’icona generale (non lo consiglio).
- La cartella
logo
dovrebbe contenere i fileNintendoLogo.png
eStartupMovie.gif
, queste appariranno quando l’app si sta caricando. - Entrambi i file non sono concessi in licenza in base a switchbrew ma non li ho comunque inclusi, puoi anche sostituire questi file con quelli personalizzati.
- Puoi usare
--nologo
se non hai un logo personalizzato e non hai quelli originali a portata di mano, poiché la Switch mostrerà uno schermo nero senza logo Nintendo in alto a sinistra e cambierà animazione in basso a destra.
Opzioni CLI
*nix: ./hacbrewpack [options...]
Windows: .\hacbrewpack [options...]
Utilizzo: hackbrewpack [options...]
Opzioni
-k, --keyset | Imposta il percorso file keyset, il percorso file predefinito è ./keys.dat |
-h, --help | Visualizza l'utilizzo |
--tempdir | Imposta il percorso file della directory temp, il percorso file predefinito è ./hacbrewpack_temp/ |
--ncadir | Imposta il percorso della directory di output nca, il percorso predefinito è /hacbrewpack_nca/ |
--nspdir | Imposta il percorso della directory di output nsp, il percorso predefinito è ./hacbrewpack_nsp/ |
--exefsdir | Imposta il percorso della directory exefs del programma, il percorso predefinito è ./exefs/ |
--romfsdir | Imposta il percorso di directory del romfs del programma, il percorso di default è ./romfs/ |
--logodir | Imposta il percorso della directory del logo del programma, il percorso predefinito è ./logo/ |
--controldir | Imposta il percorso della directory di controllo romfs, il percorso predefinito è ./control/ |
--noromfs | Salta creando la sezione romfs del programma |
--nologo | Salta la sezione del logo del programma. |
--keygeneration Dalla versione 1.00 | Imposta la keygeneration per la crittografia delle chiavi dell'area chiave |
--keyareakey Dalla versione 1.10 | Imposta la chiave area chiave 2 in esadecimale con 16 byte di lunghezza |
--sdkversion Dalla versione 1.10 | Imposta la versione dell'SDK in esadecimale, la versione dell'SDK predefinita è 000C1100 |
--plaintext Dalla versione 0.99-Beta 2 | Ignora le sezioni di crittografia e imposta il tipo di crittografia del blocco di intestazione della sezione in testo normale. |
--keepncadir Dalla versione 1.15 | Mantiene la directory NCA |
Opzioni Override | |
--titleid | Utilizza il titleid specificato per la creazione di file nca e patcha il titleid in npdm e nacp |
--titlename | Cambia il nome del titolo in nacp per tutte le lingue, la dimensione massima è 512 byte |
--titlepublisher | Cambia il titolo dell'editore in nacp per tutte le lingue, la dimensione massima è 256 byte |
--nopatchnacplogo | Salta la modifica del logo del handeling con auto in NACP |
Controlla anche la cartella dei modelli per la struttura predefinita delle cartelle, makefile e npdm json. Elimina le cartelle hacbrewpack_nca
e hacbrewpack_temp
prima di iniziare o potresti generare file NSP errati.
Changelog v3.05
- Aggiunto supporto per keygeneration 8+.
Changelog v3.00
- Aggiunto supporto per la creazione di file NCA LegalInformation.
- Aggiunta programma nca signature 2 mediante chiave pubblica acid auto-generata.
- Aggiunto backup automatico da
main.npdm
econtrol.nacp
. - Corretto un bug nel caricamento del file keyset
Changelog v2.05
- hacBrewPack ora tenta di caricare i file
keys.txt
,keys.ini
,prod.keys
e~/.switch/prod.keys
sekeys.dat
non esiste.
Changelog v2.00
- Aggiunto supporto per la creazione di NCA HtmlDocument.
Changelog v1.30
- Aggiunte le opzioni
--titleid
,--titlename
e--titlepublisher
per l’override dimain.npdm
econtrol.nacp
.
Changelog v1.21
- Aggiunto supporto per keygeneration 7.
- Modifica delle dimensioni del blocco hash PFS0 e delle dimensioni di riempimento per una migliore compatibilità.
Changelog v1.20
- hacBrewPack ora legge i titleid da NPDM.
- Aggiunta opzione nonacplogopatch.
- Corretto un bug che causava un livello IVFC IV non valido quando la sezione romfs era grande.
- Corretto un bug nella scrittura del padding.
- Corretto il range valido di sdkversion.
- Modifica delle dimensioni del blocco hash per una migliore compatibilità.
- Aumentata la dimensione del buffer di crittografia della sezione NCA.
- Modificato il range del titleid valido.
Changelog v1.18
- Corretto un bug che causava un cattivo PFS0 per i file più grandi di 4 GB nelle piattaforme a 32 bit.
Changelog v1.17
- Aggiunto buffer per la creazione di PFS0.
- Aumento delle dimensioni del buffer per la creazione di RomFS.
Changelog v1.16
- Corretto un bug che causava il fallimento della convalida di
control.nacp
nei titoli senza il nome del titolo di AmericanEnglish e l’autore del titolo.
Changelog v1.15
- HacBrewPack ora rimuove le directory temp e nca prima dell’avvio e dopo che il processo è terminato, è possibile utilizzare
--keepncadir
per mantenere la directory e i file nca una volta terminato il processo. - HacBrewPack ora non crea più file separati per ivfc livello 6 e romfs che riduce la dimensione della cartella temporanea..
- Aggiunto buffer per calcolare PFS0 masterhash.
- Risolto un bug nella creazione di PFS0 che risulta in un separatore di filepath duplicato.
Changelog v1.10
- Aggiunta l’opzione sdkversion.
- Aggiunta l’opzione keyareakey.
- Aggiunto summary.
Download: HacBrewPack v3.05 (x86)
Download: HacBrewPack v3.05 (x64)
Download: Source code hacBrewPack v3.05
Fonte: Github.com