/vuplicity

🖥️ A cross-platform GUI for Duplicity backups, powered by Atom Electron.

Primary LanguageJavaScriptMIT LicenseMIT

Vuplicity

A cross-platform GUI for Duplicity backups, powered by Atom Electron.

⚠️

No Maintenance Intended

I had a lot of problems with duplicity lately (frequent crashes on my OSX system, corrupted data) that led me to not use it anymore (nor Vuplicity) for my backups.

I think that being a user of the product is a crucial point for a maintainer to do a great work, so that's why I am afraid I will not have take time to work on Vuplicity in the future.

That being said, the license allows you to do whatever you want with the existing code and UI; so, if you are still interested in the project, please feel free to fork it / do stuff in the code / adjust things or rebuild entire features // it's up to you.

Thanks!


Features

Screen

The GUI works directly with Duplicity by sending shell commands, so you can use your existing backups and / or create new ones independently.

Backup status

Check the status of a backup, start it manually, or restore its content.

Configuration

Fill the source path, destination URL, passphrase, and custom CLI options if needed.

You can add several backup configurations on the left panel.

The configuration uses one JSON file per backup, stored in $HOME/.vuplicity.

File tree

Check the content of the backup, or choose to restore a single file.

Scheduler

Schedule the backup by choosing a delay or a time, and the days when you want it to be applied (in the week or month).

You may also combine multiple schedules (for instance, one incremental backup each day at 2:00am, and one full backup once a month).

Download

Duplicity is not shipped with the app.

You have to install it first, and ensure that the duplicity command is included in your global $PATH to allow the app to access it.

OSX

You can download the last version of the app on the Releases page.

Linux & Windows

Help needed !

For now no binaries are available, because I didn't run advanced tests on those platforms.

If you want to get involved, feel free to follow the installation steps above, and test the project by yourself.

Comments are very welcome on the Issues page.

Development installation

Installation steps

1. Install node.js and npm if needed

2. Install Atom Electron if needed (by using npm install -g electron-prebuilt)

3. Install Grunt if needed (by using npm install -g grunt)

4. Get the project and its dependencies

git clone https://github.com/johansatge/vuplicity.git
npm install
cd vuplicity/app && npm install

Development

Run the application:

grunt run

The following options are available, if needed:

Option Usage
grunt run --devtools Opens the devtools with the control panel
grunt run --configpath=/Users/johan/.vuplicity-dev Overrides the path of the config

Build the application for the desired platform:

grunt build --platforms=darwin,linux,win32

Watch for SASS updates:

grunt sass

Todos

Planned features are listed in the Issues.

Changelog

Version Date Notes
1.0.1 July 2nd, 2015 - Various CSS fixes
- Sanitizes history when doing a backup
- Fixes app icon on OSX
1.0.0 June 26th, 2015 Initial version

License

This project is released under the MIT License.

Credits