Skip to content
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

Official support #32

Open
6 tasks
vchernin opened this issue Jul 1, 2021 · 10 comments
Open
6 tasks

Official support #32

vchernin opened this issue Jul 1, 2021 · 10 comments

Comments

@vchernin
Copy link
Collaborator

vchernin commented Jul 1, 2021

Ideally the Flatpak would be offically recomended on mattermost.com when users are downloading it. This issue tracks the steps that might be needed for that to happen.

The original proposal to build a Flatpak is here: mattermost/desktop#870. @SemaiCZE Has there been any upstream interest to officially support the Flatpak since then?

An intermediate step could be to have it listed as part of GitHub releases with an unofficial label (like the AppImage). Also it could be mentioned in the install guide.

To do (in no particular order):

  • Ensure feature parity between Flatpak and non-Flatpak releases.
  • Explore if electron-builder could be used over extracting the tarball.
  • I personally think using the tarball is pretty sensible, after all the Flatpak manifest is quite simple.
  • See if the icon can be fixed without putting it in the repo.
  • Ensure x-checker-data works properly.
  • Ask upstream if they have any issues/concerns with officially supporting a Flatpak package.
  • Investigate building the Flatpak as part of Mattermost's infrastructure.
  • This means there'd be no GitHub repo like we have now. Instead it would look like Mozilla's Firefox Flatpak (notice there's no publisher link).
  • See also: Decide the flow of upstream releases com.obsproject.Studio#136
@SemaiCZE
Copy link
Collaborator

SemaiCZE commented Jul 1, 2021

I tried to make it official, but it seems to have literaly no effect at all. I even think that @yuya-oc has write permissions to this repo. I also think that it'll be the best if the official mattermost team do the releases. But at the end I'll have to keep maintaining the flatpak builds, because we're using the Mattermost at work and I want to use the flatpak version on my Linux machines.

I tried to build from the sources at first, but I got into some chromedriver issues (a little bit mentioned in flathub/flathub#702 (comment)).

@vchernin
Copy link
Collaborator Author

vchernin commented Jul 1, 2021

Unfortunately building Electron apps from source is quite difficult, I'm not sure if there's even a single Electron app on Flathub that's built from source. Perhaps electron-builder will help here at some point, or maybe someone will figure out how to do it.

@svelle
Copy link
Contributor

svelle commented Jan 26, 2022

Hey @vchernin and @SemaiCZE

I'm working with Mattermost and I lead the support team there.
Just wanted to take a second and thank you both for your awesome work on keeping this repo up to date.
While I can't make an official statement on us officially supporting flatpak just now, simply because I'm not part of that team, I wanted to let you know that I am personally going to bring this up again with the desktop team because I think Flatpak is the way to go on Linux desktop.

So I'll be coming back here soon and hopefully have some good news, but you can definitely expect full support from my end if you run into any specific issues for now. Feel free to at-mention me here at any time or join our community server and ping me there.

In the meantime do you have any resources for me on how Firefox is shipping their flatpak directly to flathub? Sorry I'm relatively new to contributing to flatpak/flathub so I'm not yet aware of where everything lives.

Oh and @vchernin I wanted to send you some swag as a thank you gesture for your work here if you want but couldn't find any contact info anywhere. So I'm just going to extend this offer here, if you want anything just ping me and I'm happy to connect you. If you don't want that I'm totally fine with that as well, don't want to force anything on you :)

@vchernin
Copy link
Collaborator Author

vchernin commented Jan 26, 2022

In the meantime do you have any resources for me on how Firefox is shipping their flatpak directly to flathub? Sorry I'm relatively new to contributing to flatpak/flathub so I'm not yet aware of where everything lives.

Mozilla builds the Flatpak as part of their own CI, and pushes it to Flathub directly. Flathub subsequently publishes it. OBS Studio will do the same thing in their next release, except their build infrastrucure is GitHub instead of Mozilla's.

This works, but currently isn't scalable since it requires Flathub admins to manually create the necessary authentication keys for the app developer (e.g. Mozilla/OBS Studio).

Luckily Flathub is working on an admin panel that should eventually support developers creating their own keys (along with payments, etc). Furthermore, there should be a way to show users that a Flathub app is officially published/supported by its developers (some sort of domain verification perhaps). Some of these items might still take some time though.

https://discourse.flathub.org/t/seeking-contractors-for-work-on-flathub-project/1889

The other issue is how to actually build Mattermost. I think the current approach using the tarball makes sense, and should be fairly simple to integrate into Mattermost's build infrastructure. Potentially if direct pushing is possible, building on Mattermost's infrastructure means flatpak-builder could be bypassed, and the binary could be pushed directly to Flathub.

Building Electron apps from source with Flatpak is difficult at best, so that seems like something to avoid in any case.

Oh and @vchernin I wanted to send you some swag as a thank you gesture for your work here if you want but couldn't find any contact info anywhere. So I'm just going to extend this offer here, if you want anything just ping me and I'm happy to connect you. If you don't want that I'm totally fine with that as well, don't want to force anything on you :)

Thanks for the offer :) I will turn it down though as I'm happy to work on these things in my free time.

@svelle
Copy link
Contributor

svelle commented Jan 27, 2022

Thanks, this gives me a lot to work off of!

@vchernin
Copy link
Collaborator Author

vchernin commented Feb 2, 2022

I will also add, right now we only actually publish a x86_64 build. For there to be a aarch64 build either Mattermost would need to publish an aarch64 Linux tarball, or we'd have to complile from source here.

@svelle
Copy link
Contributor

svelle commented Feb 2, 2022

I will also add, right now we only actually publish a x86_64 build. For there to be a aarch64 build either Mattermost would need to publish an aarch64 Linux tarball, or we'd have to complile from source here.

Thanks, that one should be a fairly simple fix of just adding the needed parameter to electron-builder. trickier would be actually testing that. Do you happen to know of any common devices that run on ARM SoCs?

@SemaiCZE
Copy link
Collaborator

SemaiCZE commented Feb 2, 2022

Thanks, that one should be a fairly simple fix of just adding the needed parameter to electron-builder. trickier would be actually testing that. Do you happen to know of any common devices that run on ARM SoCs?

Raspberry Pi?

@vchernin
Copy link
Collaborator Author

vchernin commented Feb 2, 2022

In theory you can run the aarch64 build with QEMU if no arm hardware is available.

e.g. like this. I haven't every tried that though.
Some Flatpak info

@shvetsnikita
Copy link

Do you happen to know of any common devices that run on ARM SoCs?

There is wide range of devices to choice from: https://www.armbian.com/download/?tx_category=desktop

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants