Repository navigation
Initial Release - XCI Injection & RAR VFS Support
Pre-release
Pre-release
Welcome to the first release of PyQuark, a remote file server for Nintendo Switch.
This version introduces a Virtual File System (VFS) layer, allowing users to interact with their library in ways not possible with standard Quark servers.
Key Features
- On-the-fly XCI Injection: Install games from
.xcifiles as if they were.nsp. The server builds a virtual PFS0 header in RAM and maps NCA data directly from the cartridge dump. - Transparent RAR Access: Full support for
.rarand multi-volume.part1.rararchives. Browse them as folders and install content without manual extraction. - Hybrid Staging Engine: Intelligent background extraction for large files with dynamic wait times, ensuring stable XCI parsing even during active decompression.
- Smart Cache Management: Automatic cleanup of multi-gigabyte temporary files and session-aware handle management to optimize disk space and performance.
Recent Fixes
- Robust XCI Mapping: Implemented a dynamic retry mechanism for HFS0 parsing. This solves the "buffer of 16 bytes" error when opening large XCI files inside multi-part RAR archives by waiting for the secure partition to be extracted.
- Extension Masking: Added automatic
.xci.nspmasking for files inside RAR archives to ensure compatibility with Goldleaf's installer.
Technical Notes
- Environment: Developed and tested on Pop!_OS 22.04.
- Requirements: Requires
unrarto be installed and available in the system PATH for the staging engine. - Drivers: On Linux, the transport layer automatically handles kernel driver detachment for the Switch USB interface.
If you find any bugs or have feature requests, please open an issue!