Rsync Buddy – a Mac GUI for rsync
Rsync Buddy is a pure SwiftUI based macOS application utilizing the command line tool rsync for synchronizing files. It is rsync which executes the real synchronizing task, not Rsync Buddy. Rsync Buddy is a GUI only on top of rsync. Rsync Buddy is signed and notarized by Apple. Check out the categories for information about other topics not linked to on this page. Rsync Buddy is built for macOS only. Before commencing use of Rsync Buddy See the changelog for updates.
Changelog
Rsync Buddy is signed and notarized and built as Universal macOS Binary. If you miss some functions please drop me an email: thomeven@gmail.com or create an Issue on GitHub. All suggestions about enhancements are welcome. SwiftData Update 7 February 2024: A SwiftData version of Rsync Buddy is coming to life. During the last weeks I have enabled SwiftData, in development, for Rsync Buddy. The development is still very beta and there are still some missing parts to develop.
Latest version of rsync
The default version 2.6.9 of rsync in macOS was released in Nov 2006. And there has been several fixes and releases since then. The news about the current release of rsync is here. Due to new features in rsync and dependency to shared libraries it is not possible to bundle the latest version together with Rsync Buddy. It is adviced to install Rsync Buddy from the office Apple Mac Store
Rsync Buddy configuration files
Rsync Buddy read and store configurations, log records and user settings as JSON files. The location of files is: $HOME/.rsyncosx/macserialnumber. RsyncUI evaluates the computer mac serial number at startup. Configuration files $HOME/.rsyncosx/macserialnumber/configurations.json If profile is utilized: $HOME/.rsyncosx/macserialnumber/profile/configurations.json Log records $HOME/.rsyncosx/macserialnumber/logrecords.json If profile is utilized: $HOME/.rsyncosx/macserialnumber/profile/logrecords.json User settings The user settings are stored as: $HOME/.rsyncosx/macserialnumber/rsyncuiconfig.json The user settings applies to all profiles.
Rsync Buddy settings
There are a few settings to be tweaked. Settings are saved to permanent store. Usersettings might be opened by the default shortcut ⌘,. Settings – rsync and other settings Ssh – SSH settings Environment – set environment variables for ssh, there are a few variables to set, Rsync Buddy only support one environment variable The Info shows version of rsync in use and the path for storing and reading configurations to permanent store.
Rsync and other settings
You can any time backup the current setup, configurations and logs including all profiles by the wrench icon on the toolbar. The backup executes a copy to your Documents catalog and postfixes the copy with a timestamp -month-day-year/hour/minute. $HOME/Documents/RsyncUIcopy-05-06-2021/08/21 When opening the catalog it might be seen as empty. The copy is a .catalog and your filebrowser might not see such catalogs. Rsync version and path It is adviced to install rsync as part of Homebrew.
Important
If you are new to the command line tool rsync and Rsync Buddy please read this information. Rsync Buddy is a GUI only on top of the command line tool. It is rsync which does the actual work, not Rsync Buddy The –delete parameter and new tasks The –delete parameter is a default parameter set by Rsync Buddy to rsync. The parameter instructs rsync too keep the source and destination in sync. The parameter instructs rsync to delete all files in the destination which are not present in the source.


