RsyncUI - a GUI for rsync

RsyncUI is a pure SwiftUI based macOS application, built for macOS Sonoma, 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. Changelog and install 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 · 498 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 2.0.0 (build 101) - work in progress Date: 1 July 2024 The work on adapting RsyncUI to the new concurrency model of Swift 6 is progressing. There was one external source file, John Sundell´s Files, which caused some issues adapting to the concurrency model....

December 24, 2023 · 37 min · 7849 words · Thomas Evensen

Add and update tasks

Always verify, by --dry-run, the result of a new task before executing it. A task require as minimum a local catalog and a remote catalog. Enter tasks Using the Enter key will advance to next field. The Enter key will automatically add a new task after last input. Or the Return icon on the toolbar will add a new task. Tasks are saved to permanent storage after each entry. Update To update a task, select the task and to save changes, select the Return icon on the toolbar or use the Enter key....

December 20, 2023 · 2 min · 357 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 or selected tasks Synchronize - ⌘R synchronize all or selected tasks Abort - ⌘K abort and halt any ongoing task When RsyncUI starts it automatically open the main view....

December 20, 2023 · 2 min · 237 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 · 590 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. The logfile The logfile is a text file and normally view within RsyncUI....

April 16, 2021 · 1 min · 74 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 ⌘,. Rsync and path - rsync and path settings Monitor and log - monitor and log 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 · 82 words · Thomas Evensen

Monitor and log

Settings are automatically saved when changed. Monitor network, error and log settings Monitor network monitor the network connection during execution of tasks if a network connection is dropped during execution, RsyncUI sends an interrupt signal to the task and it halts with an error Check for error in output if the word error is discovered in output from rsync it is notified se below Add summary logrecord by default on, a summary only of each synchronization is added to the logrecords, view Log Listings from Sidebar Log summary logfile...

March 11, 2021 · 2 min · 378 words · Thomas Evensen