-
Notifications
You must be signed in to change notification settings - Fork 452
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Distribute using Flatpak #4938
Comments
In an attempt to build a platform and dependency independent package for Tribler, we opted for snap earlier but we find Flatpak equally interesting with its own set of benefits. For us, the priority at the moment is to make a stable 7.4.0 release then we can look into a Flatpak build but we would gladly welcome any contributions toward creating a nice Flatpak package anytime for Tribler 👍 |
There's also Nix and Guix which are functional package managers, configuration managers and build systems focusing on reproducible builds, you can install them on top of any existing distribution. |
Commenting to continue to support the idea, since Trible reached version 7.4.0 some time ago. Also, although I think Nix and Guix are good, too, flatpak is much more ubiquitous as of now. |
running fedora, i have no tribler because only a .deb is provided - thats bad :( |
It would be nice to have a reply from the maintainers. |
+1 for AppImage, to be able to run this on Fedora too |
@xoriole Has anything changed since then? |
I created a flatpak and could try to submit it to flathub. What do you think about it? Do you have any objections? |
Hey @overflw I'm no official maintainer at Flathub, but I can help you prepare for it. Submission process
File details
ExampleMy latest manifest, so you can see some of these things in action: In it, I don't compile from source, I bundle 32bit libraries because of backwards compatibility, and I rename the icon. |
Hey @Eonfge (: Thanks for reaching out! I tried to use the Let's see what they say. |
Would somebody from tribler be interested to co-maintain their app on Flathub? |
Yes, great contribution! |
Cool! I think distributing via flathub should be helpful to expand your user base. So I would propose you @synctext as co-maintainer for the flathub repo? (Including me) |
@overflw I agree, a lot of people would start using it if it is on Flathub plus more peoplr would use it if it is easier for them to install. |
Using the flatpak, I don't have access to video-streaming, is this normally included in the .deb? |
Thanks for contacting @xoriole - great to have them on board. (Hi there!) Concerning your worries, it's always good to be vigilant - the flatpak build process is quite transparent and really doesn't do much apart from transferring your .deb into the flatpak file structure. There is still some work to do with the flatpak, the current state can be followed at the flathub pull request. |
I'm having trouble to make triblers streaming capabilities work, apart from that the flatpak does its job. Do you have a pointer what I could be missing? Even on a clean ubuntu20.10 with vlc present, installing tribler via the deb won't give me the streaming options in the gui. |
flathub/flathub#2236 (comment) |
If I understand the linked comment correctly, support for AppStream is a single xml file. @overflw is that correct? In that case, we could simply follow the |
@overflw Thank you for your contribution. Greatly appreciated 👍 |
That's how I understand it too. Would be usefull to have the metainfo.xml also in the deb - providing a better integration for software centers like gnome-software ect. |
Is it right way to go? Can't we build it from scratch in flatpak-builder instead? |
It's preferred to build from source, but it's not a hard requirement. I maintain packages who are build from source, and a few who are not. As for the metainfo.xml, the icons and everything else called |
@overflw do you want to shoulder the responsibility of turning this into a pull request on our repo? |
I can look into it, but not before the end of next week unfortunately. |
edit: quick instructions for anyone who wants to give this a go
|
At least the deb based version is on flathub now :) |
On Fedora, Tribler from FlatHub will run, but won't show torrents in the open dialog and will ignore the watch folder. Magnet links work though. |
Considering Tribler is published to flathub, I guess this issue is now resolved. |
Intro
Flatpak is a framework for distributing desktop applications on Linux. It has been created by developers who have a long history of working on the Linux desktop, and is run as an independent open source project.
It allows you to package all required libraries into one file, which can also share dependencies using a versioned runtime. It offers sandboxing, atomic updates, and more state of the art technology. It also seamlessly integrates with any number of software centers and repositories, so that users stay up-to-date at all time. All of these things are essential for an application like Tribler, which has security responsibilities to its users.
Introduction: Reasons to use Flatpak
Why not Snap?
I noticed that you already support Snap (#4240), and it's true that Snap shares many technical ideas behind Flatpak. But there is one fundamental reason why I would propose switching from packaging system:
You are building a decentralized communication platform... tied to a centralized, close sourced, store front.
Snap is made by Canonical, and one of the most fundamental design decisions in their ecosystem, is that there is only one store: Canonical's. This is nice for them as they can provide all kinds of benefits on Ubuntu, but it also carries a heavy risk: A government request to remove an app, would instantly cut out any method of distribution. This is becoming a more serious risk, as software companies like Apple, Google and Microsoft are now routinely removing applications for political motives. If Canonical must choose between Tribler or their Chinese marketshare... then Tribler is out.
As such, tools like OnionShare and Tor Browser Downloader have opted to use flatpak instead. It guarantees that in the event of a power struggle, they can easily host their own repository without conflicting financial and moral interests.
I've previously aided in packaging applications for Flatpak, so I might be able to help if I got time. Until the, I wish to propose this change to you for future Linux distributions.
The text was updated successfully, but these errors were encountered: