Repository navigation
NXPress 1.7.9
Improvements
- Optimize for install (experimental): turns a game and its update into one game, already at the version of the update, that takes much less room once installed: from a few percent to more than 80% less than the game and its update installed apart. Its data is compressed with LZ4, which the system reads directly, and what the game holds twice is stored only once
- In the window: Compress › Optimize for install, next to Extra compression. Add the game and its update (NSP, NSZ, XCI or XCZ); an NSZ comes out next to the game, which installs as that same game
- On the command line:
nxpress --optimize GAME UPDATEwrites an NSP; with-C, an NSZ - Each file is checked whole before it gets its name: the hashes of every section, and its RomFS, which must be the one of the game with its update
- It installs with NXDock or DBI, with sigpatches and firmware 12.0.0 or newer. Tested with DBI
- Official updates do not go over it: when a newer one comes, optimize the original game again with it. The originals are never deleted
- DLC are left as they are. How it is made: docs/optimize-install.md
What you lose with it
- Official updates. They cannot be installed over it, not even from the eShop. To move to a newer version, optimize the original game again with the new update, so keep the original game and its update on your PC
- The signature of Nintendo. The program and the metadata are made again, so sigpatches and firmware 12.0.0 or newer are needed. DBI marks them as Fake when it installs them
- Going back to version 1.0 just like that. The optimized game is already at the version of the update; to go back, install the original again
- Time and room on the PC. Optimizing takes from seconds to about a minute per game in the tests. While it works it needs room for the new file and, for an NSZ or XCZ, for the decompressed NSP too
- DLC save nothing. They stay as they are
What you do not lose: your saves, the DLC installed and the game itself. What the game reads is the same as with its update, byte for byte, and that is checked before the file gets its name.
Downloads
| System | File |
|---|---|
| Windows, installer (recommended) | nxpress-1.7.9-windows-x64-setup.exe |
| Windows, the program on its own | nxpress.exe |
| Windows, portable (all in its folder, for a USB stick) | nxpress-1.7.9-windows-x64-portable.zip |
| macOS with Apple silicon (M1 or newer), installer | nxpress-1.7.9-macos-apple-silicon.pkg |
| macOS with Intel chip, installer | nxpress-1.7.9-macos-intel.pkg |
| macOS with Apple silicon, the app | nxpress-1.7.9-macos-apple-silicon.tar.gz |
| macOS with Intel chip, the app | nxpress-1.7.9-macos-intel.tar.gz |
| Linux, PC | nxpress-1.7.9-linux-x64.tar.gz |
| Linux on ARM 64-bit | nxpress-1.7.9-linux-arm64.tar.gz |
The installer puts NXPress in your user folder (no administrator needed), with its shortcuts and the options of its Settings, and adds it to Installed apps, where it is uninstalled.
Open it with no arguments for the window, or give it options for the command line (nxpress --help). It needs your own prod.keys: next to NXPress, in ~/.switch, or chosen in the window.
On macOS the app is not notarized: the first time, open it with right click, Open (or allow it in System Settings, Privacy & Security).
On Linux it needs GTK 3 and WebKitGTK 4.1, which most desktops have; unpack it and run install.sh to put NXPress in the menu of applications with its icon.
SHA256SUMS.txt has the checksums of the files, and gh attestation verify <file> -R DeLFuS77/NXPress proves a file was built here. SHA256SUMS.txt.minisig is their signature with the key of NXPress (minisign), which NXPress checks before it installs a new version.