Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

UNX Save Sync Switch: Difference between revisions

From GameBrew
Created page with "{{Infobox Switch Homebrews |title=uNX Save Sync |image=uNXSaveSyncSwitch.png |description=A simple save data synchronization homebrew for the Nintendo Switch. |author=prodeveloper0 |lastupdated=2026/04/15 |type=Save Managers and Editors |version=1.0.0 |license=MIT |download=https://dlhb.gamebrew.org/switchhomebrews/uNXSaveSyncSwitch.7z |website=https://github.com/prodeveloper0/uNSS |source=https://github.com/prodeveloper0/uNSS |donation= }} {{#seo: |title=Switch Homebrew..."
 
No edit summary
Line 19: Line 19:
|image_alt=uNX Save Sync
|image_alt=uNX Save Sync
}}
}}
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.
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 ==
== Installation ==

Revision as of 03:38, 5 July 2026

uNX Save Sync
General
Authorprodeveloper0
TypeSave Managers and Editors
Version1.0.0
LicenseMIT License
Last Updated2026/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

External links

Advertising: