Skip to content

Native linux packages #331

Description

@adatum

Are there plans to build rpm/deb packages of vorta, preferably for the default system repositories?

It's nice that a flatpak is available, though it requires a lot of large dependencies. Building from source is also an option, though it would be nice not to have to deal with dependencies manually.

In my case I'm using Fedora 30 and the pip3 install vorta method worked fine, but a native package would be more reassuring, especially with the system being able to keep it updated automatically.

Activity

  1. m3nu commented on Jul 21, 2019

    @m3nu
    Contributor

    Actually I'm in the process of porting Vorta to Golang, which will be dynamically linked to your distro in Docker. Progress here: https://github.com/borgbase/vorta-go#deployment

    I already tested it with macOS, Ubuntu and Archlinux. The files are very small and integrate well with your chosen distro. They are also easy to pack as rpm/deb.

    I still need to implement some features in the Go version before this is ready for testing. I'll post new releases here every now and then.

    The problem with the Python implementation was that the package we use, pyinstaller, doesn't know enough about Qt to package the right binaries. With Go cross-compiling and their Qt bindings, this is much cleaner.

  2. adatum commented on Jul 21, 2019

    @adatum
    Author

    That's great news. To clarify, is Docker necessary, or is it an option in addition to rpm/deb packages?

  3. m3nu commented on Jul 21, 2019

    @m3nu
    Contributor

    Docker is just used to build the binary. You don't need to deal with it at all, if you just want to run the program.

    Because Docker is lighter than a full virtual machine, it's a nice way to compile stuff for many different systems at once.

  4. daniel-k commented on Oct 12, 2019

    @daniel-k

    @m3nu Do you know https://github.com/mherrmann/fbs? I never used it myself, but their promise to have your application packaged in 15 minutes for Linux/Windows/Mac sounds tempting. Nevermind, found #126 just now ...

    What's your plan with the python version, is it going to be deprecated soon? I'm thinking about investing some time to implement what's missing for me in the python version since it already ticks a lot of boxes for me and why reinventing the wheel? :)

  5. m3nu commented on Oct 12, 2019

    @m3nu
    Contributor

    I'm actually working more on the Python version right now, because I found that some Go libraries aren't very mature yet. E.g. I couldn't get translations to work properly.

    The package you suggested is just a Python wrapper around Pyinstaller. Simple enough to use it directly and being able to customize it.

  6. m3nu commented on Jun 2, 2020

    @m3nu
    Contributor

    How is the Debian package coming along, @sten0? Anything else we can work on on our side? There is also this .desktop file that may be useful to reuse.

  7. sten0 commented on Jun 2, 2020

    @sten0
    Contributor

    @m3nu, I'm making progress every day :-) Yes, I discovered that desktop file installed (by our pybuild helper) to /usr/lib/python3/dist-packages/vorta/assets/metadata/com.borgbase.Vorta.desktop. I'm not sure what the best solution would be, so I've started overriding the defaults by moving various things into valid system-wide paths; this is basically custom Makefile work to inject additional steps into the correct stages of the package creation sequence. After that's done I plan to submit patches for various minor integration issues (eg: the .desktop file needs some fixups). FYI, we have our own standard mechanism for autostarting applications: symlink or copy the desktop file to /etc/xdg/autostart

    I don't want to bother you with minutia :-) If this work requires any changes to Vorta, would you like me to let you know?

  8. m3nu commented on Jun 2, 2020

    @m3nu
    Contributor

    I don't want to bother you with minutia :-) If this work requires any changes to Vorta, would you like me to let you know?

    Definitely! If there is anything we can improve to make it more standards-compliant or easier to package, please let us know. Removing qtdarkstyle and some hacks around it was a very good idea really.

  9. sten0 commented on Jun 4, 2020

    @sten0
    Contributor

    Thank you :-) Here's an initial PR #488

  10. m3nu commented on Jun 26, 2020

    @m3nu
    Contributor
  11. sudwhiwdh commented on Jul 18, 2020

    @sudwhiwdh

    I don't quite understand yet, will this package in Debian be an official package,
    whose integrity and up-to-dateness is directly ensured by the Vorta developers?

  12. sten0 commented on Jul 18, 2020

    @sten0
    Contributor
  13. samuel-w commented on Sep 17, 2020

    @samuel-w
    Contributor

    I created a PPA using @sten0's work, and updated it to 0.7.1.
    The translations are excluded from the package for some reason, so its not ready for non-English use.

    The deb file below has translations though.
    https://github.com/samuel-w/vorta-1/raw/deb/vorta_0.7.1-5_all.deb

    Repo here:
    https://github.com/samuel-w/vorta-1/commits/ppa

  14. m3nu commented on Sep 17, 2020

    @m3nu
    Contributor

    Good stuff. So to add this to the docs the steps would be:

    sudo add-apt-repository ppa:samuel-w1/vorta
    sudo apt-get update
    sudo apt install vorta
    

    ?

  15. samuel-w commented on Sep 17, 2020

    @samuel-w
    Contributor

    It would be, but don't add it to the docs yet, need to fix the translations.

    Edit: It's been added to the docs.

  16. samuel-w commented on Sep 19, 2020

    @samuel-w
    Contributor
  17. sten0 commented on Sep 19, 2020

    @sten0
    Contributor
  18. sten0 commented on Oct 3, 2020

    @sten0
    Contributor

    @samuel-w P.S. The translations weren't excluded; I just forgot to generate and install them. Sorry about that... I've fixed the issue and credited you in the commit. 'hoping to find time to finish preparing 0.7.1-1 sometime this week.

    On that topic, please read deb-version(7). X.y-z is reserved for Debian packages, and this related to x.y-z~ubuntu or versions. Within a Debian+unofficial repository context I'd usually use x.y-0.1 (NMU style for a new upstream release) to insure smooth upgrades, but I'm not sure what suffix is conventional for Ubuntu PPAs. It's a small thing, but it defends against users complaining that a PPA breaks dependency resolution. If you package the next Vorta version before I do, please consider it (it's too late for 0.7.1).

    And of course, you're welcome to do whatever you want ;-)

  19. sten0 commented on Oct 3, 2020

    @sten0
    Contributor

    @samuel-w, P.P.S. if ever you're interested in contributing upstream to Debian, I'd be happy to help with your orientation :-)

  20. samuel-w commented on Oct 3, 2020

    @samuel-w
    Contributor

    The Ubuntu PPA packaging scheme seems to follow these rules: https://wiki.ubuntu.com/AutoStatic/PackagingVersioningScheme
    I'll try to follow them in the future if I remember :).

  21. sten0 commented on Nov 18, 2020

    @sten0
    Contributor

    Vorta for Debian (and its derivatives) is finally in NEW awaiting final review. https://ftp-master.debian.org/new.html

  22. m3nu commented on Nov 18, 2020

    @m3nu
    Contributor

    Nice. Thanks for pushing this @sten0! 👏🎉

  23. locked and limited conversation to collaborators on Feb 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions