Back to Catalog
westpoint-io GitHub avatar

lazyrsync

Terminal UI for rsync with reusable profiles and live progress

Demo

Terminal preview
lazyrsync

Overview

Lazyrsync is a Ratatui terminal interface for rsync that saves reusable local and SSH sync tasks, previews itemized changes before writing, and shows live transfer progress.

๐Ÿฆ€ A friendly terminal UI for rsync, written in Rust. Reusable profiles, an honest dry-run diff, and live progress, even over SSH.

Keyboard Shortcuts

Preview the selected Task as a dry-runp
Run the selected Task, or all tasks in the active profile (Tasks context)r / R
Switch between Tasks and Profiles sub-tabs]
Edit source and destination pathse
Cancel the active preview or runc
Open context-aware help?

Latest Release

v0.3.0
Released: Aug 10, 2026

Added

  • rsync_path in settings.toml picks which rsync binary runs instead of the
    first one on $PATH. Useful on macOS 15.4 and later, where /usr/bin/rsync
    is openrsync and shadows Homebrew's rsync, and in any launch context with a
    minimal $PATH such as cron. The configured binary is what the resolved
    command in the TUI and lazyrsync list reports.
  • A startup warning when the rsync found on $PATH is older than 3.1. The
    preview needs --itemize-changes, the progress bar needs --info=progress2
    and snapshots need --link-dest; openrsync has none of the first two and
    accepts --link-dest without reliably hardlinking.
  • Statically linked musl release binaries for x86_64-unknown-linux-musl and
    aarch64-unknown-linux-musl, so distributions carrying a glibc older than
    2.34 can run a prebuilt binary. cargo binstall resolves them on musl hosts.

Changed

  • Saving settings.toml preserves comments and every hand-edited key; only
    hints and last_profile are rewritten. Editing the file while the TUI is
    open no longer loses those edits on exit.
  • settings.toml rejects unknown keys, the rule profiles.toml already
    followed. One consequence for both: a file written by a newer lazyrsync may
    fail to load on an older binary rather than being partially ignored.

Fixed

  • A settings.toml that exists but cannot be read or parsed is now a loud
    error instead of being silently discarded and replaced with defaults.

Related TUIs

Discussions

0 comments
Loading comments...
Alvin By Alvin