Repository navigation
offer fat binaries for all supported platforms #794
Replies: 26 comments
|
btw, recently wanted to install vorta for an ubuntu user. after preparing virtual env etc. wondered why I can't so, a fat linux binary with everything would really help for such cases. |
|
It's on my list. Really. :-) |
|
I recently read this tutorial: https://www.mfitzp.com/article/packaging-pyqt5-apps-with-fbs/ Might this be interesting for vorta? |
|
We already use Pyinstaller, which this project wraps. They just solve a few other problems on top of it. Some are already solved in Vorta (finding asset files, making installers), some aren't that relevant (shipping different files for each OS). Maybe these guys solve them better, but they also impose their folder structure on the project, which could be a bad thing. Still good to know it exists. May be useful for a green field project that needs installers for many OSs. |
|
I see :) |
|
Added the first Linux binary. It got fairly large. 2x of macOS. UPX or zipping didn't make much difference. I guess there are more libraries included. Would be helpful is someone could test it on different Linux platforms, like Arch or Debian. |
|
I've seen a similar size difference for borg itself, so seems to be normal. |
|
debian stretch (whonix, to be precise): Seems you need an older build platform. The borg 1.1.x binaries are still built on wheezy (which is out of support though). For borg 1.2 I guess we'll go to Debian stretch. |
|
i also get a ton of issues on fedora-29, but not sure if they are caused by vorta or if just my VM is broken somehow. |
|
Thanks for testing. Will try some older VMs then. |
|
about the huge size of the fat binaries: do you just include the borg fat binary? guess that means that a lot of stuff gets into the vorta fat binary twice (once bundled into the inner borg binary, once bundled again for the outer vorta binary). this could be optimized in future. |
|
True. Currently the Borg bin is embedded as well. (I actually didn't replace the macOS bin, which could explain some errors. Let me fix that.) Having only 1 Python bin, etc for everything would be nice. I'm just not sure which |
|
After thinking about it: maybe it would be best not to bundle borg into the vorta fat binary at all. While vorta offers a good GUI for many functions, there are likely quite some cases for which the user would still need to use the command line. But we don't get a callable So easiest would be if users either install borg from their dist or grab the borg fat binary separately and put it somewhere into the PATH. |
|
Compared to the total size, the Borg binary isn't too bad. 15MB out of 80MB. Could still be useful as fallback and for non-tech users. (Also updated the Linux bin just now. Has the correct borg bin now.) |
|
The Vorta Linux binary works for me, but not the automatically start at login option. When I enable that, Vorta crashes: The options stays enabled when I relaunch Vorta, but it doesn't automatically start on login (using Ubuntu 18.10/Gnome Shell). |
|
Autostart on Linux is a fairly new feature. I guess it fails in this line:
@Hofer-Julian, maybe autostart can just run the command from the standard |
I just wanted to start a discussion if that might be the better solution. |
|
Took another shot at the fat bin challenge by combining our Travis file with a certain project's Vagrantfile. This compiles Vorta on Debian Jessie (oldstable). I tested it on Ubuntu 18.4 and it worked there as well. Some more testing would be good. It's not going into the background for now because those settings are tailored to macOS. Will need some small changes. |
|
The binary does not work under Fedora 29. I get the following error message (the first line is normal, I get it always under Wayland) |
|
Maybe, if the fat-binary-apporach is that problematic, we can look into Appimage until we have a working Flatpak. |
|
I guess it needs to be compiled for each OS family: Debian/Ubuntu, Fedora/CentOS/RedHat. I'll try with CentOS next and we'll see if it works on Fedora. Will also look if Appimage or Flatpak is appropriate. |
|
Some more options:
|
|
Hello, Now it works, even if I must launch it in foreground... |
|
I have created this script to generate a Vorta appimages. The result is 100MB large though. |
|
Not sure if we want to offer appimages. |
|
Yeah, looking into it I'll have to bundle a lot of libraries for it to be truly portable. We should stick with flatpak and pip for Linux for now. |
Uh oh!
There was an error while loading. Please reload this page.
It would be nice to have some (semi-)automated way to offer vorta (and borg) as pyinstaller fat binary for vorta releases:
Could use similar automation as seen in borg's Vagrantfile.
If easy enough, it could be done for every release or else just now and then.
All reactions