Jump to content

Can we take control of the Flathub repo?


Recommended Posts

https://www.gamingonlinux.com/2024/04/flathub-now-prominently-notes-unverified-flatpak-apps/

I understand that it's extra work for the developers, but I can foresee this as a potential hang up for new Linux users trying to get onto 0 A.D. Flatpak is by far the easiest way to install an up-to-date version of the game, and a big unverified tag might turn people away.

Anyway, I'm sure whoever runs the unofficial flatpak repo, would gladly hand it over to the developers, and so all the set-up work will be done. All that would need to be done is update the flatpak whenever we get a new release.

  • Like 1
Link to comment
Share on other sites

IIRC the problem other than manpower is that thing break in non obvious ways (and we don't have the knowledge on that) on flatpack/appimages/snaps and we prefer people use their distribution package when ever possible.

IIRC there is an app image, and the snap version is official.

  • Like 1
Link to comment
Share on other sites

6 hours ago, Stan` said:

IIRC the problem other than manpower is that thing break in non obvious ways (and we don't have the knowledge on that) on flatpack/appimages/snaps and we prefer people use their distribution package when ever possible.

IIRC there is an app image, and the snap version is official.

I'm going to be honest, most of the time the distribution packages can be woefully out of date, and most of the advice I see for new Linux users is to just go with flatpak. Also, snap is only used by canonical, and not a lot of people use it.

I'm willing to help with testing/ mantaining a flathub repo. If we steal the unofficial one, I think most of the work would be done.

  • Like 1
Link to comment
Share on other sites

12 hours ago, ShadowOfHassen said:

I'm going to be honest, most of the time the distribution packages can be woefully out of date, and most of the advice I see for new Linux users is to just go with flatpak. Also, snap is only used by canonical, and not a lot of people use it.

Well we usually work with Fedora, Debian and Ubuntu repositories, but yeah updating packages can sometimes take a month.

12 hours ago, ShadowOfHassen said:

Also, snap is only used by canonical, and not a lot of people use it.

Isn't ubuntu the most used distro, and their default app manager now using snap ? (I may be out of the loop there)

12 hours ago, ShadowOfHassen said:

I'm willing to help with testing/ mantaining a flathub repo. If we steal the unofficial one, I think most of the work would be done.

I'm not able to take decisions on this anymore but this sounds good. Unfortunately testing is not really the issue there, the problem is more whatever kind of virtualization happens in there that breaks graphic drivers and sound ones.

  • Like 1
Link to comment
Share on other sites

8 minutes ago, Stan` said:

Isn't ubuntu the most used distro, and their default app manager now using snap ? (I may be out of the loop there)

Let's put it this way, on the steam survey, Ubuntu is the second most popular distro. The first is Arch, (from the steam deck, I think.) But even if you don't count arch, all the other distros put together are almost twice the amount of users as Ubuntu.

https://store.steampowered.com/hwsurvey/?platform=combined

 

Another possibly imperfect place for us to look is the Gaming On Linux Stats: https://www.gamingonlinux.com/users/statistics/

Those stats seems to suggest that while Ubuntu based distros are the most popular, Ubuntu is only slightly higher than Pop!_OS or Linux Mint, and both of those Operating systems get rid of snap. In fact, I used to use Ubuntu, and it's still my go to operating system, but the first thing I do is ditch snap. I'm sure a lot of other Ubuntu users do likewise.

So yes, technically Ubuntu is the most popular distro, there still are more people using Fedora/Arch/OpenSuse/etc than Ubuntu.

15 minutes ago, Stan` said:

I'm not able to take decisions on this anymore but this sounds good. Unfortunately testing is not really the issue there, the problem is more whatever kind of virtualization happens in there that breaks graphic drivers and sound ones.

 

  • Like 1
Link to comment
Share on other sites

52 minutes ago, Stan` said:

Does it even run ?

Few years ago I tried and hwdetect triggered an error due to numa not being implemented in wine, the error dialog offered a continue button and so I continued and from there the game ran just fine. If this is still the case just dropping numa detection which we don't make use of in the the first place would allow us to have a viable alternative to offer a "trusted" binary for the impatient beside the just build it yourself (tm).

While it is true that a distro might lag a lot, those listed as the most popular were all reasonably fast to offer the latest version in the past as far as I remember.

Link to comment
Share on other sites

20 minutes ago, ShadowOfHassen said:

No. Why should I? I have native Linux builds.

Why would you mind the unverified label for flatpack? ;)

Also what does native mean? After all the exe is a native x86 binary and flatpack isn't a native distribution package.

Using wine gets you a 0-day trusted binary path at basically no cost for wfg. The cost for a release I'd argue is already in the unhealthy territory. I fully understand that this might not be the most favorite solution for a small set of users but my standpoint is providing the sources is good enough and beyond that is adding bells and whistles.

  • Like 1
Link to comment
Share on other sites

Posted (edited)
16 minutes ago, hyperion said:

Why would you mind the unverified label for flatpack? ;)

Also what does native mean? After all the exe is a native x86 binary and flatpack isn't a native distribution package.

Using wine gets you a 0-day trusted binary path at basically no cost for wfg. The cost for a release I'd argue is already in the unhealthy territory. I fully understand that this might not be the most favorite solution for a small set of users but my standpoint is providing the sources is good enough and beyond that is adding bells and whistles.

I don't mind the unverified label. But I think we probably should not have it because other users could easily be scared away from it, and besides I think it's only fair with we have the official snap, we should have an official release for the more popular third party app store.

Native means, It's built specifically for Linux.

Does it cost something for WFG to make a Linux build? Even when people like me volunteer to help? If so, how much? I am certain if you just did flatpak and snap, it would be much cheaper than helping to maintain the 12+ different package repositories for the Linux distros?

I don't know how much you use Linux, but it is really bad to use wine with a game with an installer. Not only do you have to install the game, but most of the time you have to set up a desktop icon. Of course, you could use something like Lutris, but that's even more work. And of course, using wine increases the raw system power you need on a device.

Also, there are many people who are using Linux and aren't tech people who compile apps. I have never compiled an app from source, and if that was the only way to make me play a game, I wouldn't because I don't want to have to go through that much work to play a video game.

 

 

Edited by ShadowOfHassen
Link to comment
Share on other sites

28 minutes ago, ShadowOfHassen said:

I don't mind the unverified label. But I think we probably should not have it because other users could easily be scared away from it

So, the same situation as with the windows installer where windows refuses to install 0ad until you convince it?

Link to comment
Share on other sites

1 hour ago, ShadowOfHassen said:

Does it cost something for WFG to make a Linux build? Even when people like me volunteer to help? If so, how much? I am certain if you just did flatpak and snap, it would be much cheaper than helping to maintain the 12+ different package repositories for the Linux distros?

Just so we're on the same page, we have an official snap maintained by @oSoMoN @andy5995 also made a pipeline to build an appimage (I sadly never had the time to port it to jenkins)

We're in contact with Arch, Debian, Ubuntu, FreeBSD and Fedora for official packages

The problem is not so the package but the testing. There is a myriad of Linuxes, and none of them behave the same. eg different kernel versions https://feedback.wildfiregames.com/os/

The moment you take the responsibility to make the package you have to test every distro. Which is why while it's official snap and appimages are still separated for now.

 

  • Like 1
Link to comment
Share on other sites

 

40 minutes ago, Stan` said:

Just so we're on the same page, we have an official snap maintained by @oSoMoN @andy5995 also made a pipeline to build an appimage (I sadly never had the time to port it to jenkins)

We're in contact with Arch, Debian, Ubuntu, FreeBSD and Fedora for official packages

The problem is not so the package but the testing. There is a myriad of Linuxes, and none of them behave the same. eg different kernel versions https://feedback.wildfiregames.com/os/

The moment you take the responsibility to make the package you have to test every distro. Which is why while it's official snap and appimages are still separated for now.

 

I believe the plan behind Flatpak was to build on one distro run on all others. I have run into issues, however, where something failed to work on one system that did on another. However, that was a problem between flatpak and system versions, not the flatpak. Just as for example wine + 0 A.D. might not work with all distro combinations.

I actually don't even think Flathub wants you to test that many distros.

The other thing to note is distros are moving to flatpak. Fedora is stopping support for LibreOffice packages to use focus on the flatpak.

Link to comment
Share on other sites

1 hour ago, ShadowOfHassen said:

I am certain if you just did flatpak and snap, it would be much cheaper than helping to maintain the 12+ different package repositories for the Linux distros?

Those distribution builds are done by distribution maintainers and not wfg. Sure sometimes they run into issues and might ask a quetion or two but more often than not they provide patches and it can be considered a net win for the project. From the viewpoint of wfg flatpack is just yet another binary repo. That reminds me of https://xkcd.com/927/

 

1 hour ago, ShadowOfHassen said:

I don't know how much you use Linux, but it is really bad to use wine with a game with an installer.

I'm a Linux user for 30 years and still not yet a fundamentalist. What I expect from binaries is that I could build them myself and that they are from a trusted source, also I want to get notified of security issues and them being taken care of in a professional and timely manner. Lastly it should be functional. This is what a distribution maintainer is for and if you want to take care of flatpack you will have to take up the same role.

Whether the binary format is PE, ELF or Mach-O I don't care and don't see why I should. So the really bad I really don't understand.

 

1 hour ago, ShadowOfHassen said:

using wine increases the raw system power you need on a device

Wine is a recursive acronym for wine is not an emulator. Sometimes a software actually runs faster in wine than on Windows. I remember getting about twice the FPS  for Diablo II. Ofc an Linux package is preferable all else equal.

 

1 hour ago, ShadowOfHassen said:

Native means, It's built specifically for Linux.

Debian builds for 4 different archs https://packages.debian.org/stable/0ad, so no single binary to rule them all. There are more archs than that running Linux, some somewhat recent patches suggest people also want to run 0ad on risc-v and e2k.

 

2 hours ago, ShadowOfHassen said:

Does it cost something for WFG to make a Linux build? Even when people like me volunteer to help?

Not money but man-hours. Half a day would be not unusual I'd estimate. Add to that that bugs with that package would be come our bugs instead of theirs.

If you want to help I guess you'd have to be familiar with building from source, packaging software, willing to commit for several years, live in a country were law can reach you and possibly meet a current developer IRL for exchanging keys.

  • Like 1
Link to comment
Share on other sites

Posted (edited)
1 hour ago, hyperion said:

Those distribution builds are done by distribution maintainers and not wfg. Sure sometimes they run into issues and might ask a quetion or two but more often than not they provide patches and it can be considered a net win for the project. From the viewpoint of wfg flatpack is just yet another binary repo. That reminds me of https://xkcd.com/927/

 

I'm a Linux user for 30 years and still not yet a fundamentalist. What I expect from binaries is that I could build them myself and that they are from a trusted source, also I want to get notified of security issues and them being taken care of in a professional and timely manner. Lastly it should be functional. This is what a distribution maintainer is for and if you want to take care of flatpack you will have to take up the same role.

Whether the binary format is PE, ELF or Mach-O I don't care and don't see why I should. So the really bad I really don't understand.

 

Wine is a recursive acronym for wine is not an emulator. Sometimes a software actually runs faster in wine than on Windows. I remember getting about twice the FPS  for Diablo II. Ofc an Linux package is preferable all else equal.

 

Debian builds for 4 different archs https://packages.debian.org/stable/0ad, so no single binary to rule them all. There are more archs than that running Linux, some somewhat recent patches suggest people also want to run 0ad on risc-v and e2k.

 

Not money but man-hours. Half a day would be not unusual I'd estimate. Add to that that bugs with that package would be come our bugs instead of theirs.

If you want to help I guess you'd have to be familiar with building from source, packaging software, willing to commit for several years, live in a country were law can reach you and possibly meet a current developer IRL for exchanging keys.

Don't you realize we can just take a snap, AppImage or literally any other binary and just have flathub pull it?

If we could get the AppImage online, you'd just tell the flathub to run that. There wouldn't even need signing, you just tell flathub to directly download it from WFG

 

Edited by ShadowOfHassen
Link to comment
Share on other sites

Posted (edited)

I think for some reason, you're making it seem much more complicated, @hyperion than I've seen it with even the flatpak people. I don't see how it would be hard, to say, "hey people who are currently doing a fine job with maintaining the Flathub, how about we make this official?" And then have them help the dev team maintain it.

If you're afraid of getting more bugs, well you'll get it anyway, because people always assume it's the game when it's not the package format, I see it with the other repo I've been helping maintain. The only thing to do is have someone there who can try to help them figure the problem out.

 

Looking over what @Stan` said, I think he assumed I meant making it official for the game. That isn't the case. I'm just suggesting WFG take some control over the flatpak like they have the snap, so we don't have the "scary" verified check mark.

Edited by ShadowOfHassen
Link to comment
Share on other sites

1 hour ago, ShadowOfHassen said:

I think for some reason, you're making it seem much more complicated, @hyperion than I've seen it with even the flatpak people. I don't see how it would be hard, to say, "hey people who are currently doing a fine job with maintaining the Flathub, how about we make this official?" And then have them help the dev team maintain it.

If Redhat trust the people they have given commit access to flathub they can just put the trusted label on it and users can chose to trust Redhat or not, done. Upstream endorsing downstream is backward, why should upstream endorse Canonical and Redhat but not all the other distributors? Maybe you realize there is as much politics in this as other reasons.

If upstreams aren't serious about it and just randomly hand out dozens of endorsements then it's a disservice to the end user and being serious means work, no way around it.

Link to comment
Share on other sites

2 minutes ago, hyperion said:

If Redhat trust the people they have given commit access to flathub they can just put the trusted label on it and users can chose to trust Redhat or not, done. Upstream endorsing downstream is backward, why should upstream endorse Canonical and Redhat but not all the other distributors? Maybe you realize there is as much politics in this as other reasons.

If upstreams aren't serious about it and just randomly hand out dozens of endorsements then it's a disservice to the end user and being serious means work, no way around it.

I'm sorry. I had no idea what you just said.

Link to comment
Share on other sites

17 hours ago, ShadowOfHassen said:

Looking over what @Stan` said, I think he assumed I meant making it official for the game. That isn't the case. I'm just suggesting WFG take some control over the flatpak like they have the snap, so we don't have the "scary" verified check mark.

Maybe we disagree on this: for me the moment WFG makes the flatpack official it becomes responsible for it as in all the flatpack issues becomes Trac/Official issues with the inconvenience you know have to check more places. That's why we have tickets for the snap version on Trac.


Since no one has flatpack experience here that would have fallen on me, or nobody if I didn't care.

18 hours ago, ShadowOfHassen said:

"hey people who are currently doing a fine job with maintaining the Flathub, how about we make this official?" And then have them help the dev team maintain it.

Looks good on paper, but how do you trust them ? I met Osomon IRL (That's not foolproof but it helps). If tomorow they bundle a flatpack with a backdoor, is it their responsibility or ours ? (That's what happened with Steam) I had no idea what version they uploaded (and sure as hell wasn't gonna pay 8€ to figure it out)

Link to comment
Share on other sites

Ok. Maybe after we switch to Git we can get some CLI stuff that makes things easier. Personally, I wouldn't use the flatpak if we had an official steam. Hopefully eventually we can build this project up where we can have a few people (not counting me) who are willing to work on flathub.

Link to comment
Share on other sites

21 minutes ago, Stan` said:

What kind of CLI stuff ?

You can do CLI stuff to automate flatpak (technically, that's what they have currently). However, I was thinking just setting up CLI to make a stand-alone executable 0 A.D. Linux binary, and just use that in the flathub.

We could also CLI automate the snap, and then set the flatpak up to just use the snap, like spotify does.

Link to comment
Share on other sites

The snap is built on the ubuntu thingy, not on our servers. By the way with the new vulkan shaders, the shader build takes at least 5 hours on the macosCI, and 1 hour on my M1 mac. + the rest of the time +- 2h Since the flatpack is standalone, that's possibly a lot more time to make a release :)

Trust me, I went for as much automation as I could, and still a release took about 24hours :) + time to make the trailer

 

  • Thanks 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...