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: 26 July 2024 The work on adapting RsyncUI to the new concurrency model of Swift 6 is complete. There was one external source file, John Sundell’s Files. It caused some issues with adapting to the concurrency model....

December 24, 2023 · 38 min · 7936 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

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

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

Rsync and path

Settings are automatically saved when changed. Version rsync It is advised to install the latest version of rsync by Homebrew. RsyncUI discover what type of Mac you are on. The default path for Homebrew is: Intel based Mac is: /usr/local/bin on the Apple Silicon: /opt/homebrew/bin. Path rsync The path for rsync is set to default values if rsync is installed by Homebrew, using default path or rsync as part your macOS....

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

Important

If you are new to the command line tool rsync and RsyncUI please read this information. RsyncUI is a GUI only on top of the command line tool. It is rsync which does the actual work, not RsyncUI The –delete parameter and new tasks The --delete parameter is a default parameter set by RsyncUI 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....

March 10, 2021 · 2 min · 367 words · Thomas Evensen

License

The MIT License (MIT) Copyright (c) 2021 - Thomas Evensen Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:...

March 10, 2021 · 1 min · 172 words · Thomas Evensen

Signing and notarization

RsyncUI is signed with my Apple ID developer certificate and notarized by Apple. This means that the app is verified and checked for not containing malicious code and it will work with Apples Gatekeeper technology. A message from Apple is issued when opening either a new or updated application the first time. Notarizing is required for all software.

March 10, 2021 · 1 min · 58 words · Thomas Evensen