14:00:54 #startmeeting modularity_wg 14:00:54 Meeting started Tue May 15 14:00:54 2018 UTC. 14:00:54 This meeting is logged and archived in a public location. 14:00:54 The chair is nils. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:00:54 Useful Commands: #action #agreed #halp #info #idea #link #topic. 14:00:54 The meeting name has been set to 'modularity_wg' 14:00:54 #meetingtopic Meeting of the Modularity Working Group (once every two weeks) 14:00:54 #chair dgilmore mikedep333 tflink 14:00:54 Current chairs: dgilmore mikedep333 nils tflink 14:01:02 #topic Roll Call 14:01:11 .hello psabata 14:01:12 contyk: psabata 'Petr Šabata' 14:01:22 I always need to find where to copy and paste that blurb from :) 14:01:27 .hello nphilipp 14:01:29 nils: nphilipp 'Nils Philippsen' 14:01:51 add a macro to your client 14:02:03 mhm 14:02:10 hi 14:02:10 the pain isn't strong enough yet :) 14:02:55 .hello2 14:02:56 tflink: tflink 'Tim Flink' 14:03:26 Does anybody have anything for the agenda? The issue tracker is empty. 14:03:30 .hello2 14:03:31 asamalik: asamalik 'Adam Samalik' 14:03:45 .hello2 14:03:46 bowlofeggs: bowlofeggs 'Randy Barlow' 14:04:51 The sound of crickets can be soothing. :) 14:04:51 weird.. i was connected but not connected :/ 14:04:53 .hello2 14:04:54 langdon: langdon 'Langdon White' 14:05:00 #chair langdon 14:05:00 Current chairs: dgilmore langdon mikedep333 nils tflink 14:05:28 langdon: try connecting next time! 14:05:38 contyk: thanks! 14:05:43 Schrödinger's Connection. 14:05:54 nils: i looked in the box... 14:06:17 do we have any agenda? 14:06:28 as of now it's empty 14:06:52 I only have one little thing, probably for open floor 14:06:58 oooo 14:07:01 Then let's start with that. 14:07:05 #topic Agenda 14:07:07 anyone else have anything 14:07:08 #info Open Floor 14:07:12 #topic Open Floor 14:07:16 #chair contyk 14:07:16 Current chairs: contyk dgilmore langdon mikedep333 nils tflink 14:07:42 so geppeto noticed that while we have a few modules in Fedora, we don't define defaults for almost any of them 14:07:46 what is on the horizon for modularity that will require changes in fedora infra? 14:08:02 contyk, I noticed that I don't know how to define that, too 14:08:04 defaults allow you to make packages in your module:stream available by default, without the need to explicitly enabled the module 14:08:15 bowlofeggs: lets do that next? 14:08:21 sure 14:08:25 they also allow you to label certain installation profiles as default even when the module itself isn't enabled 14:08:26 sorry i was typing at the same tim e;) 14:08:40 contyk: did the docs for "new modules" get updated while i was at summit? 14:08:46 bowlofeggs: i know the feeling 14:08:54 langdon: nope, they were updated even before you left 14:09:03 asamalik did that, I believe 14:09:20 contyk: and defaults aren't a part of that? 14:09:24 langdon, they are 14:09:26 they are 14:09:34 do we really have something that should be a default? 14:09:41 just to clarify, that includes default streams, right? 14:09:46 I'm under the impression that majority of the modules are just alternative versions 14:10:02 it's a good idea to mark your profiles as default even if you don't want to mark any stream 14:10:13 contyk: +1 14:10:13 for the sake of ux 14:10:20 if my memory isn't betraying me, we decided not to modularize the default fedora packages some time ago? 14:10:34 asamalik: well.. the maintainer can decide 14:10:34 contyk, ah profiles, not streams :) 14:10:58 * asamalik is confused 14:10:59 it's all in one place 14:11:03 would it make sense to consider an "empty module" indicating that the default is in regular rpms? 14:11:26 * asamalik read "defaults" and was thinking about streams automatically 14:11:36 asamalik, I think it would be good if say for two alternative streams one is marked as default so "dnf module install thatmodule" doesn't surprise you 14:11:37 langdon: not sure I see the point there 14:11:41 langdon, even just for the UX? yes 14:11:42 i would rather people were even doing their default rpms as default modules 14:11:48 contyk: for UX 14:12:01 langdon: you mean having an empty defaults doc, not an empty module? 14:12:12 like "what versions of $thing we have here?" 14:12:17 dnf module list shows 1 14:12:23 langdon: in that case yes -- that's why the stream is optional and we have defaults for django that doesn't define any default stream, yet it still defines profiles 14:12:31 and dnf list | grep $think probably shows the other if I'm lucky 14:12:38 contyk: no.. well.. maybe.. something like "dnf module list" would show "postgres 9.6 = rpms" and "postgres 10 = module" 14:12:41 think -> thing 14:12:42 :) 14:13:10 i think dnf list lost modules somewhere 14:13:13 there's no sensible way to achieve that 14:13:18 I don't think "dnf module list" reports anything about content outside modules 14:13:43 contyk: you are sooooo limiting 14:13:59 so maybe without being too specific.. the question could be: can we come up with a mechanism to list alternative versions of stuff? 14:14:09 asamalik: yeah 14:14:16 dnf list used to have both 14:15:28 so do we want to make an action and move on? 14:15:43 asamalik: sure 14:15:46 langdon, what did you mean by "postgres 9.6 = rpms" vs "postgres 10 = module"? 14:16:06 praiskup, I guess he means one postgres that comes from bare RPMs and one out of a module? 14:16:11 praiskup: "dnf list *postgres*" would show two versions, one in rpms and one in a module 14:16:28 langdon, but it would still refer to the package, right? 14:16:32 in both cases 14:17:18 nils: well.. it should list both 14:17:32 and it used to 14:18:30 praiskup, I think we don't need to come up with a solution here... but the basic problems is: there is no easy way to ask "what versions of postgresql are available for me?" 14:18:34 langdon, so it should list both the package and the module if they have the same name, like postgresql:10 and postgresql-10.0-...? 14:18:57 asamalik: exactly 14:19:06 asamalik: want to write an action? 14:19:23 nils: essentially, yes.. but the versions would likely be different 14:19:52 I'm very limiting but again, there's no sensible way to do this :) 14:20:07 you want to compare module names with package names, while modules are collections of things with potentially unrelated names 14:20:34 yes, you could make those empty modules 14:20:40 but that would just be confusing 14:20:48 and adds extra maintainer overhead 14:21:43 yeah.. i just go back to that stef mantra of "why would you keep doing rpms".. i wonder if the problem is cli.. in a sense.. we have too much information for a cli tool to usefully provide all the information you need 14:23:38 if you want an action -- what would it be? 14:23:51 #action asamalik figure out how we could ask [dnf?] "what version of $thing is available on my system" when one version is standard RPMS and the other one is a module 14:24:03 * linuxmodder sneaks in late 14:24:23 nils, was that the right way to do it? 14:24:24 #chair asamalik 14:24:24 Current chairs: asamalik contyk dgilmore langdon mikedep333 nils tflink 14:24:28 now it would be 14:24:34 you need to be a chair AIUI 14:24:42 asamalik: that would solve the simple problem.. i think contyk you are looking at the general answer.. which is also important.. but we might be able to get to an incremental improvement 14:24:49 nils: correct 14:24:56 (so just re-send the line) 14:25:36 dnf list available does that 14:25:48 dnf list available | grep foo more specifically 14:25:52 langdon, can you elaborate? I'm not talking about nor hinting a solution.. just pointing out a problem 14:25:52 #action asamalik figure out how we could ask [dnf?] "what version of $thing is available on my system" when one version is standard RPMS and the other one is a module 14:25:54 linuxmodder: doesn't include modules (to my knowledge) 14:26:19 langdon, as in metapackages for modules? 14:26:33 asamalik: so.. $thing in your sentence.. must be "postgres" not "random item in a module collection" (eg docker in container-tools) 14:26:36 no idea what you'd show as an alternative to the upcoming javatools module that includes hundreds of generic java tooling components 14:26:43 langdon, linuxmodder: it looks as if it just filters out the modular or non-modular content depending on what is enabled 14:26:54 I don't think having some partial package name-based solution makes sense 14:27:18 I have gimp:2.10 enabled on my system and can't see the gimp-2.8.22 packages from non-modular Fedora. 14:27:23 contyk, so I think this won't work for all or would be automatic 14:27:28 dnf --disablerepo=* --enablerepo=modular --enablerepo=modular-testing list available | grep docker should work 14:27:32 but we *know* that there are two versions of postgresql 14:27:38 we know what the versions are 14:27:58 or evne aliasing that to | dnf list installed 14:28:11 I believe we can somehow show them together 14:28:13 * langdon waits for fedora-repos-modular to install 14:29:21 so something like sudo dnf --disablerepo=* --enablerepo=modular --enablerepo=modular-testing list available | grep foo > modular.stdout | dnf list installed > installed-modules.txt 14:29:27 maybe we just file an issue? or punt for the moment 14:30:06 or ideally create a metapackage or module that handles that in a module registry wide way 14:30:26 dnf --disablerepo=* --enablerepo="fedora-modular" --enablerepo="updates-modular" list available | grep docker only works if container-tools is enabled 14:31:00 probably because dnf is explicitly hiding rpms from not enabled modules 14:31:13 it is, yes 14:31:29 which, I think, was done on purpose 14:31:57 otherwise you saw several builds of the same thing, if it was included in a number of modules and contexts 14:32:02 that was consider bad ux 14:32:06 * asamalik senses a rat hole 🐀 14:32:08 well.. to the earlier point.. i think we may just want to open the discussion of the problem 14:32:37 langdon, +1 14:32:52 maybe we just file an issue.. against modularity 14:33:04 * asamalik wants to give some time to bowlofeggs as well 14:33:13 \o/ 14:33:56 asamalik, is this covered by your #action? 14:34:52 nils: i think we should just file an issue.. 14:34:55 nils, I believe it is.. we could make it more explicit that we want to discuss first, but I feel like that's not needed 14:35:16 cool, then we're done here and it's bowlofeggs' turn? 14:35:45 ...? 14:35:54 +1 14:35:58 good 14:36:02 bowlofeggs, you're on 14:36:04 #chair bowlofeggs 14:36:04 Current chairs: asamalik bowlofeggs contyk dgilmore langdon mikedep333 nils tflink 14:36:28 cool. so we (infra) were talking and we thougth it'd be good for one of us to work with the modularity WG so we can know what's coming out way 14:36:41 and so i volunteered to be the modularity infra bro 14:37:20 my only question for today is whether there are more expected requirements from infrastructure on the horizon 14:37:25 so this is mostly for the factory guys 14:37:38 but there's this one project that has yet to be discussed 14:37:56 it's a service that pulls modules into the non-modular buildroot, for a select, whitelisted few 14:38:22 it allows people to modularize their content even if stuff that depends on them at build time isn't modular 14:38:31 is this something factory 2 is building? 14:38:35 yes 14:38:52 how does fedora-infra connect with f2? 14:39:06 so infrastructure will need to deploy it/maitain it/audit it/etc 14:39:12 good to know - i wasn't aware of that 14:39:24 they call it ursa major 14:39:26 i wonder if it would be better for f2 & modularity to meet with infra perhaps at the infra meeting periodically 14:39:28 langdon: i don't know that we have a formal connection with f2 14:39:44 yeah that could be wise 14:39:51 well.. 99% of "what is coming from modularity" will be through f2 14:40:09 i seem to recall that there were going to be more bodhi changes 14:40:16 so maybe add f2 and modularity to the infra agenda ~once a month? 14:40:22 we're also working on a new solver for pungi + repoclosure 14:40:26 langdon: +1 14:40:37 it should be much faster and module-aware 14:40:51 isn't there some kind of "stream expansion" thing that needs changes in bodhi? 14:41:15 stream or string ? 14:41:18 possibly! though I thought bodhi has support for contexts already 14:41:18 would f2 know about the bodhi/stream exapansion thing too? 14:41:24 linuxmodder: stream 14:41:39 bowlofeggs: they would 14:41:59 bowlofeggs: stream expansion has two sides 14:42:03 contyk: i think bodhi has some minimal knowledge of contexts, but i feeeel like something about the way it is doesn't meet the end goal that modularity wg has for stream expansion 14:42:08 i don't nkow enough about it to say more than that :( 14:42:27 one is at build, where you can build one module input multiple times against different buildroots, getting a number of different artifacts that either have the same runtime deps or differ in runtime deps 14:42:59 another is runtime only -- build once and have a kind of a rich dependency that declares that the module is compatible with N of other modules in various combinations 14:43:36 in structured data, context is name+stream+version+buildtime/runtime-deps 14:43:50 stringified context is a hash of the deps 14:44:14 is somethng about this not supported today due to bodhi? 14:44:30 bowlofeggs: you probably know that better than I do :) 14:44:33 hahah 14:44:43 i think i know who i can talk to to find out more 14:44:46 cool 14:45:04 well i'm happy to try to link with with factory 2 14:45:05 MBS is supposed to tag module builds into the updates-testing tags 14:45:24 it understands these things and should distribute the artifacts accordingly 14:45:29 contyk: are you sure about that? i woudl think only bodhi would do that? 14:46:06 bowlofeggs: yes, this is definitely happening, at least partially; possibly still being developed to be smarter 14:46:23 that is quite strange to me - what moves them to stable then? 14:46:42 bowlofeggs: bodhi does but MBS should land them in some input tag for bodhi 14:47:04 bowlofeggs: factory will tell you more, yeah 14:47:05 contyk: ahhh - i think the input tag probably isn't updates-testing - it should be updates-candidate or something like that 14:47:09 that's why i was confused 14:47:17 updates-testing means bodhi has an update already 14:47:27 bowlofeggs: apologies; yes, some candidate definitely 14:47:29 cool 14:47:36 yeah i'm with you now 14:47:52 * linuxmodder know wishes he didn't get so sidetracked from infra and modularity stuff months ago :( 14:47:53 ok well i'm satisfied with the proposal to try to get involved with factory2 + modularity + infra 14:48:15 linuxmodder: there there 14:48:22 contyk, ?? 14:49:03 or even modular-testing ? 14:49:28 yes, a modular testing candidate thingy 14:50:10 contyk: now you sound like me :) 14:50:34 I'm too lazy to look up the actual tag name :) 14:51:01 :) 14:51:43 the actual tag name is f28-modular-updates-candidate: https://bodhi.fedoraproject.org/releases/F28M 14:52:28 (bodhi's "input" tag, called a "candidate tag") 14:53:12 more to discuss here? contyk, anything else you can think of in the pipe? 14:53:36 just ursa major and the new solver coming in a few weeks 14:53:47 nothing from me 14:53:48 thanks! 14:54:07 (ursa major is the new f2 service's name?) 14:54:08 solver is for pungi4 ? 14:54:12 or dnf 14:54:13 probably nothing from me either 14:54:39 linuxmodder: it's for the currently existing pungi; not sure about the version 14:54:40 bowlofeggs: no.. one of the apps 14:54:50 ah 14:54:50 the plan is to allow a configuration switch to choose the old or the new solver 14:54:56 in 27 and 28 that is pungi4 so cool 14:55:01 bowlofeggs: iirc the thing that puts both a module and rpms in to the same compose 14:55:07 just maybe a positive feedback: I've been to RH Summit last week and people liked Modularity in F28 and I got much more positive response now when it's real than before, so yay I guess 14:55:14 but now i am 2nd guessing myself 14:55:21 summit broke my brain 14:55:24 the new solver will be capable of properly solving hybrid repositories (modules and non-modular rpms on one pile), search dependencies in default streams and prioritize the modular content where applicable 14:55:29 contyk, pls keep me updated on that progress, including any testing/bugzilla's feel free to add me 14:55:48 linuxmodder: will keep that in mind 14:56:20 I ask partly as an infra ( passive ) and respins/freemedia SIG member 14:56:42 .oO(... 3 minutes and change left ...) 14:56:49 contyk: ursa major does... ? 14:56:50 as in Respins we use pungi for the respins source images 14:57:12 langdon: pulls modules into ursine buildroot 14:57:22 contyk: ahh right.. i was close 14:58:02 bowlofeggs: it makes it so you can dep on content in a module at build time.. so a "default module" can be the only version of something even if other things in the rpm part of the distro depend on it to build 14:58:47 cool 14:58:48 thanks 14:59:20 we haven't had a meeting like this in a while :) 14:59:27 two minutes left 14:59:29 :) 14:59:33 bare -> bear -> ursine/ursa/bruin/etc :) 14:59:40 bowlofeggs: ^^ 14:59:41 medved 14:59:49 maybe next time we even have an agenda ahead of time! *hint* 14:59:51 :D 15:00:01 contyk: ha.. i was gonna use that the other day but wasn't sure how much the accents mattered 15:00:06 nils: pfft 15:00:16 :P 15:00:39 so are we done? 15:00:42 i think so 15:00:46 good 15:00:51 thanks everybody! 15:00:54 #endmeeting