fedora_base_design_working_group
LOGS
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