15:01:06 <pknirsch> #startmeeting Fedora Base Design Working Group (2013-12-06) 15:01:06 <zodbot> Meeting started Fri Dec 6 15:01:06 2013 UTC. The chair is pknirsch. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:01:06 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic. 15:01:13 <pknirsch> #meetingname Fedora Base Design Working Group 15:01:13 <zodbot> The meeting name has been set to 'fedora_base_design_working_group' 15:01:13 <jwb> hello 15:01:22 <pknirsch> Good morning and good afternoon everyone! 15:01:31 <pknirsch> hey jwb :) 15:01:45 <pknirsch> #chair jwb 15:01:45 <zodbot> Current chairs: jwb pknirsch 15:01:50 <dgilmore> good early morning pknirsch 15:01:57 <pknirsch> #chair dgilmore 15:01:57 <zodbot> Current chairs: dgilmore jwb pknirsch 15:02:05 <pknirsch> good morning mr birthday ! 15:02:07 <pknirsch> :) 15:02:19 <jreznik> hey guys 15:02:25 <pknirsch> #chair jreznik 15:02:25 <zodbot> Current chairs: dgilmore jreznik jwb pknirsch 15:02:29 <pknirsch> hey jreznik 15:02:32 * notting is here 15:02:36 <pknirsch> #chair notting 15:02:36 <zodbot> Current chairs: dgilmore jreznik jwb notting pknirsch 15:02:40 <pknirsch> and welcome notting 15:03:05 * tflink is lurking 15:03:13 <pknirsch> hey tflink :) 15:03:45 <pknirsch> oki, lets get going as i do have a hard stop at the end of the hour today as i need to leave for another physical meeting then 15:04:16 <pknirsch> In order to not overload each meeting with too many topics i've reduced the agenda for today to just 2 main topics 15:04:52 <haraldh> <- 15:04:56 <pknirsch> it's something i noticed 2 meetings ago that we were drifting between 5 different things at the same time and it was hard for everyone to get back 15:05:04 * jreznik has a free day today, has to take all his remaining PTO but couldn't resist :) 15:05:04 <pknirsch> afternoon haraldh 15:05:21 <jreznik> pknirsch: not a bad idea, +1 15:05:35 <pknirsch> jreznik: hehe, ye, almost all my team members from BRQ are on PTO for the rest of the month starting next week ;) 15:06:00 <jreznik> pknirsch: stupid law :( 15:06:12 <pknirsch> #topic More on package dep/builddep analysis + potential action items/tasks (see discussion last week) 15:06:12 <pknirsch> yea 15:06:23 * Viking-Ice lurks 15:06:38 <haraldh> Some small use cases and packages involved: https://fedoraproject.org/wiki/Base/Packages 15:07:10 <pknirsch> So after our discussions 2 weeks ago about how base should look like and what it should contain last week in the smaller meeting we had we've discussed quite a bit more about how the various package sets do look like 15:07:29 <pknirsch> and thanks notting for sending out your pungi command you used to identify the buildrequires 15:08:08 <pknirsch> haraldh: they look very similar to my lists as well that i had on https://fedoraproject.org/wiki/Base/ so thats good 15:09:04 <pknirsch> nonetheless, one thing i noticed especially with the buildrequires and what notting already pointed out to was the quite astonishing chain of gcc for example to require gtk2-devel among other things 15:09:33 <notting> pknirsch: would have to recheck the log, but i believe that's b/c of gcj 15:09:44 <pknirsch> so what i'd like to talk about and discuss whether we should initiate a cleanup at least for the packages in and around base packages 15:10:16 <pknirsch> basically doing janitorial work, checking each package and chain whether it's "sane" and working with maintainers and the community in cleaning that up 15:10:30 <Viking-Ice> most definitely 15:10:45 <jwb> the docs build issue is probably the biggest win to start with 15:10:52 * pknirsch nods 15:11:04 <notting> pknirsch: i absolutely 1) believe we should 2) believe it might be a neverending slog 15:11:06 <jwb> but that requires either "don't build docs" or "build them in a separate SRPM" or "prebuilt" 15:11:10 <Viking-Ice> then it becomes a question if man pages/docs should not be spitted into sub package 15:11:14 <jwb> notting, yeah 15:11:18 <jreznik> pknirsch: that's something we needed for a years, so +1 and I'm definitely going to help 15:11:24 <pknirsch> notting: i agree 15:11:28 <jwb> Viking-Ice, sub-package doesnt' help build depbs 15:11:31 <jwb> er, deps 15:11:37 <pknirsch> ok, so let me phrase a proposal first we can vote on: 15:12:24 <pknirsch> #proposal Initiate build requires cleanup for base related packages in Fedora working with maintainers and the community to make it more "sane" 15:13:10 <haraldh> that's a very general proposal, which of course gets my +1 15:13:56 <pknirsch> We could start with small steps, e.g. taking just the https://fedoraproject.org/wiki/Base/Packages/m1 first 15:14:02 <pknirsch> and then work our way forward 15:14:02 <jreznik> +1, maybe define sane in more words (sane could be for some people exact opposite) 15:14:06 <notting> i'm +1 to that. we can look at Requires too, but i think we're in better shape there 15:14:12 <pknirsch> mhm 15:14:47 <notting> jreznik: "When we refer to 'sane', note that a self-hosting tree to build the minimal package set is 2000 source packages. We'd like to reduce that." 15:14:50 <notting> s/2000/over 2000/ 15:14:55 <pknirsch> Aye 15:14:58 <notting> (or whatever the number is) 15:15:03 <pknirsch> maybe we can define that as one of the goals 15:15:08 <pknirsch> of the whole effort 15:15:33 <Viking-Ice> 2000 <sigh> 15:15:57 <pknirsch> jreznik: would you have any suggestions on how to define "sane"? I agree it's a bit too vague 15:16:18 <jreznik> maybe time to switch to gentoo style :D 15:16:27 <pknirsch> hehe 15:16:29 <jwb> go away 15:17:00 <jreznik> pknirsch: see notting's comment - reduce is a good word, use part of that sentence 15:17:02 <haraldh> Can we also phrase, why this is important to us? 15:17:12 <pknirsch> jreznik: true, let me rephrase then, sec 15:18:09 <pknirsch> #proposal Initiate build requires cleanup for base related packages in Fedora working with maintainers and the community. The goal is to reduce the number of self-hosting packages required for Base from currently 2000. 15:18:31 <pknirsch> #proposal Initiate build requires cleanup for base related packages in Fedora working with maintainers and the community. The goal is to reduce the number of self-hosting packages required for Base from currently over 2000. 15:18:51 <pknirsch> that would include the "why it's important" and remove the sane and replace it with the goal 15:20:01 <dgilmore> i wonder if we can't remove perl from that list 15:20:42 <pknirsch> maybe, but thats for us to figure out and potentially find a way to do so 15:20:49 <dgilmore> i.e. should we set out to to remove chunks of things 15:20:50 <notting> dgilmore: auto* 15:20:52 <jreznik> proposal looks good now - maybe from over 2000 packages 15:21:06 <pknirsch> #proposal Initiate build requires cleanup for base related packages in Fedora working with maintainers and the community. The goal is to reduce the number of self-hosting packages required for Base from currently over 2000 packages. 15:21:13 <dgilmore> notting: uggh right 15:21:37 <dgilmore> time to rewrite them in python or bash 15:21:41 <pknirsch> heheh 15:21:47 <jwb> pknirsch, looks good to me 15:21:55 <notting> pknirsch: sounds good 15:22:03 <dgilmore> sounds fine to me 15:22:19 <haraldh> "Initiate build requires cleanup for base related packages in Fedora working with maintainers and the community. The goal is to reduce the number of self-hosting packages required for Base from currently over 2000 packages, to minimize QA." 15:23:03 <dgilmore> haraldh: but thats not why i see it as important 15:23:13 <pknirsch> ye, QA is only one aspect of it 15:23:14 <pknirsch> size 15:23:19 <pknirsch> complexity 15:23:28 <pknirsch> unnecessary package interdependencies 15:23:29 <pknirsch> etc 15:23:36 <haraldh> to minimize complexity and QA work. 15:23:48 <jreznik> sounds too much it's due QA... with complexity I'd be ok 15:23:50 <jwb> it also doesn't matter. the actionable part isn't changing in any of these iterations 15:23:56 <haraldh> size is not a factor in the build process, I guess 15:24:01 * pknirsch nods. 15:24:25 <pknirsch> I'm pretty sure everyone would see their own reasons as to why this is a good idea 15:24:49 <jreznik> I'd stay with original proposal from pknirsch (without qa/complexity part) 15:25:03 <dgilmore> jreznik: indeed 15:25:15 <pknirsch> ok with you haraldh ? 15:25:22 <haraldh> well, ok 15:25:54 <pknirsch> ok, thats 6+ votes 15:25:58 <haraldh> just wanted to communicate to the outer side, why we are doing it 15:26:43 <pknirsch> I will write an email about this to fedora-devel that we're planing to start this, feel free to reply there as to why you see that this is going to be important 15:26:53 <pknirsch> that way it's much more visible imho 15:26:59 <haraldh> "out side world" 15:27:03 <haraldh> "outside world" 15:27:12 <pknirsch> :) 15:27:21 <pknirsch> #agreed 6:0:0 15:27:58 <pknirsch> haraldh: Write a quick blog/google+ message about it that we're aiming to do that :) 15:28:06 <pknirsch> with your thoughts on it :) 15:28:22 <pknirsch> Now, regarding action items. The first one i'd like to do is send out that email to fedora-devel 15:28:24 <dwalsh> pknirsch, Sounds good to me also. 15:28:33 <pknirsch> dwalsh: excellent thanks! 15:28:44 * dwalsh a little late to the party. Damn meetings. 15:28:52 <haraldh> oh, reminds me of something ... half of the installation size of a minimal installation is translation and docs 15:28:59 <pknirsch> In order to get everyone involved who wants to help and get other peoples thoughts on it, too 15:29:33 <haraldh> something I would like to tackle also at some point of time 15:29:53 <pknirsch> sure, thats certainly correlated to all this as well 15:29:57 <dwalsh> haraldh, Yes I think we need to make this a big priority with rpm/dnf/yum to fix this problem. Need a mechanism to install minimal languages and add lanquages after the fact. 15:30:11 <haraldh> dwalsh, exactly 15:31:01 <jreznik> yep 15:31:12 <pknirsch> does one of you want to take this to the dnf/yum folks and talk with them in order to initiate this? 15:31:26 <pknirsch> as it's nice if we talk about it here 15:31:27 <dwalsh> The question is how to we get buy in from the rpm maintainers about the importance of this. 15:31:34 <haraldh> hmm, aren't you, pknirsch best suited for this? :) 15:31:36 <pknirsch> but if no one does something about it, well ;) 15:31:50 <jwb> "minimal languages" is the difficult part 15:31:50 <pknirsch> haraldh: rpm/yum isn't my team anymore ;) 15:31:51 <Viking-Ice> should we be able to get the core down to tizen/mer size? 15:32:04 <haraldh> pknirsch, but you know most of them well :) 15:32:20 <pknirsch> haraldh: alright, i'll talke with Jan, Ales and James about it :) 15:32:24 <dgilmore> as long as the one or two languages i care about is installed :) 15:32:29 <haraldh> jwb, well, minimal is "none" :) 15:32:50 <pknirsch> dgilmore: heheh 15:32:53 <dgilmore> its a complex problem to get right 15:32:57 <pknirsch> aye 15:33:09 <jreznik> pknirsch: I can talk to them personally 15:33:12 <pknirsch> I remember Panu talking about it on the last devconf during our rpm workshop 15:33:16 <jreznik> at least Jan/Ales 15:33:17 <pknirsch> jreznik: that would be even better 15:33:41 <pknirsch> #action Jreznik talking to Jan and Ales about minimal lanugage support for dnf/yum 15:34:00 <pknirsch> #action pknirsch to send out proposal for janitor work for build requires to fedora-devel 15:34:42 <pknirsch> after that we can then see who's interested and might want to join helping us with this effort and then split up the packages among the interested parties 15:34:47 <pknirsch> i'd certainly volunteer as well 15:37:34 <haraldh> lets take the gcj example 15:37:55 <haraldh> what if we just manually remove the gcj build deps from the list 15:38:14 <haraldh> and do that for the rest, which is only needed to build the docs 15:39:31 <pknirsch> the toolchain people have already expressed great interest to nuke gcj from orbit in Fedora :) 15:39:41 <haraldh> just as an example 15:39:50 <jreznik> it wasn't nuked yet? I thought it is 15:40:02 <jwb> i think it's still used by ppc 15:40:07 <notting> haraldh: not sure what you mean by 'manually rmeove them from the list' ? you mean, remove them from what we consider the base? 15:40:16 <haraldh> notting, yes 15:40:34 <jwb> haraldh, that kind of disagrees with self-hosting then 15:40:52 <dgilmore> haraldh: if its needed to build and we want the base self hosting we can't do that 15:41:04 <dgilmore> and i think we do want base self hosting 15:41:19 <haraldh> rpm define %{base_bootstrap} :) 15:42:07 <pknirsch> a bit like perl is doing for bootstrapping? 15:42:18 <haraldh> To build the buildtools we don't need the documentation for that 15:43:02 <dgilmore> I really think it needs tobe self hosting without intervention 15:43:36 <dgilmore> if you build in koji any package from base only base packages are in the buildroot 15:43:57 <haraldh> ok 15:44:09 <notting> could always have a 'gcj' package that includes the gcc source and builds outside of the base. obvs there's duplication there 15:44:13 <haraldh> was just mind storming 15:44:34 <dgilmore> it would be good to have something to monitor the buildroot, or the dep chains 15:44:44 <dgilmore> and alert us when deps change 15:44:49 <haraldh> get the opensuse build system :) 15:44:54 <Viking-Ice> ;) 15:45:02 <jwb> notting, repeat for all -docs 15:45:24 <Viking-Ice> btw why do we want base to be self hosting? 15:45:44 <haraldh> I was asked the question also by Kay 15:45:46 <dgilmore> Viking-Ice: so base controls its own fate 15:46:17 <dgilmore> as the core of what we ship i think its important that it be self contained 15:46:45 <notting> jwb: docs can be prebuilt. libgcj is a little harder 15:46:45 <haraldh> controlled output 15:46:59 <pknirsch> reproducability as well 15:47:08 <haraldh> pknirsch, exactly 15:47:17 <pknirsch> and potential bootstrapping of GASP new archs :) 15:47:22 <jwb> notting, "can be", yes. the issues come from "who/where/how" etc 15:47:38 <pknirsch> jwb: the good ole "who does it? ;) 15:47:41 <haraldh> so, we would have to build base n times, until nothing changes :) 15:47:57 <pknirsch> eh 15:48:15 <jwb> notting, anyway, prebuilt is definitely a better solution where available 15:48:15 <Viking-Ice> how many components get added to achieve just that over smaller core ? 15:48:36 <jwb> lots. but don't conflate Base with minimal install 15:48:38 <pknirsch> with a proper build order that won't be necessary. I've posted Seth's revamped script a while ago to buildsys i think that orders srpms nearly 100% correctly 15:48:58 <jwb> pknirsch, including circular deps? 15:49:18 <haraldh> jwb, yeah, that's why we have to build base "n" times :) 15:49:23 <jwb> right 15:49:34 <pknirsch> jwb: yep, it's a topology sorter that breaks loops at potentially good spots 15:49:40 <pknirsch> just like rpm does with dep loops 15:50:00 <pknirsch> haraldh: with the build order it's about 2 times you need to build everything only 15:50:03 <pknirsch> which is quite nice ;) 15:50:10 <jreznik> nice 15:50:35 <pknirsch> and it's grouping things as well, just need to fiddle with my build scripts to allow parallel builds for groups 15:50:53 <pknirsch> (there were over 400 groups for Fedora last time i checked ;))) 15:51:37 <pknirsch> anyway, that brings me to the topic of tools and scripts and queries. i'll see if i can document the stuff i have a bit better and post it again 15:52:08 <pknirsch> and maybe figure out a way to hack up the build order script to actually produce some useful output for cleaning up the buildorders 15:52:38 <pknirsch> as manually tracing stuff is, well, awful :P 15:54:14 <pknirsch> ok, just 5 more minutes left for me until i need to leave, so lets wrap this subject up for this week, we got quite a bit we can work already on now. 15:54:37 <pknirsch> and the other topic would be too long for the limited time, except if people would just want to continue without me 15:54:46 <notting> i have an 11AM as well 15:54:47 <pknirsch> #topic Open Floor 15:54:58 <dgilmore> i need sleep 15:55:01 <pknirsch> lets do a quick open floor then, anything else for this week then> 15:55:03 <pknirsch> hehehe 15:55:17 <pknirsch> good night dgilmore ! and thanks for making it soo late/early 15:55:31 <dgilmore> almost 2am :) 15:55:33 * haraldh needs food. 15:55:37 <pknirsch> nom! 15:55:50 <pknirsch> ok, lets call it a wrap for today then. 15:55:52 <haraldh> no lunch :-/ 15:56:04 <pknirsch> Xmas food yesterday was good here, haraldh :) 15:56:09 <pknirsch> End Of Meeting 15:56:13 <pknirsch> #endmeeting