Goldleaf - A Nintendo Switch multipurpose homebrew tool




Goldleaf is multipurpose homebrew tool for Nintendo Switch.​


Features

Goldleaf has a very similar concept to FBI, which is a similar tool for Nintendo 3DS homebrew.

These are its main features:

  • SD card browser: A simple but fully equiped file browser for the SD card, supporting several file formats (such as NSP, NRO, NACP, NXTheme, JPEG, tickets...), and with support for copying, pasting, renaming, deleting and creating files and directories.

  • Console memory browser: Same browser but to be used with NAND partitions, which also warns when writing or deleting content as it can be dangerous.

  • Remote PC browser: Via this feature, one can browse a PC's drives like any other filesystem, connected by a USB-C cable.

  • Content manager: Browse any kind of content in your SD card, console memory or game cartridge. You can browse all the NCAs, and as title options, you can remove the content, or export it as a NSP. NAND SYSTEM contents (system titles or contents) aren't allowed to be deleted. Invidual contents such as updates or DLC can be removed individually.

  • Ticket manager: Browse all tickets, both common and personalized. You can remove them, but an extra warning will be displayed when attempting to remove tickets being used by some content.

  • Web browser (web applets): Using the console's web applets, Goldleaf allows to search and navigate through web pages. If Goldleaf is launched through hbmenu as a NRO, WifiWebAuth applet will be used, which tends to fail sometimes, along with fewer features, such as lack of video support.

  • User account manager: Select a user account, and easily change things as the user's nickname or even delete it. Via the file browsers you can replace a user's icon with a JPEG image, but it can be a risky action. The icon needs to be a valid JPEG, with 256x256 dimensions. Goldleaf checks if the icon is valid to replace the other one.

  • Console information: Simple menu to see current firmware string, and the total free and occupied size on SD card and console memory.
Among all this features, Goldleaf is a very intuitive tool, with a fancy UI, and fully translated into 5 different languages: English, Spanish, German, French and Italian.

Common controls
  • (L-stick / D-pad) Move through the current menu

  • (R-stick) Move slightly faster through the current menu

  • (ZL / ZR) Show a dialog to shut down or reboot the console.
NRO version
  • (+ / -) Exit the application in order to return to hbmenu.
Disclaimer

NSP installs

Always keep in mind that installing NSPs can be a very easy way to get banned. If you use airplane mode and special DNSs like 90DNS, there is a smaller chance to get banned.

