Desktop UI for restic

Hallo,

the development of a Desktop GUI for restic has just been started by me. The code can be found here:

It’s written in Python + Qt5 and is essentially a fork of https://github.com/borgbase/vorta. The GUI can already start backups and show some information about the repo.

Pull requests are welcome!

Mebus

9 Likes

This is so great! Thank you for taking the initative :slight_smile:

Really looking forward for this. For now I grabbed an Arq Backup license at the black friday deal, but in the future I would like to switch over to Restic as soon as a stable client software is available on Windows.

Wish you a lot of fun and success programming the first desktop UI for restic!

So has anyone gotten this thing running on Windows?

I have installed it on Linux and played around a bit, but when on Windows the resulting EXE returns immediately without actually doing anything.

How did you compile it into a *.exe?

Mebus

Here are some instructions I was putting together to help my non-tech father get this installed:

  • Install Python
    https://www.python.org/downloads/windows/ (pick the windows web-based installed)
    Check the box to add Python to PATH first
  • upgrade Python pip
    open a command shell and run ‘pip list’
    it will give a command line to upgrade pip, cut and paste that and run it.
    (should be ‘python -m pip install --upgrade pip’)
  • Install git
    run ‘scoop install git’ at a command prompt
  • Fetch program
    start command prompt
    type ‘cd Documents’ to go to the documents folder
    type ‘git clone https://github.com/Mebus/restatic.git’ to fetch the git
  • Build GUI
    in that command shell in Documents type ‘cd restatic’ to goto the newly created directory
    run ‘pip install .’ to build the new program
    run ‘restatic’

The pip install . step creates a restatic.exe file in some AppData/local/programs/python directory.

Or perhaps I am crazy, but anyway that is what I did to install the thing on a new Windows machine.

Pyinstaller might be an option for executables, or perhaps pynsist for an installer?

On a related matter, restatic seems to be a bit behind vorta lately. @Mebus, what are your development plans for restatic? Do you intend to follow vorta closely?

Sorry, I don’t have enough time at the moment. Pull requests or team members are welcome!

Mebus

I actually meant in general… I want to have a better understanding of why you set up restatic this way instead of a vendor drop setup, if you intend restatic to follow Vorta’s development, and if yes, how closely, etc.

Forking isn’t always the best solution, since you get the burden of maintenance. If the Vorta developers are receptive, it might be possible to propose a framework in Vorta that would allow multiple back end tool configurations. There are many reasons to pick this or that path. I would like to understand yours a little better if possible.

I looked at your very promising project. I understand it is a modification of a Borg backup scheme so I wonder if one of the features is true:

" Encrypted, deduplicated and compressed backups."

Are the backups compressed?

I’m not sure which project you’re referring to, and where you got the tagline :wink:

restic is implemented from scratch, without any prior knowledge of Borg (which is a fork of an older program called attic). Restic does not support compression yet.

1 Like

I think @alfille is responding to OP (@Mebus), in particular the readme in the linked Github project. The author states that this is a fork of Vorta, which has much of the same readme text. Presumably, Mebus has not updated the readme yet.

1 Like

Thank you. Yes, you understood correctly.

1 Like

Ah, thanks for the clarification!

Planning on creating an Electron App to support using Restic for the average consumer to manage backups. Anyone interested and think that would be useful?

1 Like

Sure, a GUI is always wanted :slight_smile: There has been some started projects, but you’d have to search for that since I don’t know their URLs off the top of my head.

There’s also relicabackup.com which uses restic but with its own GUI.

2 Likes

Hallo,

my “Restatic” basically works and can create backups already. Maybe you can test and finish that before starting another project :wink:

Mebus

1 Like

Would be great! That’s really what I’m missing at the moment…

Reference to @Mebus Restatic: https://github.com/Mebus/restatic

Another interesting little gem: https://github.com/restic/restic/issues/1168 (animation: https://asciinema.org/a/l5TqUNCgLgTap38gIKLLV1ZaY )

whats Electron mean?

https://www.electronjs.org/ - An App that is developed using front-end technology for cross platform desktops. Slack Desktop for Win or Mac is an example of this

1 Like