Clone wiki

pygtkrsync / Home

PyGTK rsync GUI

Why I have created this

  • gtkrsync seemed a bit buggy,
  • I needed some features absent in gtkrsync,
  • I wanted to learn something new in Python.


  • Accepts same arguments as rsync does,
  • Can wait for a specified period of time after rsync exits with 0,
  • ... or after a non-zero exit code (specified separately),
  • GTK runs in a different thread than the one reading rsync's output,
  • Errors saved in a self-expanding textbox.

How it's made

  • It just runs a child process of rsync,
  • It forces rsync to always run at least with -v and --progress arguments,
  • Progress is read from rsync's output,
    • "to-check" part for total progress,
    • lines starting with '\r' for per-file progress.


Instead of a screenshot, please take a look at the demo.