NEVER install untrusted NSPs. Goldleaf can identify (according to the NSP's application ID) whether the NSP is a homebrew NSP (IDs starting with "05", usually for forwarders), or a regular title (official ID range just allows IDs starting with "01")

Tickets

Tickets represent a game purchase, but technically speaking, you can't boot a title if the ticket isn't present (in case the title requires the ticket).

NSPs which don't have (nor require) a ticket are "standard crypto" NSPs. Standard-crypto titles aren't offical (usually reconverted content to avoid importing tickets).

Goldleaf will display whether a ticket is present or not, and if so, it's titlekey. Titlekeys are required to decrypt and access titles' content which require a ticket. Otherwise, they are undecryptable, hence unlaunchable by the system.

TL;DR: Always try to avoid untrusted NSPs, and if you go ahead and install CDN NSPs with tickets, avoid going online, or use special tools such as 90DNS, or you'll be banned for sure.

Forwarding

Goldleaf is released along with a NSP, in order to launch Goldleaf as an installed title, and take advantage of extra RAM and features such as web browsing.

The NSP is a forwarder since 0.6, what means that, instead of having Goldleaf's source inside the NSP, it simply loads the NRO from the SD card, meaning that only the NRO should be updated instead of having to reinstall the NSP.

Goldleaf's forwarding code tries to locate Goldleaf (Goldleaf.nro) in sd:/switch/ and sd:/switch/Goldleaf/. If it isn't found, an error message is displayed.

Settings

Goldleaf supports the customization of colors, assets and other options via a JSON file located at Goldleaf's folder: sd:/switch/Goldleaf/settings.json.

Sample

This is an example JSON for Goldleaf settings:

Code:
{
   "general": {
       "customLanguage": "es",
       "keysPath": "/switch/prod.keys",
       "externalRomfs": "/switch/Goldleaf/theme/rom"
   },
   "ui": {
       "background": "#aabbccdd",
       "base": "#aabbccdd",
       "baseFocus": "#aabbccdd",
       "text": "#aabbccdd",
       "menuItemSize": 80
   },
   "installs": {
       "ignoreRequiredFwVersion": true
   }
}

If a certain attribute isn't present Goldleaf will use default values. For colors, Goldleaf will initially load default light/dark themes according to the console's theme color, and later, colors present in the JSON will be used instead of default theme ones.

Notes

Via RomFs replacement, when Goldleaf tries to locate, for instance, romfs:/FileSystem/FileDataFont.ttf resource font, if romfsReplace is true and romfsReplacePath is, for instance, /switch/Goldleaf/testromfs, Goldleaf will look if sd:/switch/Goldleaf/testromfs/FileSystem/FileDataFont.ttf exists and use it if so, otherwise will use RomFs's one.

So, via this configurations, UI's images, resources, element sizes and even translations (using custom JSON translations) can be used, plus some more assets which will be added in future updates.

Known bugs
  • On Atmosphère and SX OS, exiting Goldleaf via HOME menu (as a NRO) seems to crash the system on 7.x firmwares.

  • Remote PC browsing in general seems to have several bugs, most of them related to the UI system.
Contributing

If you would like to contribute with new features, you are free to fork Goldleaf and open pull requests showcasing your additions.

If you just would like to suggest new ideas, but without actual code implementations, you're free to open an issue. Please try not to duplicate those, if the idea or problem is already reported in another issue.

Translations

Read this before making any new translations:

  • Goldleaf's aim is to, mainly, support languages supported by the console itself, so those not yet supported by Goldleaf and which aren't supported by consoles should have less priority and won't be probably accepted.

  • UI (Plutonium) lacks special UTF16 characters, so some languages like Russian or Korean will not work, at least on the UI's current state.
Credits and support

Credits

The main concepts of Goldleaf are and have been developed by me (XorTroll), but without the effort and support of many others, this project wouldn't have been a thing:

  • Adubbz and all the (old) Tinfoil contributors, for their huge work with title installing.

  • C4Phoenix, for his awesome work doing this project's logo, and the GIF displayed when launching the installed forwarder.

  • All the graphics except Goldleaf's logo (see credit above) were grabbed from Icons8.

  • 2767mr, for all the support given in Goldtree.

  • Simon for his libusbK implementation for C#, which has made Goldtree client possible.

  • shchmue and blawar for the system to get titlekeys without breaking processes, found in Lockpick.

  • Translators: unbranched and exelix for Italian, tiliarou and FuryBaguette for French, and LoOkYe and C4Phoenix for German.

  • All the testers, for reporting bugs and helping a lot with the project's development.
Discord server and beta testing

If you would like to be more informed about my projects' status and support, you should check my Discord server. It's a simple server for Nintendo hacking and homebrew, mainly focused on my projects. If you would like to be a beta-tester, then this is what you're looking for.

Enjoy this amazing homebrew!
 
Last edited by XorTroll, , Reason: 0.6 README changes

TWilliamson

Active Member
Newcomer
Joined
Jan 1, 2019
Messages
37
Trophies
0
Age
27
XP
123
Country
United Kingdom
I have two questions:
1) In 'Console contents', I can extract installed games to an NSP files, but when selecting installed game updates there is only an option to remove, and not to extract. How can I extract update files?

2) How can i extract installed games larger than 4GB with a FAT32 SD card?
 

XorTroll

Switching between my 2DS and my Switch
OP
Developer
Joined
Dec 28, 2017
Messages
637
Trophies
1
Location
Nowhere
Website
github.com
XP
4,129
Country
Spain
Hey guys, Goldleaf 0.6 is out after 4 long months of development! Go check it out!
https://github.com/XorTroll/Goldleaf/releases/tag/0.6

Changelog
  • NSP installs:
    • As Goldleaf's internal filesystem handling has been completely remade, installs have been internally remade. This apparently results in slightly faster installs, at least in my case.

    • Now the user won't be asked to ignore required firmware version or not, as that can be configured on the config.

    • Sleep-mode is disabled now in order to avoid to interrupt installs.

    • Now all the NSPs inside a directory can be installed in a row (see below).
  • USB installs:
    • USB installs have been improved into a new feature: remote PC browser!

    • Now you can directly browse your PC, plus any drives connected to it, as a regular filesystem, same as SD card or console memory.

    • It is also worth to mention that the new USB command system seems to be way, WAY more stable than any previous USB system in Goldleaf!

    • Anyway, always keep in mind that it might freeze or cause bugs with folders with tons of files.
  • File systems:
    • Presenting the new, remade USB system: remote PC browsing!
      • Instead of a simple connection, it's a whole filesystem implementation over USB.

      • Browse your PC (Windows-only with Goldtree) directly from Goldleaf! Any extra drive inserted browsable by the PC will be browsable here.

      • Since USB drives' support (fsp-usb service in Atmosphere) is still being worked on, you can use this system with drives inserted in your PC in order to browse or install files from there.
    • Two simple, QoL features have been added to filesystems (to directories in this case): the option to install all NSPs within the directory, and the option to set the archive bit on it.
  • UI
    • For now on, Goldleaf main color will continue to be golden, but the "secondary" color along with gold is going to be blue.

    • Therefore, both the icon and the main themes have been changed.
  • Goldleaf auto-updating:
    • Now Goldleaf supports updating itself, since https was supported on dkP. (this means direct access to GitHub for version checking and asset downloading)

    • Nevertheless, now Goldleaf's NSP is a forwarder, what means that just by updating the NRO you will target Goldleaf from HOME menu as always.

    • You can even upgrade the installed version if you want to!

    • As you may suppose, this requires internet connection :)
  • Amiibo dumping support
    • A new option has been added to the main menu, which adds support to dump real amiibos to be used with emuiibo.

    • Obviously, emuiibo 0.3 format is used. Please ensure you're also using the latest emuiibo version!
 

JonJaded

Well-Known Member
Member
Joined
May 22, 2016
Messages
624
Trophies
0
XP
2,357
Country
United States
  • Amiibo dumping support
    • A new option has been added to the main menu, which adds support to dump real amiibos to be used with emuiibo.

    • Obviously, emuiibo 0.3 format is used. Please ensure you're also using the latest emuiibo version!

B I G. Thanks a ton.
 

Pasqui

Active Member
Newcomer
Joined
Jan 22, 2017
Messages
37
Trophies
0
Age
44
XP
712
Country
Italy
Hey guys, Goldleaf 0.6 is out after 4 long months of development! Go check it out!
https://github.com/XorTroll/Goldleaf/releases/tag/0.6

Changelog
  • NSP installs:
    • As Goldleaf's internal filesystem handling has been completely remade, installs have been internally remade. This apparently results in slightly faster installs, at least in my case.

    • Now the user won't be asked to ignore required firmware version or not, as that can be configured on the config.

    • Sleep-mode is disabled now in order to avoid to interrupt installs.

    • Now all the NSPs inside a directory can be installed in a row (see below).
  • USB installs:
    • USB installs have been improved into a new feature: remote PC browser!

    • Now you can directly browse your PC, plus any drives connected to it, as a regular filesystem, same as SD card or console memory.

    • It is also worth to mention that the new USB command system seems to be way, WAY more stable than any previous USB system in Goldleaf!

    • Anyway, always keep in mind that it might freeze or cause bugs with folders with tons of files.
  • File systems:
    • Presenting the new, remade USB system: remote PC browsing!
      • Instead of a simple connection, it's a whole filesystem implementation over USB.

      • Browse your PC (Windows-only with Goldtree) directly from Goldleaf! Any extra drive inserted browsable by the PC will be browsable here.

      • Since USB drives' support (fsp-usb service in Atmosphere) is still being worked on, you can use this system with drives inserted in your PC in order to browse or install files from there.
    • Two simple, QoL features have been added to filesystems (to directories in this case): the option to install all NSPs within the directory, and the option to set the archive bit on it.
  • UI
    • For now on, Goldleaf main color will continue to be golden, but the "secondary" color along with gold is going to be blue.

    • Therefore, both the icon and the main themes have been changed.
  • Goldleaf auto-updating:
    • Now Goldleaf supports updating itself, since https was supported on dkP. (this means direct access to GitHub for version checking and asset downloading)

    • Nevertheless, now Goldleaf's NSP is a forwarder, what means that just by updating the NRO you will target Goldleaf from HOME menu as always.

    • You can even upgrade the installed version if you want to!

    • As you may suppose, this requires internet connection :)
  • Amiibo dumping support
    • A new option has been added to the main menu, which adds support to dump real amiibos to be used with emuiibo.

    • Obviously, emuiibo 0.3 format is used. Please ensure you're also using the latest emuiibo version!


V0.6 crash on SX
 

aarti

Killua Zoldyck
Member
Joined
Jul 24, 2017
Messages
518
Trophies
0
XP
665
Country
Germany
Hey guys, Goldleaf 0.6 is out after 4 long months of development! Go check it out!
https://github.com/XorTroll/Goldleaf/releases/tag/0.6

Changelog
  • NSP installs:
    • As Goldleaf's internal filesystem handling has been completely remade, installs have been internally remade. This apparently results in slightly faster installs, at least in my case.

    • Now the user won't be asked to ignore required firmware version or not, as that can be configured on the config.

    • Sleep-mode is disabled now in order to avoid to interrupt installs.

    • Now all the NSPs inside a directory can be installed in a row (see below).
  • USB installs:
    • USB installs have been improved into a new feature: remote PC browser!

    • Now you can directly browse your PC, plus any drives connected to it, as a regular filesystem, same as SD card or console memory.

    • It is also worth to mention that the new USB command system seems to be way, WAY more stable than any previous USB system in Goldleaf!

    • Anyway, always keep in mind that it might freeze or cause bugs with folders with tons of files.
  • File systems:
    • Presenting the new, remade USB system: remote PC browsing!
      • Instead of a simple connection, it's a whole filesystem implementation over USB.

      • Browse your PC (Windows-only with Goldtree) directly from Goldleaf! Any extra drive inserted browsable by the PC will be browsable here.

      • Since USB drives' support (fsp-usb service in Atmosphere) is still being worked on, you can use this system with drives inserted in your PC in order to browse or install files from there.
    • Two simple, QoL features have been added to filesystems (to directories in this case): the option to install all NSPs within the directory, and the option to set the archive bit on it.
  • UI
    • For now on, Goldleaf main color will continue to be golden, but the "secondary" color along with gold is going to be blue.

    • Therefore, both the icon and the main themes have been changed.
  • Goldleaf auto-updating:
    • Now Goldleaf supports updating itself, since https was supported on dkP. (this means direct access to GitHub for version checking and asset downloading)

    • Nevertheless, now Goldleaf's NSP is a forwarder, what means that just by updating the NRO you will target Goldleaf from HOME menu as always.

    • You can even upgrade the installed version if you want to!

    • As you may suppose, this requires internet connection :)
  • Amiibo dumping support
    • A new option has been added to the main menu, which adds support to dump real amiibos to be used with emuiibo.

    • Obviously, emuiibo 0.3 format is used. Please ensure you're also using the latest emuiibo version!
Finally able to browse my PC via USB, thanks!
 

goncalodoom

Well-Known Member
Member
Joined
Sep 12, 2009
Messages
420
Trophies
1
Age
31
Location
portugal
XP
907
Country
Portugal
It's saying i need sigpatches or firmware is too low when i try to install an nsp remotely, however i have all sigpatches and i'm on 8.1.0. Been using tingfoil and ns usb loader without any issues. Does anyone know how to fix this in this new release of goldleaf?
 
Last edited by goncalodoom,

XorTroll

Switching between my 2DS and my Switch
OP
Developer
Joined
Dec 28, 2017
Messages
637
Trophies
1
Location
Nowhere
Website
github.com
XP
4,129
Country
Spain
For a bug in the new USB system (let's say I'm stupid for using 32 bit integers instead of 64) + ~4GB installs from USB will probably fail.

Since I'm out for several days, can't fix this now.

When I get back I will make a quick fix as 0.6.1. Sorry for any trouble this might have caused.
 

guywhatever

Active Member
Newcomer
Joined
Sep 27, 2008
Messages
36
Trophies
0
XP
524
Country
United States
I tried it a couple of times, and each time I went to my main switch games folder, it would crash the switch when trying to install any nsp. My guess was that I had too many files in one folder, so I went and filed them all alphabetically. Seemed to work out fine. Looking forward to more progress on this wonderful project.
 

cyrilz87

Member
Newcomer
Joined
Apr 28, 2019
Messages
6
Trophies
0
Age
36
XP
314
Country
Singapore
when i used pc remote(new feature) to copy paste a file from my pc, suddenly my switch getting error while copying and my whole emummc(installed with some games) gone being wipe out! i restarted my switch but everything gone(no games) and checked my sd card from pc, my emummc folder empty inside
 

Phenj

Well-Known Member
Member
Joined
May 22, 2018
Messages
488
Trophies
0
XP
1,848
Country
Italy
Error-code 2168-0001 (0x2a8) Goldleaf 0.6
When running the latest Goldleaf version, using latest atmosphere

FIXED:
Set your System language to ENGLISH.
 
Last edited by Phenj,

XorTroll

Switching between my 2DS and my Switch
OP
Developer
Joined
Dec 28, 2017
Messages
637
Trophies
1
Location
Nowhere
Website
github.com
XP
4,129
Country
Spain
Error-code 2168-0001 (0x2a8) Goldleaf 0.6
When running the latest Goldleaf version, using latest atmosphere

FIXED:
Set your System language to ENGLISH.
Basically a bug regarding Italian language, will be fixed for 0.6.1. Sorry again, some features weren't apparently tested...
 
  • Like
Reactions: RedHunter and Phenj

jmrodrigues

Well-Known Member
Member
Joined
Feb 13, 2016
Messages
181
Trophies
0
Age
45
XP
996
Country
Portugal
Removing the USB install feature, i'm unable to use it on MAC, same as latest tinfoil, doesn't detect my usb connection... Anyone able to use it on macosx and NS-USBloader?
 

RedHunter

Well-Known Member
Member
Joined
Dec 12, 2014
Messages
440
Trophies
0
XP
1,552
Country
Italy
Basically a bug regarding Italian language, will be fixed for 0.6.1. Sorry again, some features weren't apparently tested...
Yeah I've Italian language too, damn I should have come here sooner, was going crazy because of that error too :wacko:
Waiting for the fix thanks.
 

ColorBoyKent

Well-Known Member
Newcomer
Joined
Jul 19, 2019
Messages
59
Trophies
0
Age
26
XP
110
Country
United States
Why every time I click USB install it freezes or try and view pc folders it freezes when I click certain folders it’s confusing me cause I never use to do it it’s like a hit or miss
 
D

Deleted User

Guest
why would you remove the usb install feature? this is completely useless on MACS now

had to go back to 0.5
 
Last edited by ,
  • Like
Reactions: TylerSGman

Yeabuddy

Well-Known Member
Newcomer
Joined
Jul 27, 2018
Messages
65
Trophies
0
Age
26
XP
80
Country
United States
Does anyone know why my Zadig installation keeps failing? I tried different USB cables and ports but it fails. My Zadig also shows NONE on the left:

upload_2019-8-4_18-49-14.png
 
General chit-chat
Help Users
  • No one is chatting at the moment.
    K3N1 @ K3N1: https://youtube.com/shorts/PArWUK0WyDQ?feature=share