Base images for Flatpak builds with OBS
I'm currently a little bit experimenting and playing around with Flatpak builds on OBS. My final target is to build OpenBoard, which I'm maintaining on the Education project as a flatpak. I'm new to flatpak, so I do not know too much about it. I was starting with the https://build.opensuse.org/package/show/OBS:Flatpak:Templates/FlatpakTemplat... and the existing Flathub build of OpenBoard here: https://github.com/flathub/ch.openboard.OpenBoard OpenBoard uses an embedded web browser, originally based on webkit. Therefore the Flathub build file contains base: io.qt.qtwebkit.BaseApp base-version: 5.15-21.08 The new version of OpenBoard I'm trying to build is based on webengine, and therefore I was trying to switch to io.qt.qtwebengine.BaseApp. Both are available on Flathub, see the output of flatpak remote-ls --system flathub --columns=application:f,version,branch | grep io.qt But when I look at https://build.opensuse.org/project/show/OBS:Flatpak, then only a small subset of the Flathub base images is available in OBS. And indeed my build currently fails because this base image is not provided. Are there any other means to build a flatpak using QtWebengine? Is there any option to pull in such libraries differently than by using a base image? And another surprising thing: When I look at the build logs of my experimental project at https://build.opensuse.org/package/show/home:letsfindaway:flatpack/OpenBoard, then I have configured it for Leap 15.4, but all the packages cumulated for the build are for Leap 15.2. Is this intended? Or is there some misconfiguration on my side or the OBS side?
Martin Winter wrote:
OpenBoard uses an embedded web browser, originally based on webkit. Therefore the Flathub build file contains base: io.qt.qtwebkit.BaseApp base-version: 5.15-21.08 The new version of OpenBoard I'm trying to build is based on webengine, and therefore I was trying to switch to io.qt.qtwebengine.BaseApp. Both are available on Flathub... But when I look at https://build.opensuse.org/project/show/OBS:Flatpak, then only a small subset of the Flathub base images is available in OBS. And indeed my build currently fails because this base image is not provided.
That one seems like a beast to build. Well, the OBS:Flatpak project offers only runtimes at the moment for: Freedesktop's, GNOME's and KDE's Sdk.*/Platforms.* [1] That's why you think only a subset of available "bases" are available. Now, io.qt.qtwebengine.BaseApp is a BaseApp [2], similar to org.electronjs.Electron2.BaseApp [3]. Their purpose [4] is to make life easier, imagine having to build Electron whenever you want to build an Electron flatpak application, that'd would be a quick way to madness!
Are there any other means to build a flatpak using QtWebengine? Is there any option to pull in such libraries differently than by using a base image?
I don't think so, someone needs to make a flatpak of the QtWebengin BaseApp and even if we had an OBS flatpak for it, I'm not sure whether OBS knows how to point flatpaks that'd need a BaseApp to the right place. And, most of all, you may have noticed that OBS:Flatpak is unmaintained/out of date. Personally, I can't say what are the plans for it at the moment.
And another surprising thing: When I look at the build logs of my experimental project at https://build.opensuse.org/package/show/home:letsfindaway:flatpack/OpenBoard, then I have configured it for Leap 15.4, but all the packages cumulated for the build are for Leap 15.2. Is this intended? Or is there some misconfiguration on my side or the OBS side?
This is on OBS side [5]. It's a careless hasty copy-paste and edit that ended up incomplete. Right now it doesn't matter if you use Leap 15.2/3/4, all of them are pulling from openSUSE:Leap:15.2:Update. Someone needs to fix it! [1] https://docs.flatpak.org/en/latest/available-runtimes.html [2] https://docs.flatpak.org/en/latest/introduction.html?highlight=baseapp#termi... [3] https://docs.flatpak.org/en/latest/electron.html#the-electron-base-app [4] https://docs.flatpak.org/en/latest/dependencies.html#base-apps [5] https://build.opensuse.org/projects/OBS:Flatpak/meta
participants (2)
-
Luciano Santos
-
Martin Winter