RsyncUI - a GUI for rsync

RsyncUI 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 RsyncUI. RsyncUI is a GUI only on top of rsync. RsyncUI is signed and notarized by Apple. RsyncUI is built for macOS Sonoma only. Before commencing use of RsyncUI See the changelog for updates. RsyncUI is built as a Universal macOS Binary, which means it runs nativly on Apple Silicon and Intel-based Mac computers....

December 25, 2023 · 3 min · 493 words · Thomas Evensen

Changelog

RsyncUI 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. Version 1.9.1 (build 99) - not yet released Work on next version is commenced, and so far the following enhancements are added: adjusted width of RsyncUI to .frame(minWidth: 1100, idealWidth: 1300, minHeight: 510) width might be reduced to 1100 points (CGFloat), default 1300 points as now if Monitor Network is on in settings, there is a check for connectivity to remote server every time a task is kicked of if no connection during timeout an error messages is thrown in Add tasks, selected tasks might be tested as in parameters for rsync only a —dry-run to verify what the task does This version is to be released sometime in May 2024....

December 24, 2023 · 35 min · 7451 words · Thomas Evensen

Add and update tasks

Always verify, by --dry-run, the result of a new task before executing it. A task require minimum a local catalog and a remote catalog. After entering information about a task, select Return on the toolbar to add the task. Continue adding new tasks until completed and tasks are saved to permanent storage after each entry. Just press the Enter key will automatically enter a new task. The Enter key will advance to next field....

December 20, 2023 · 2 min · 386 words · Thomas Evensen

Synchronize data

Always verify, by --dry-run, the result of a new task before executing it. The easiest way to verify a task, select the task and then the shortcut ⌘E for estimate. The main task view lets you execute all or selected tasks in one go. A double click on a task wil execute a --dry-run, the next double click will execute the real run. The following are allowed shortcut actions: Estimate - ⌘E estimates all tasks Synchronize - ⌘R synchronize all tasks Abort - ⌘K abort and halt any ongoing task When RsyncUI starts it automatically open the main view....

December 20, 2023 · 2 min · 233 words · Thomas Evensen

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 RsyncUI. It is adviced to install rsync as part of Homebrew. In RsyncUI select user configuration and set path for optional version of rsync....

April 16, 2021 · 1 min · 133 words · Thomas Evensen

Passwordless logins by ssh-keys

Using RsyncUI to synchronise data to a remote server requires what is called passwordless login by ssh-key. It is not possible to supply a user login and password in progress of synchronize data in RsyncUI. Before commencing to use RsyncUI to synchronize data to a remote server, it is required to setup and enable passwordless login by ssh-key. It is recommended to setup and enable this by terminal before using RsyncUI....

April 16, 2021 · 3 min · 612 words · Thomas Evensen

Rsync daemon setup

RsyncUI does not support a rsync daemon setup. Passwordless connections is by ssh-keys. But you might get it to work by following this guide. With a few tweaks it is possible to get RsyncUI working with rsync daemon. Be aware of not utilizing ssh, transfer of data is not encrypted. This is might not a problem on a local network, but I would not advise it on a public network. Also be aware of snapshot is not possible with a rsync daemon setup....

April 16, 2021 · 2 min · 409 words · Thomas Evensen

RsyncUI configuration files

RsyncUI 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.

April 16, 2021 · 1 min · 60 words · Thomas Evensen

Snapshots

Utilizing snapshot is an effective method to restore old versions of data and deleted files. Snapshot utilize hardlinks and only changed and deleted files are saved as separate files in a snapshot. Files which are not changed are hardlinks to the original file. If a file.txt is saved in snapshot number one and never changed or deleted, the file file.txt in the latest snapshot is a hardlink only to the original file....

April 16, 2021 · 4 min · 767 words · Thomas Evensen

RsyncUI 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, RsyncUI only support one environment variable The Info shows version of rsync in use and the path for storing and reading configurations to permanent store....

March 12, 2021 · 1 min · 72 words · Thomas Evensen