Skip to content

Configuration

lazyrsync stores everything under $XDG_CONFIG_HOME/lazyrsync/ (typically ~/.config/lazyrsync/):

  • profiles.toml — your profiles and tasks (app-managed)
  • settings.toml — preferences you can hand-edit

settings.toml

toml
skip_delete_warning = false   # skip the red --delete confirmation
hints = true                  # show the keybinding hints

[theme]
accent     = "lightblue"   # focus, selection, active field
on_accent  = "black"       # text on the selection bar
secondary  = "lightcyan"
border     = "gray"        # unfocused panel borders
muted      = "darkgray"    # labels, dim text
added      = "green"       # new files, done, fresh tasks
modified   = "yellow"
deleted    = "red"         # deletes, failures, warnings
warn       = "yellow"
bytes      = "blue"        # byte counts in the diff summary

Each theme value is an ANSI color name ("lightblue", "gray", …) or a hex string ("#5fafff"). ANSI names inherit your terminal's palette; hex pins an exact color.

You can also toggle hints live with Ctrl+g.

profiles.toml

The app owns this one — you build it through the TUI, not by hand. For reference, the shape is:

toml
[[profile]]
name = "backups"

  [[profile.task]]
  id = "src-2f30"
  label = "src"
  action = "sync"            # "sync" | "snapshot"
  source = "~/data/"
  dest = "me@nas:/backup/"

    [profile.task.flags]
    archive = true            # -a         (and compress, verbose, human,
    delete = false            # --delete    partial, checksum, update, …)

    [profile.task.filters]
    excludes = []             # → --exclude
    includes = []             # → --include
    exclude_from = ""         # → --exclude-from
    include_from = ""         # → --include-from
    files_from = ""           # → --files-from
    filter = []               # → --filter

    [profile.task.ssh]
    port = 22
    keyfile = ""
    extra = ""

    [profile.task.advanced]
    raw_args = ""             # free-form extra rsync args

Released under the MIT License.