15:00:22 #startmeeting Fedora Flatpak Packaging SIG 15:00:22 Meeting started Mon Feb 20 15:00:22 2023 UTC. 15:00:22 This meeting is logged and archived in a public location. 15:00:22 The chair is kalev. Information about MeetBot at https://fedoraproject.org/wiki/Zodbot#Meeting_Functions. 15:00:22 Useful Commands: #action #agreed #halp #info #idea #link #topic. 15:00:22 The meeting name has been set to 'fedora_flatpak_packaging_sig' 15:00:22 #meetingname flatpak-sig 15:00:22 The meeting name has been set to 'flatpak-sig' 15:00:22 #topic Init process 15:00:28 .hello kalev 15:00:29 kalev: kalev 'Kalev Lember' 15:00:49 .hello rishi 15:00:50 rishi[m]: rishi 'Debarshi Ray' 15:01:07 it's a holiday in the US so maybe not a lot of people are around today 15:01:29 .hello tpopela 15:01:31 tpopela[m]: tpopela 'Tomas Popela' 15:01:36 .hello siosm 15:01:37 ./ 15:01:37 travier: siosm 'Timothée Ravier' 15:01:43 * o/ 15:01:47 .hello sberg 15:01:48 sberg_: Sorry, but user 'sberg' does not exist 15:02:03 .hello sbergmann 15:02:04 sberg_: sbergmann 'None' 15:02:10 nice to see you here, sberg_! 15:02:30 yeah, I accidentally missed the first two meetings :( 15:03:01 no worries 15:03:22 we have a etherpad to keep a track of topics, https://etherpad.opensuse.org/p/fedora-flatpaks-sig if you want to add something for a future meeting 15:03:47 #topic Announcements 15:03:51 Let's try to keep the announcements short this time. I think I managed to spend 15 minutes of the previous meeting typing them out so this time I've prepared a copy-paste :) 15:03:58 #info 15 new flatpaks added over the last two weeks, thanks to yselkowitz (14) and pwalter (1) 15:04:01 I did a round of new builds to keep dependencies up to date for existing flatpaks 15:04:04 https://bodhi.fedoraproject.org/releases/F37F has all the updates 15:04:06 #info xberry has a fork of flatpak-module-tools to merge in the parts of fedmod we need 15:04:09 https://pagure.io/fork/xberry/flatpak-module-tools/c/1f7eeb562a72aae60e53babc3935ddb6eca54043?branch=master 15:04:12 #info Allan created a gitlab repo where we can track flatpak-specific issues: https://gitlab.com/fedora/sigs/flatpak 15:04:15 EOF from me - anyone else want to add something? 15:04:54 Good discussions already in the tracker 15:05:12 Yeah, I was about to say - some things we might want to pick up from the issues 15:05:24 * kalev nods. 15:05:43 should we take something from the tracker or continue from the etherpad? 15:05:51 #info xberry will also work on porting the "to be bundled" fedmod from libmodulemd to libmodulemd v2 15:06:27 nice 15:06:49 https://gitlab.com/fedora/sigs/flatpak/fedora-flatpaks/-/issues/7 is blocking a few apps 15:07:24 * kalev agrees. 15:07:27 #topic Policy for app id discrepencies 15:07:30 I also have (as of now) internal list of issues that are affecting Firefox Fedora Flatpak, I will move them over to GitLab in the following days 15:07:30 https://gitlab.com/fedora/sigs/flatpak/fedora-flatpaks/-/issues/7 15:08:23 nice, good that we are already making good use of the new issue tracker 15:08:49 i anticipate that this will stand in for a mailing list 15:09:34 yeah, I'd like it to at least, I think it's easier if there are fewer places to discuss stuff 15:10:23 hello 15:10:36 hello! 15:10:47 so, reading through the comments there, I am not sure there is a lot to add 15:11:18 I added support for the eol and eol rebase things to fedora flatpaks a few cycles ago 15:11:19 it sounds like the policy for id mismatches should be: 1. try to get the upstream id changed, 2. if that fails after X weeks, follow the Flathub ID ? 15:11:45 so even if we get the ID wrong, it's still possible to rename it 15:12:26 I think that's a good policy 15:12:59 I would maybe also add that if we have a mismatch, we should add a provides line to appstream to provide the other app IDs 15:13:12 that way gnome-software knows that they are the same app and knows to de-duplicate them in the UI 15:13:20 I like how consistency in upper-casing the final name is inconsistent 15:13:54 where would we document the policy? https://docs.fedoraproject.org/en-US/flatpak/tutorial/ ? 15:14:43 sounds like a good first place. 15:14:46 I think so. I would maybe rephrase it less like a policy and more like guidelines how to choose the app ID, maybe 15:14:55 if it turns out it needs to go elsewhere it can be iterated later 15:15:14 cool. i'll add that plan to the ticket 15:15:23 the packaging guidelines use SHOULD and MUST to indicate how strong the language is 15:15:36 if we want to write a policy document maybe it would make sense to use the same kind of style 15:16:09 adding it as a guideline makes sense to me 15:16:40 https://docs.fedoraproject.org/en-US/packaging-guidelines/ is the packaging guidelines that I refer to 15:17:52 Do we all agree on 15:17:52 1. Try to get upstream to to use the ID used by Flathub 15:17:52 2. If that fails, patch 15:17:52 3. Update existing Flatpak to use the one used by Flathub 15:17:58 ? 15:18:17 what do you mean by "patch" ? 15:18:24 patch the ID in Fedora 15:18:36 as in, in the rpm packaging or in flatpak packaging? we have two places to do that :) 15:18:58 Can this be done in the Flapak packaging? 15:19:14 I'd say RPM so that things are in one place 15:19:25 yes, see e.g. https://src.fedoraproject.org/flatpaks/firefox/blob/stable/f/container.yaml 15:19:56 it's renaming the appdata and desktop and icon files from firefox to org.mozilla.Firefox 15:20:11 so far this is what has been done in almost all cases, mostly because it's easier like that 15:20:11 indeed 15:20:17 agree 15:20:20 seems easier 15:20:32 Then 2. Rename in Flaptak config 15:21:10 1. Try to get upstream to to use the ID used by Flathub 15:21:10 2. If that fails, rename the App ID in Fedora's Flaptak config 15:21:10 3. Update existing Flatpak to use the one used by Flathub 15:21:58 maybe 2. should be rename in flatpak or rpm spec file and leave it up to the packager to choose where they want to do it 15:22:31 .hello yselkowitz 15:22:31 Note that this is not set in stone. I think Flathub should change the names if it makes sense and it's not just a capitalization change 15:22:31 yselkowitz[m]: yselkowitz 'Yaakov Selkowitz' 15:22:44 * kalev nods. 15:22:58 I'd like to point out that in this case we had firefox flatpak first and then flathub chose to go with a different name :( 15:23:11 I pointed it out then but they didn't want to use org.mozilla.Firefox, sadly 15:23:46 anyway, at this point I think it makes sense for us to rename it to lower case to match flathub 15:24:10 +1 15:24:25 hello :) 15:24:27 I can talk to stransky and xhorak and get it changed 15:24:44 hello chromebittin and yselkowitz[m]! 15:24:54 Are we confident that users will get the one if we change the name? 15:25:42 I believe so, but I want to test it first to make sure it works 15:26:02 I'm not confident that flatpak knows to install the new thing from the same repo, for example 15:27:42 sounds like gnome-software handles eol-rebase, but not eol, if I understand https://gitlab.gnome.org/GNOME/gnome-software/-/issues/572#note_1333705 right 15:28:10 oh Fedora Flatpak meeting (is here early waiting for the QA meeting) sorry 15:28:16 kalev: but we will need only eos-rebase, no? because we have a replacement (with the "fixed" ID) 15:28:27 1. Try to get upstream to to use the ID used by Flathub 15:28:27 2. If that fails, rename the App ID in Fedora's Flaptak config or RPM spec file 15:28:27 3. Update existing Flatpaks to use the one used by Flathub (to be confirmed/validated) 15:28:27 exactly 15:28:36 not eos, but eol, sorry.. 15:28:38 +1 from me 15:28:52 +1 15:28:54 +1 15:29:00 Writting that in the ticket 15:29:14 excellent, thanks travier 15:29:25 anyway, if we end up renaming things, it's easiest to do at the same time as switching to a new runtime version 15:30:00 we have to request a new branch and ... I can walk people through this if yselkowitz[m] or anyone else wants to rename something 15:30:31 e.g. https://src.fedoraproject.org/flatpaks/dosbox/pull-request/1 ? 15:30:32 it's a bit awkward because we don't have repo names that match flatpak app IDs 15:31:01 oh, yes 15:31:22 ok, that's the simple case because dosbox and dosbox-staging have different git repos 15:31:41 the rename is awkward when it's the same repo name but the ID changes 15:32:12 yselkowitz[m]: in the case of dosbox, I am not sure we can actually add the rename keyword, because we need to build the container for it to take effect 15:32:21 and dosbox has been retired for a while now and doesn't build any more 15:33:51 so we need to be able to build something in order to rename / retire it, which is annoying :) 15:34:12 would be nice if we could inject the metadata in some other way, but I don't know if it's possible 15:35:13 maybe we could build a dummy empty dosbox flatpak that adds the rename keywords, hm 15:35:43 anyway, should we move on? 15:35:55 +1 15:36:19 #topic timeframe for migrating to f38 15:36:51 f38 has branched now so we could start building the runtime now and start switching flatpaks over 15:37:13 Do we want this to land in the Beta? 15:37:24 last I tried, fedmod -s f38 fetch-metadata didn't work yet? 15:37:26 Can we hold things in testing until the release? 15:37:37 so this is the awkward part 15:37:48 If we update the packages now, F37 users will get them 15:37:53 Flatpaks* 15:38:00 yeah, exactly, was just typing that 15:38:14 (well, everybody will get them) 15:38:28 because of that limitation, I think it would make sense to wait a little bit until at least GNOME has had a final 44.0 release out 15:38:46 +1 15:38:54 so my idea would be to push out GNOME flatpaks only once 44.0 is out 15:39:24 at the same time, it would be nice to get 44.0.beta flatpaks for F38 silverblue, but I don't think we can do that because F37 users would get them as well 15:39:47 it would be nice if we could have different channels, like a stable channel and beta channel, but we don't right now 15:40:01 so maybe something like this: 15:40:02 We would have to create a special remote to push them tp 15:40:03 to* 15:40:10 yes, let's do what we've been doing previously.. 15:40:58 I can request branches for the runtime and sdk and flatpak-common and flatpak-runtime-config and flatpak-rpm-macros today and try to get a first build out this week 15:41:35 and then we see if any issues come up, like sometimes packages that are part of the runtime have added bad deps that we don't want in the runtime 15:41:47 so we need to fix those in the spec files to get a good build and that can take time 15:41:47 kalev: while i have you here any plan for when the Gnome 44 Beta is in F38 beta ? 15:42:14 chromebittin: yes, amigadave is doing the builds this cycle, not me, and he said he has everything built in a side tag and is going to merge it later today 15:43:16 ah alright thanks for the info :) 15:43:28 so anyway, once runtime is built we can start migrating things over to it on as needed bases, but maybe we could leave the flag day when doing a mass migration for when 44.0 is released 15:43:39 yselkowitz[m]: what do you think? 15:44:48 ah another thing, regarding Silverblue 15:45:29 go ahead 15:45:30 silverblue pungi config hardcodes the flatpak runtime version that's pre-installed 15:45:36 yes 15:45:51 we need to update all apps at onc 15:45:52 e 15:45:54 so we need to update it at the same times as when the flatpaks switch to the new runtime 15:46:02 yeah, or add two flatpak runtimes to silverblue for a short while 15:46:16 all apps shipped in the ISO 15:46:23 that's going to make it much bigger 15:46:35 sounds like flag day for stable then 15:46:39 yeah, so probably best to do it as a flag day and switch everything over at once 15:47:35 https://wiki.gnome.org/FortyFour has the gnome schedule and 44.0 is March 18 15:48:04 so yeah, I'll get the runtime prepared and we can discuss how to switch apps over at the next meeting in two weeks or so 15:48:53 somewhat related, how would people feel if we leave Qt 5 out of the runtime as an experiment for f38? 15:49:15 last i read was 22th March for the release of 44 15:49:34 ah, yes, chromebittin is right of course 15:49:48 March 18 is only the tarball date 15:49:55 how many apps use qt5 right now? 15:49:57 ah 15:50:24 yselkowitz[m]: that's a question I have too and it's hard to know the answer if qt 5 is part of the runtime :) 15:50:49 the package generation scripts leave out anything that's part of the runtime so I can't easily look at flatpak yaml files 15:51:07 in any case, we don't pre-install anything on silverblue that uses qt 5 15:51:36 we used to have mediawriter, but that has since switched to qt 6 and it bundled the qt 6 libraries and doesn't use them from the runtime 15:51:43 It's used by the fedora media writer that is shipped by default AFAIK 15:51:47 I've been working on kde 5/6 runtimes, a draft of 6 is buildable but untested, but 5 had problems with deps on systemd etc. 15:51:50 so we'd get a net reduction of silverblue installer if we drop qt 5 15:51:51 hum ok 15:52:10 I remember jgrulich was saying something about qt5 in the first meeting. 15:52:34 Won't it make sense to drop it when we have the separate KDE runtime? 15:52:47 * rishi[m] goes back to his cave :P 15:53:10 I'd argue we should mirror the Flathub layout to make this simpler for developers targeting the runtimes 15:53:12 not sure what to do wrt silverblue and mediawriter if it ends up switching to a second runtime 15:53:36 should silverblue then come with both the GNOME and KDE runtimes to support GNOME apps + mediawriter? 15:53:42 (mirror "as much as possible") 15:53:47 I've been going back and forth on this, now wondering if the main runtime -- at least for a bit longer -- should have core qt5 and qt6 components to avoid two runtimes in silverblue for mediawriter, but then what would happen with kinoite? 15:54:15 yes, indeed, that's the other part of the equation 15:54:19 I'd say media writer should keep bundling 15:54:39 We should aim for a single runtime for each variant 15:54:47 but make that the sole exception (once we sort out kde runtimes)? 15:55:41 +1 15:55:53 or maybe have only KDE apps target the KDE runtimes and everything else would use the other runtime? 15:56:05 not sure, it's a balance question 15:56:52 anyway, my proposal wrt qt5 is to drop it temporarily from the f38 runtime so we get a clearer picture how many apps use it and if it's even possible to build it as bundled 15:57:01 and we can revisit it next week to see if we should add it back 15:57:24 how does that sound? 15:57:59 right now we don't even know if qt5 builds cleanly for /app as it being part of the runtime makes all the experiments harder 15:58:40 I'd like to see how many of my flatpaks would be affected 15:58:54 everything else pre-loaded on Silverblue is GNOME apps so +1 from me 15:58:54 not sure if any before my involvement use qt5 or not 15:59:32 there are some, but I don't know how to figure out which exactly until we drop them from the runtime and re-generate the module files with fedmod 15:59:54 anyway, we are over time here and the QA meeting is starting 15:59:56 time 16:00:07 thanks for coming everybody! 16:00:10 #endmeeting