UNX Save Sync Switch
More actions
| uNX Save Sync | |
|---|---|
| General | |
| Author | prodeveloper0 |
| Type | Save Managers and Editors |
| Version | 1.0.0 |
| License | MIT License |
| Last Updated | 2026/04/15 |
| Links | |
| Download | |
| Website | |
| Source | |
uNX Save Sync (aka. uNSS) is a Nintendo Switch application that allows synchronization of save data between multiple devices through a central remote server. The central remote server manages save data with internal revision IDs for each user and title.
Installation
Client
To use remote server synchronization, settings must be configured first. The uNSS client reads settings from sdmc:/uNSS/config.ini.
[remote] enabled=1 serverUrl=http://your.hostname.com:8989 [account] ; Nickname of the Switch user profile to operate on. ; Must exactly match the nickname shown in the system's "My Page". defaultAccountName=MyNickname ; 1 (default): use psel applet (profile selector) first, ; fall back to defaultAccountName only when that fails ; (this is always the case in applet mode, since a ; library applet cannot launch psel). ; 0 : skip psel entirely and always resolve the account ; from defaultAccountName. useProfileSelector=1 [title] ; Which titles to include when pushing save data (archiving). ; "created" (default): only titles that already have save data on this console. ; "all" : every installed title, even if it has never been saved. archiveBy=created ; Which titles to include when pulling save data (restoring). ; "all" (default) : every installed title, even if it has never been saved. ; uNSS will automatically create save data for titles ; that don't have any yet. ; "created" : only titles that already have save data on this console. restoreBy=all ; Exclude specific titles by title ID (hex, comma-separated). ; excludedTitleIds=0100000000010000,010000000000100B ; Exclude specific titles by name (separated by "||"). ; excludedTitleNames=uNSS||DBI
Save data is pushed to the remote by pressing the Push button, and pulled from the remote by pressing the Pull button.
[account] behavior:
| Launch context | useProfileSelector=1 (default) |
useProfileSelector=0
|
|---|---|---|
| Full application mode (forwarder / title takeover) | Use psel applet → fall back to defaultAccountName |
Always use defaultAccountName
|
| Applet mode (hbmenu via album applet) | Use defaultAccountName (psel is unavailable to library applets) |
Use defaultAccountName
|
If defaultAccountName is unset (or does not match any registered user) when the client needs it, uNSS prints an explanatory message and only the Exit option is available.
Server
Running the server via the Python interpreter requires some dependencies. Install the dependencies first:
pip install -r requirements.txt
Linux / macOS
Background mode:
nohup run-linux.sh
Foreground mode:
./run-linux.sh
or:
python main.py --host 0.0.0.0 --port 8989
Windows
Just use the prebuilt binary made by PyInstaller.
Screenshots
Changelog
1.0.0
- Support SDL2 based GUI
- Support profile selection in applet mode
- Add application icon
0.0.3
- Support creating title's save data file system. Now don't need to run game first time to restore save data.
- Support title probing policies (when restore, when archive)
- Support title exclusion filter by ID or name
0.0.2
- Fix not working on HOS 20+
- Fix failed to restore save file from archive
- Support profile selector applet
- Support fallback account name to run on applet mode
- Refactor something
- Support building homebrew application on docker container
0.0.1
- First Release
