Originally posted by Bobby Bob
View Post
Announcement
Collapse
No announcement yet.
Linux Mint Disabling Unverified Flatpaks By Default
Collapse
X
-
- Likes 1
-
Originally posted by TheJackiNonster View Post
So what's the point of having a mechanism that only verifies the author of a flatpak submission has write access to some random hosting/domain they selected. It proofs nothing in terms of integrity, confidentiality or even authenticity. Not to mention that your flatpak could build its binaries from sources at any kind of hosting/domain that is completely unrelated to that unique identifier. There's nothing linked to it. Nothing at all, except the blue check mark.
So how is my complaint invalid? Please explain.
For closed source software, they by definition don't show their source code to public. Most, if not all, "own" a website though. So a rational choice for Flathub is to check if the submitted software and the official website claimed by such software are indeed managed by the same organization.
When we say one "own" a website, it doesn't need to be "owning" a 2nd-level domain. "Owning" a 3rd-level domain like those projects hosted in Github, Gitlab etc is also a valid form of "owning" a website. Unless you want to argue Github as the hosting may do malicious impersonation. But then all bets are off. You may as well disqualify the whole Linux Mint distribution solely for its use of Github as their git hosting.
Originally posted by TheJackiNonster View Post
As mentioned before I know at least one FOSS project which has this problem. It's published under GPL3 and it's still now blocked on Mint by default. If the idea was to block free software for your users, well done I guess.
- Likes 1
Comment
-
Originally posted by billyswong View PostHow about you point out the exact project in trouble? We will see what went wrong more clearly. Personally, if I own a hobby project but (1) I don't host it in any big-name open source software hostings and (2) I don't maintain or control any website accessible to the internet either, I won't mind if I can get my hobby project listed in Flathub as "verified app". This hobby project is going to be for my own use plus a few friends only anyway. It is reasonable for strangers to not take my hobby project seriously.
Sure, for proprietary apps this sort of verification method from Flathub might work. Also I agree that it would be ideal if Flathub would do the compilation for FOSS applications. Currently that's actually what they are doing for most FOSS apps. However compilation isn't 100% of the build process. It's still up to Flathub whether they check and verify the sources (including code and build configuration files) before building. I doubt they have the capability to do that.
So my problem is that we establish a verification process on Flathub now that is intended for proprietary apps while users more likely want FOSS apps, I assume. However FOSS apps may even struggle with that exact verification process. That is my issue. It is shifting the Linux desktop into the direction of proprietary software on the back of FOSS. Maybe this is intended because Flathub predicts that they need proprietary apps in the future to finance Flathub as soon as they implement their payment method. But I think it's the wrong move. Proprietary apps on Flathub should have a place. But FOSS apps should definitely not be second-class citizen.
Comment
-
Originally posted by TheJackiNonster View PostSure, for proprietary apps this sort of verification method from Flathub might work.
I wonder if Flathub would considered signed commits as an alternative for those rare cases where the domain is not under control off the app uploader.
Adding an app required a commit on the flathub repo, so if this commit is signed and the app's release commit (or tar ball or binary flatpak) is signed with the same key, then this would also verify that the one "uploading" the app is also in control of its repo.
- Likes 1
Comment
-
Originally posted by anda_skoa View Post
Adding an app required a commit on the flathub repo, so if this commit is signed and the app's release commit (or tar ball or binary flatpak) is signed with the same key, then this would also verify that the one "uploading" the app is also in control of its repo.
I think one downside is that proprietary apps won't have the possibility to sign commits. But as alternative they could simply sign the published binary. So something like this should work for all in theory.
Maybe they didn't go this way because depending on the complexity of your flatpak manifest, many would use tarballs of releases instead of git history picking specific tags from releases. Also not every project necessarily uses git or properly tagged commits for releases (besides only a few people actually signing commits). Also in the end you would need to verify multiple sources, many times even from repositories you didn't commit last (you will likely have dependencies, right?). So it's unlikely you could register all needed keys on Flathub anyway. You could sign the tarballs from your dependencies though. Better than what we are facing at the moment, I assume.
- Likes 1
Comment
-
Originally posted by TheJackiNonster View Post
The project I have in mind is called "Manuskript". The website for it is hosted by the original maintainer of the project which started it. But since he didn't have the time to contribute or maintain it, that role moved - even multiple times. This is also some behavior which is to be expected for FOSS projects since they usually don't have a proper financial stability, neither do they die when maintainers or original authors stop contributing. Because FOSS is shared entirely with the community.
If the original creator of a project is still alive and contactable, in theory they can either (1) upload the latest hash file periodically, or (2) share or transfer part of the domain access right to the new maintainer they trust. If neither can be done because the domain is mainly for personal use and the situation of the original creator is so bad that they can no longer access internet regularly, maybe you shall consider a change of the project domain name now, before the personal website collapse on a random day.
- Likes 1
Comment
-
Originally posted by TheJackiNonster View PostI think one downside is that proprietary apps won't have the possibility to sign commits. But as alternative they could simply sign the published binary. So something like this should work for all in theory.- For something that is built from git it would be the release commit.
- For something released as a tar ball it would be that tar ball.
- For something released as a binary it would be that binary.
Originally posted by TheJackiNonster View Postbesides only a few people actually signing commits
The core of the idea is to use existing signing options instead of replicating full signature infrastructure that proprietary app stores use.
They could also still keep the "verify my web presence" method as a fallback.
- Likes 1
Comment
-
Originally posted by billyswong View Post
If you take the recent XZ fiasco in mind, I hope you can see why Flathub is unforgiving in particular to situation similar to your "Manuskript" project. One might even say this kind of "the original creator being out-of-touch but the project lives on the original creator's reputation" may be what Flathub specifically target against. I guess Flathub is pushing project like yours to either (1) nudge the original creator to come back to at least perform the minimal responsibility, or (2) rename the project a bit so that it no longer stands on the reputation of the original domain name or the original author.
If the original creator of a project is still alive and contactable, in theory they can either (1) upload the latest hash file periodically, or (2) share or transfer part of the domain access right to the new maintainer they trust. If neither can be done because the domain is mainly for personal use and the situation of the original creator is so bad that they can no longer access internet regularly, maybe you shall consider a change of the project domain name now, before the personal website collapse on a random day.
But let's assume everything gets setup as you said. You have only one maintainer who manages the flatpak, the website and needs to be active developer, I suppose. What happens if such a person dies by accident or can't get into their account for some other reason? I assume, this would effectively block all further updates, despite contributors would easily be capable to fork the project and continue. So this whole idea of centralizing authority ends up in a lot of duplicate "official" flatpaks.
It's not a solution but another problem.
Comment
Comment