Git Product home page Git Product logo

goldleaf's Introduction

Goldleaf

๐Ÿ’œ thanks for 2M downloads ๐Ÿ’œ

Discord Downloads License

Patreon GitHub sponsors PayPal

Ko-fi

drawing

drawing drawing drawing drawing drawing

drawing drawing

Table of contents

Features

Goldleaf's concept is very similar to FBI's, a well-known Nintendo 3DS homebrew tool.

  • Content explorer: An easy-to-use but fully featured filesystem browser.

    • Supported locations/devices:

      • SD card

      • Console memory (SAVE, SYSTEM, USER and PRODINFOF partitions)

      • Remote systems (via remote tools like Quark)

      • USB drives (thanks to libusbhsfs)

      • Game savedata (read-only, check below how to mount it)

      • NRO homebrew RomFs (read-only)

      Note: all will be automatically unmounted when Goldleaf is exited

    • Features:

      • Basic file operations: create, delete, copy, rename, view as hexadecimal/text, get size, etc.

      • Basic directory operations: create, delete, copy, rename, (un)set archive bit, get full size, etc.

      • Install NSP packages of applications/games, updates, add-on-content/DLC, etc. (Note: use this carefully, and make sure you know what you're doing!)

      • Launch other NRO homebrews and mount their RomFs (option mentioned above)

      • Execute .bin files as RCM payloads (reboot with them)

      • Set JPG/JPEG files as user icons (Note: use this carefully, and make sure you know what you're doing!)

      • // TODO: more

  • Content manager: an easy-to-use but fully featured content manager:

    • Basic content (program, update, DLC, etc.) operations:

      • View content information (ID, size, version, play stats...)

      • Uninstall/completely remove the content (won't remove savedata)

      • Export existing contents to a NSP package

      • Mount savedata to navigate it (check the Content explorer above)

      • Remove ticket if present (Note: use this carefully, and make sure you know what you're doing!)

      • Reset launch version (useful to be able to play a base game after an update has been removed)

      Note: some of this operations are not available with system or gamecard contents.

    • Check unused tickets, and remove them (Note: use this carefully, and make sure you know what you're doing!)

  • Web browser: makes use of the console's web applet:

    • Browse user-submitted URLs

    • Create and save bookmarks

    Note: the web browser is only guaranteed to work properly when launched as application.

  • Account manager: select a user (or just use the pre-selected one if present) and manage it:

    • Change nickname

    • View its icon

    • Delete user (of course, only if there is more than one in the system!)

    Note: to change the user's icon, check the Content explorer above.

  • Amiibo dump: create a virtual amiibo (for emuiibo) from a real amiibo figurine.

  • Settings: check both system and Goldleaf settings:

    • Firmware and updates:

      • Check current firmware information (version, hash, key generation)

      • Check for pending updates, and (if desired) remove them if present

      • Export current firmware or pending update data

    • Memory: check free and total space on different locations

    • Goldleaf settings: check settings present in settings.json

  • Updates: check for latest Goldleaf updates, and (if desired) update to a new release if it exists

  • About: check Goldleaf's version and how it was launched (as an applet or an application)

  • Goldleaf has been translated to 11 different languages so far: English, Spanish, German, French, Italian, Dutch, Japanese, Portuguese, Korean, traditional Chinese and simplified Chinese.

Thanks to all the various contributors to the different translations! ๐Ÿ’œ

Controls

  • Common:

    • (LR-stick / R-stick / D-pad): Move through the current menu

    • (ZL / ZR): Show a dialog to shut down or reboot the console.

    • (Minus / -): Show a dialog with this control information.

    • (Plus / +): Exit the application in order to return to hbmenu.

  • Content explorer:

    • (X): Unmount the selected location (only when a manually-mounted location is selected)

    • (Y): Select folder (might take a bit of time with folders with many sub-items)

Frequently asked questions

Make sure you check these before making an issue!

NSP installs

  • I keep getting 'invalid NCA'/'missing sigpatches' or weird FS/ETicket errors...

    Check the following:

    • The NSP is converted from XCI (using tools like 4NXCI)? Then you need extra patches.

    • Do you have all the required patches?

      If you have just updated to a new console version and this error happens, try to redownload them.

  • Goldleaf freezes and Quark doesn't respond/complains when I launch it...

    • Do you have USB set-up correctly? Check how to do so here.

      • If you do have USB corrently set-up, Quark shouldn't complain. If it does, try doing the setup again to ensure it is done fine.
    • Also, make sure you're launching Quark after having launched Goldleaf. Goldleaf needs to be opened first.

    • Are you using the latest version of both Goldleaf and Quark? Double-check it just in case, since this is a very common mistake.

  • I can't launch Quark / Quark is giving me errors on Linux...

    • Quark is a little bit fucky on Linux. Make sure to check the setup for some more information about the matter.

Disclaimer

NSP installing

Always keep in mind that installing NSP packages 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 won't do any special verification, so please be very careful about installing untrusted packages.

Tickets

Tickets represent a game purchase - technically speaking, you can't launch a title if the ticket isn't present and the title requires it (official titles require them). NSP packages which don't have/require a ticket are standard-crypto.

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

Quark and remote browsing

Quark Goldleaf's desktop Java tool, working as the desktop client for the remote PC option. It supports Windows, Linux and Mac.

Quark needs Java 9 or greater to run. See below the recommended installation for each supported system.

You also need to install libusbK drivers for USB to work fine.

Windows

The best way to install Java 9 in Windows (or a very simple one) is to install AdoptOpenJDK 11 or higher.

Note: make sure that the JDK/JRE you choose contains JavaFX! You can always install it manually otherwise

After installing it, double-clicking the JAR should be enough to start it.

Otherwise, run java -jar Quark.jar in the command prompt.

For the USB to get recognized, follow the following steps:

  • Download Zadig

  • Boot your console with CFW, connect it to the PC via USB

  • Open Goldleaf

  • With Zadig, select the device named "Goldleaf" (if it doesn't appear, ensure Goldleaf has a USB icon on the top of the screen, and select "List all devices" under "Options" in Zadig)

  • Install libusbK to that device (any other driver won't work fine)

Linux

Install OpenJDK 11 (or higher) in the terminal:

  • Run sudo add-apt-repository ppa:openjdk-r/ppa

  • Run sudo apt-get update

  • Finally, run sudo apt-get install openjdk-11-jdk (if you just want the JRE, install openjdk-11-jre instead)

  • Create the file /etc/udev/rules.d/99-switch.rules with the following contents: SUBSYSTEM=="usb", ATTRS{idVendor}=="057e", ATTRS{idProduct}=="3000", GROUP="plugdev"

  • Reload udev rules with: sudo udevadm control --reload-rules && sudo udevadm trigger

Now you can run Quark using java -jar Quark.jar.

Mac

Install OpenJDK 11 (or higher) in the terminal:

  • Install brew /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

  • Run brew tap AdoptOpenJDK/openjdk

  • Run brew install adoptopenjdk11 --cask

  • Finally, run java -version to check the JDK version

Now you can run Quark using java -jar Quark.jar.

Having done all this, the USB connection should work fine.

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:

{
    "general": {
        "customLanguage": "es",
        "externalRomFs": "/switch/Goldleaf/theme/rom",
        "use12hTime": true
    },
    "ui": {
        "background": "#aabbccdd",
        "base": "#aabbccdd",
        "baseFocus": "#aabbccdd",
        "text": "#aabbccdd",
        "menuItemSize": 80
    },
    "installs": {
        "ignoreRequiredFwVersion": false,
        "copyBufferMaxSize": 10485760
    },
    "export": {
        "decryptBufferMaxSize": 10485760
    },
    "web": {
        "bookmarks": [
            {
                "name": "Google",
                "url": "https://www.google.com"
            },
            {
                "name": "GitHub",
                "url": "https://www.github.com"
            }
        ]
    }
}

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 that might be added in future updates.

Known bugs

  • Exiting Goldleaf via HOME menu (as a NRO) seems to crash the system on 7.x firmwares due to a weird USB bug present on those specific versions. Any non-7.x firmware doesn't seem to have this issue.

Building

In order to build Goldleaf, you will need the following:

  • devkitA64

  • JDK 9 or higher (needed for Quark)

  • Maven (needed for Quark)

You will also need to install the following packages with devkitPro's pacman:

  • switch-sdl2 switch-freetype switch-glad switch-libdrm_nouveau switch-sdl2_gfx switch-sdl2_image switch-sdl2_ttf switch-sdl2_mixer

Remember to clone this repository recursively (git clone <this-repo-url> --recurse-submodules) since Goldleaf makes use of submodules.

In order to build Goldleaf, run make setup (only for the first time), then just run make (or make dev for a dev version) and wait for it to finish building.

In order to build Quark, just execute the build.sh script in its directory.

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.

You can always contact me on my Discord server (invite link below) as an easier way to suggest ideas or directly report issues.

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.

Note that some languages may contain untranslated (English) content. I prioritize relevant releases/updates over correct and fully up-to-date translations, thus releases may not contain complete translations.

Anyone with enough knowledge of a certain language is absolutely welcome to make a PR with translation suggestions and/or fixes.

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 (former Quark tool).

  • developer.su for NS-USBloader, which helped a lot on the development of Quark, mainly on the usage of usb4java and the base of a multi-platform JavaFX Java project.

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

  • shchmue for the system to get tickets from system save data without breaking anything, found in Lockpick.

  • WerWolv for the help with custom exception handling, avoiding those frustrating fatals.

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

  • All the testers, for reporting bugs and helping a lot with the project's development <3

goldleaf's People

Contributors

2767mr avatar 57op avatar adubbz avatar annsanns avatar aveao avatar blawar avatar caddak avatar chucktheripper avatar d3fau4 avatar ddinghoya avatar enspiron avatar fourminute avatar friedkeenan avatar krankrival avatar lewisdoesstuff avatar littlewhite-tb avatar lookye avatar moi3z avatar nnsee avatar noirscape avatar r-yatian avatar satelliteseeker avatar segfault42 avatar thatnerdypikachu avatar tiliarou avatar unbranched avatar wolfposd avatar xortroll avatar yyoossk avatar zkitx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

goldleaf's Issues

Add XCI installation

For a rough outline of what this entails:

NCAs need to be decrypted, the npdm in the program NCA must be fixed, the cnmt in the meta NCA must be updated, hashes must be fixed, all NCA headers must be fixed, NCA signatures must be 0ed out and then the NCAs must be re-encrypted.

After this, normal installation can proceed, assuming FS patches are installed

Title won't disappear after failed installation

When trying to install a nsp - I recieve this error - well I received an error I don't think it was this one this was what i got when running the command again.

2018082119430100-db1426d1dfd034027cecde9c2dd914b8

Which is fine, the application is in development and if it can't install an nsp thats completely understandable. The issue is that the console now has this weird game place holder that has a continuous spinning circle - which can't be deleted by pressing the + button. I've tried rebooting into stock and also using the clear logs feature in hekate (which I knew wasn't going to work but I thought I'd give it a shot)

2018082119481500-57b4628d2267231d57e0fc1078c0596d

Let me know if you needed any more information.

[SUGGESTION] Have switch libusbk drivers as a standalone download instead of directing to Zadig

The official release of LibUSBK (http://libusbk.sourceforge.net/UsbK3/index.html) includes a wizard to create drivers packages.

With that wizard tool ("Inf-Wizard") I created a driver package for the switch. (although you could make it again easily if you don't trust my files.)
InstallDriver.zip

Here is the documentation and tutorial to use the Inf-Wizard to create drivers packages: http://libusbk.sourceforge.net/UsbK3/usbk_installers.html

Error Code 0x00000202

Was only able to get Octopath Traveler to install but I can't get anything else to install, have tried renaming to simple names such as octopatchupdate.nsp or octupd.nsp, also tried network install and it says it can't find the cnmt. I have plenty of space on my SD card (23gb)

enhancement: folder browser and list jump

Hello,
I'd like to suggest three useful features (if possibile)

  • show masterkey version of nsp, if install fails
  • possibility to browse folders inside nsp directory
  • possibility 'paging' files faster inside a folder with r and l buttons (for example)
    Thanks

Add titlekey management options

Including:

  • Installing tik + cert pairs
  • Deleting both personalized and common tickets
    This is separate from NSP installation.

NCA name generation error

There's a small bug in the "NSPInstallTask::InstallNCA" function, name generation is lacking the 0 padding:

It currently has "%lx%lx" instead of "%016lx%016lx"

Broken pipe during network install

Install worked and NSP is ok, but constant errors during network install

`Exception happened during processing of request from ('192.168.4.111', 64906)
Traceback (most recent call last):
File "/usr/lib/python2.7/SocketServer.py", line 290, in _handle_request_noblock
self.process_request(request, client_address)
File "/usr/lib/python2.7/SocketServer.py", line 318, in process_request
self.finish_request(request, client_address)
File "/usr/lib/python2.7/SocketServer.py", line 331, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/lib/python2.7/SocketServer.py", line 654, in init
self.finish()
File "/usr/lib/python2.7/SocketServer.py", line 713, in finish
self.wfile.close()
File "/usr/lib/python2.7/socket.py", line 283, in close
self.flush()
File "/usr/lib/python2.7/socket.py", line 307, in flush
self._sock.sendall(view[write_offset:write_offset+buffer_size])
error: [Errno 32] Broken pipe

Shutting down HTTP server...
โžœ NSP 192.168.4.111 - - [16/Sep/2018 10:43:47] "GET /AnotherWorld.nsp HTTP/1.1" 206 -
zsh: bad pattern: [16/Sep/2018
โžœ NSP ----------------------------------------
zsh: command not found: ----------------------------------------
โžœ NSP Exception happened during processing of request from ('192.168.4.111', 31068)
zsh: unknown file attribute:
โžœ NSP Traceback (most recent call last):
zsh: no matches found: (most recent call last):
โžœ NSP File "/usr/lib/python2.7/SocketServer.py", line 290, in _handle_request_noblock
zsh: command not found: File
โžœ NSP self.process_request(request, client_address)
zsh: missing end of string
โžœ NSP File "/usr/lib/python2.7/SocketServer.py", line 318, in process_request
zsh: command not found: File
โžœ NSP self.finish_request(request, client_address)
zsh: missing end of string
โžœ NSP File "/usr/lib/python2.7/SocketServer.py", line 331, in finish_request
zsh: command not found: File
โžœ NSP self.RequestHandlerClass(request, client_address, self)
zsh: missing end of string
โžœ NSP File "/usr/lib/python2.7/SocketServer.py", line 654, in init
zsh: command not found: File
โžœ NSP self.finish()
function> File "/usr/lib/python2.7/SocketServer.py", line 713, in finish
โžœ NSP self.wfile.close()
function> File "/usr/lib/python2.7/socket.py", line 283, in close
โžœ NSP self.flush()
function> File "/usr/lib/python2.7/socket.py", line 307, in flush
โžœ NSP self._sock.sendall(view[write_offset:write_offset+buffer_size])
zsh: unknown file attribute: v
โžœ NSP error: [Errno 32] Broken pipe
zsh: bad pattern: [Errno
โžœ NSP ----------------------------------------
zsh: command not found: ----------------------------------------
โžœ NSP 192.168.4.111 - - [16/Sep/2018 10:43:47] "GET /AnotherWorld.nsp HTTP/1.1" 206 -
zsh: bad pattern: [16/Sep/2018
โžœ NSP ----------------------------------------
zsh: command not found: ----------------------------------------
โžœ NSP Exception happened during processing of request from ('192.168.4.111', 63044)
zsh: unknown file attribute:
โžœ NSP Traceback (most recent call last):
zsh: no matches found: (most recent call last):
โžœ NSP File "/usr/lib/python2.7/SocketServer.py", line 290, in _handle_request_noblock
zsh: command not found: File
โžœ NSP self.process_request(request, client_address)
zsh: missing end of string
โžœ NSP File "/usr/lib/python2.7/SocketServer.py", line 318, in process_request
zsh: command not found: File
โžœ NSP self.finish_request(request, client_address)
zsh: missing end of string
โžœ NSP File "/usr/lib/python2.7/SocketServer.py", line 331, in finish_request
zsh: command not found: File
โžœ NSP self.RequestHandlerClass(request, client_address, self)
zsh: missing end of string
โžœ NSP File "/usr/lib/python2.7/SocketServer.py", line 654, in init
zsh: command not found: File
โžœ NSP self.finish()
function> File "/usr/lib/python2.7/SocketServer.py", line 713, in finish
โžœ NSP self.wfile.close()
function> File "/usr/lib/python2.7/socket.py", line 283, in close
โžœ NSP self.flush()
function> File "/usr/lib/python2.7/socket.py", line 307, in flush
โžœ NSP self._sock.sendall(view[write_offset:write_offset+buffer_size])
zsh: unknown file attribute: v
โžœ NSP error: [Errno 32] Broken pipe`

Add network installs

This will involve sending over the entire CNMT NCA, creating and installing records, and then streaming over data and writing it to placeholders.

sort of a issue i guess

any way you could add the command for hactool to get FS.kip1, I'm not very good at using hactool so just wanted to see if you could add it for idiots like me XD

Increase speed of the network installation

At this moment it's so slow, it's just useless...
No matter what WiFi spot is used with ac/n, etc...
It takes minutes just to send a couple of megabytes
The same package of 8GB can be installed within 5 minutes locally

Error code : 0x00234a02

Hi,

Everytime i try to install any NSP, i got the error code : 0x00234a02
Tinfoil 0.2.0
5.1.0 reiNX
20gb free on SD card
12 gb free on NAND.

Any clue ?
Thx

Builds after b6b0fd4 on Aug 16 not ignoring required system version

Tested with:

OS version 4.1.0, SXOS 1.8

Autobuild tinfoil-d3c12b1.zip, September 4th: FAIL
Autobuild tinfoil-9aad7a6.zip, September 2nd: FAIL
Autobuild tinfoil-b6b0fd4.zip, August 16th: SUCCESS

Victor Vran Overkill Edition [0100e81007a06000][v0].nsp (MasterKey 3, sysreq 5.1.0, 3.25Gb)
VSR Void Space Racing [0100c7c00ae6c000][v0].nsp (MasterKey 3, sysreq 5.0.2, 621Mb)
VSR Void Space Racing [UPD][0100c7c00ae6c800][v131072].nsp (MasterKey 3, sysreq 5.1.0, 83.8Mb)

I only found out because I had installed VSR before and had it working fine.

Cannot install updates for card based games

Reported by Girtana1 in Discord on firmware 4.0.1 and Mario Kart 8 deluxe (US Version)

Installing updates using Tinfoil works for games from E-Shop (NSP), but not so for card based games.

Network Install: "URL size 0x1002e296 is too large!"

I'm attempting to install Minecraft: Story Mode, but the file is too big to just move to the sd card (FAT32), so I tried Network Install and it gave me:

Accepted client connection
Received url buf size: 0x1002e296
Failed to perform remote install!
OnSelected:165: URL size 0x1002e296 is too large!

Am I doing something wrong or does file size still matter?

Downgrade update versions for games

Can only be done with dev menu atm, but in order to install older update versions of games you have to reset the required version number or the Switch won't let you play without updating. Super useful especially for speedrunning games that lose glitches in newer patches like Mario Odyssey etc.

Split file support for fat32 file system?

So we all know that fat32 has a file size limit, meaning installing from one single nsp thats larger than 4gb is impossible. This brings us to an unfortunate impasse with sd card formats, since fat32 has no access to larger games, while exfat corrupts files when using homebrews. While network install is somewhat of a solution, slow install speeds and wonky networks prevent it from being very practical.

There are several ways to split larger files into several smaller ones to abide fat32's filesize limits, both compressed like using winrar or uncompressed like with hjsplit(and probably more).

Since nsp installing over network basically takes the data in small chunks of a large file already, shouldn't this also work if the nsp file is already split up on the sd card, as long as the program knows that say, the five 2gb sized files inside folder X are to be continuously read like one file?

Empty title on home screen after installation error

Hi there!

I got this empty title on my home screen after getting an error when trying to install an NSP.

empty_title

I can't do anything with this empty title: can't open, can't see options, can't remove, etc.

In the following record, I show that it is not possible to open the title options: https://youtu.be/VPO7VB8HpdU

The error code might be irrelevant because the same happens with different errors. However, I managed to solve when the error was due to no space left (don't remember the error code). All I had to to do was to free some space and try to install again. On the other hand, when I got an error because of the file name (0x00000202), after removing accent chars from the NSP filename, it installed but the empty title was still there.

Did anyone have the same problem? Since the home screen titles are somehow managed by the Switch itself and not by the folder content, I have no idea on how to fix it.

Console freezes when installing NCAs

When setting Tinfoil's applet type to AppletType_SystemApplication, before Installing NCAs appears, the console freezes. The placeholder is pushed however.

NS freeze on Ticket Managment sub-menus

In the latest version of Tinfoil, when you go to [Ticket Managment > Delete Personalized Ticket] or [Ticket Managment > Delete Common Ticket], if you have a very long list of games/titles and you current selection is the first entry, if you press the up button, switch will get freezed and you will have to reboot it.
It's the same issue if you do it with the last displayed game/title by pressing the down button (not the last entry but last displayed entry on screen) and the selector at the bottom of the screen will select a blank empty entry instead of the next entry.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.