borgbase / vorta

Desktop Backup Client for Borg Backup
https://vorta.borgbase.com
GNU General Public License v3.0
1.98k stars 132 forks source link

Vorta for Windows #1207

Open MatejKovacic opened 2 years ago

MatejKovacic commented 2 years ago

Sorry, this is not really a bug, but I would really like to see Vorta (and Borg) on Windows. I found Vorta for Linux really reliable and useful, but for Windows I have constant problems with backuping solutions. I am using free version of Veeam, but on one machine network link is failing quite often and when that happens, Veeam cannot finish the backup (to the SMB shared folder).

Using ssh and Borg in that case would be much useful and reliable, but unfortunately there are no really good instructions how to setup Vorta and Borg on Windows (10).

Anyone willing to start working on this (instructions and especially porting client to Windows directly)?

Anyway, many thanks for your work!

real-yfprojects commented 2 years ago

Before this is an option for vorta, borg must run on windows. There is an entry on installing borg in the wsl. But this is very experimental and FUSE isn't expected to work. As an alternative one could also try to install borg using pip but I doubt that all the dependencies are available on windows.

Vorta itself should work on windows for the main part.

m3nu commented 2 years ago

Someone published Windows binaries for Borg for a while. So it's possible.

I'm not touching Windows with a 5ft pole, but would be up to packaging Vorta for Windows, once Borg runs.

Vorta is in pure Qt and Python, which already runs on Windows. For packaging we use Pyinstaller, which also supports Windows.

m3nu commented 2 years ago

Prior work done for Windows support: https://github.com/borgbackup/borg/issues?q=is%3Aissue+is%3Aopen+label%3A%22os%3A+windows%22+

bhlevca commented 2 years ago

I managed to compile borg on windows using visual studio compiler and modifying the __init__.py to include the dependent dlls.

Borg works fine for me on windows.

The big remaining problem is vorta. which seems to work on local folders but has problems with network shares and sockets. for example:

Traceback (most recent call last):
  File "C:\MECP\WebGnome\WebGnomeEnv\lib\site-packages\vorta-0.8.3-py3.10.egg\vorta\views\repo_add_dialog.py", line 235, in run
    self.thread.run()
  File "C:\MECP\WebGnome\WebGnomeEnv\lib\site-packages\vorta-0.8.3-py3.10.egg\vorta\borg\borg_job.py", line 222, in run
    os.set_blocking(p.stdout.fileno(), False)
AttributeError: module 'os' has no attribute 'set_blocking
real-yfprojects commented 2 years ago

Vorta uses some functions of python's os module that are only available on unix.

m3nu commented 2 years ago

Good news! There shouldn’t be many Unix-specific functions.

First prio would be to upstream the changes in Borg and start publishing official binaries.

bhlevca commented 2 years ago

Vorta uses some functions of python's os module that are only available on unix.

That was the reason or opening this issue: To make it compatible with windows. Now that borg runs well on windows it makes even more sense

bhlevca commented 2 years ago

Good news! There shouldn’t be many Unix-specific functions.

First prio would be to upstream the changes in Borg and start publishing official binaries.

Vorta does not need binaries as it is only based on python. Borg already works on windows, either get it form those who released it on windows or if you have the skill you can compile it yourself. I tried vorta on windows but it has some os calls that are not available on Windows and the code should be checking on the platform and use the call appropriate calls for that platform. Vorta is tested only on linux on intel platform. Support for aarch64 is also lacking.

m3nu commented 2 years ago

We would include Borg binaries with Vorta so users don't need to compile them again.

Where can I find Windows binaries using the latest version? I just updated Borg's install scripts and from what I saw, some parts still need adjustments for Windows. I could be wrong of course, since I didn't try myself.

stale[bot] commented 2 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

alfredonodo commented 1 year ago

Hi, is there any update on this? At least a version for ubuntu 22.04 LTS?

m3nu commented 1 year ago

What stops you from installing it on Ubuntu?

alfredonodo commented 1 year ago

Vorta windows Then upgrade Ubuntu version. Vorta is is packaged for Ubuntu (Debian) starting with Ubuntu 21.04. If it is before April 21, 2022 and Ubuntu 22.04 is not yet available, you will need to upgrade to a non-Long Term Support (non-LTS) version of Ubuntu

m3nu commented 1 year ago

I see. You mean a virtual Ubuntu running on Windows? Does the PyPi version work in that case? Desktop apps on VMs are tricky though.

https://vorta.borgbase.com/install/linux/

alfredonodo commented 1 year ago

It works well on GNU/linux. I am asking about WSL on windows.

m3nu commented 1 year ago

Sorry, but I have very limited to no experience with WSL myself. Do let me know if you get it working and I'll update the docs accordingly.

Should be possible to build Vorta with PyInstaller on Windows natively. It would still need a way to call Vorta in WSL though. This may be easier then running Vorta in WSL too.

real-yfprojects commented 1 year ago

Vorta windows

Then upgrade Ubuntu version. Vorta is is packaged for Ubuntu (Debian) starting with Ubuntu 21.04. If it is before April 21, 2022 and Ubuntu 22.04 is not yet available, you will need to upgrade to a non-Long Term Support (non-LTS) version of Ubuntu

Reading the quote you will find that it only applies before the 21.04. In fact, there is a vorta package for the current Ubuntu versions in their official repository.

alfredonodo commented 1 year ago

Vorta windows Then upgrade Ubuntu version. Vorta is is packaged for Ubuntu (Debian) starting with Ubuntu 21.04. If it is before April 21, 2022 and Ubuntu 22.04 is not yet available, you will need to upgrade to a non-Long Term Support (non-LTS) version of Ubuntu

Reading the quote you will find that it only applies before the 21.04. In fact, there is a vorta package for the current Ubuntu versions in their official repository.

Right and so it should be updated.

MatejKovacic commented 1 year ago

Sorry, guys, but here we are talking about Borgbackup/Vorta running on the Windows natively not through WSL or some kind of virtualisation.

I mean, what is the point of installing the whole Ubuntu to then run Borg and Vorta on the top of it...

real-yfprojects commented 1 year ago

@alfredonodo Head to borgbase/vorta.borgbase.com#26

ThomasWaldmann commented 1 year ago

See PR #1592.