fedora-meeting
LOGS
16:02:24 <spot> #startmeeting Fedora Packaging Committee
16:02:24 <zodbot> Meeting started Wed Sep 22 16:02:24 2010 UTC.  The chair is spot. Information about MeetBot at http://wiki.debian.org/MeetBot.
16:02:24 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic.
16:02:36 <spot> #topic Roll Call
16:02:49 <tibbs|h> Note that I am having a new air conditioning system installed in my house at the moment so I will be in and out.
16:03:02 <spot> tibbs|h: yeah, also, i think i forgot to announce this meeting via email
16:03:10 <spot> so, we may not end up with quorum anyways
16:03:35 <tibbs|h> I remember seeing discussion about it, but maybe it was at the end of the previous meeting.
16:03:54 <spot> yeah, it was mentioned at the last meeting
16:04:14 <spot> rdieter_work, abadger1999, SmootherFrOgZ: ping?
16:04:27 <rdieter_work> here
16:05:11 <kalev> hey, I just now updated https://fedorahosted.org/fpc/ticket/10 with a question I'd like to discuss
16:05:22 <kalev> damn trac ate all the nice formatting I had though
16:05:40 <Rathann|work> present
16:06:59 * Rathann|work pokes spot
16:07:33 <spot> yeah, yeah. :)
16:07:45 <spot> kalev: it looks okay in email though.
16:07:52 <spot> kalev: trac is wacky like that
16:08:27 <spot> i count tibbs, rdieter, Rathann|work, and me. which is not quorum. i'll wait for a few more minutes.
16:08:59 <kalev> Rathann|work: right before you came I said that I updated ticket #10 with something to discuss
16:09:09 <Rathann|work> kalev: yes, I see the e-mail
16:09:37 <spot> racor: here?
16:09:48 <racor> yep, sorry for being late.
16:09:53 <spot> racor: no worries
16:10:13 <spot> tibbs|h: if you have to go afk for a significant time, please indicate it so we're not waiting on you for a vote.
16:10:23 <tibbs|h> I'll try to let you know.
16:10:36 <spot> #action quorum reached
16:11:00 <spot> #topic Mozilla addon guidelines - https://fedorahosted.org/fpc/ticket/10
16:11:26 <spot> kalev has added some addition text for consideration around how to package Mozilla addons
16:11:31 <spot> additional, rather
16:11:34 * abadger1999 here late
16:12:44 <spot> kalev: so, in my reading, i would say that a mixed approach seems to make sense
16:13:20 <spot> kalev: if an extension/addon works in several products, it should be packaged in a way so that all products which support it can use that same package
16:13:45 <spot> as opposed to multiple binary packages with the same payload, targeted for different mozilla projects
16:14:05 <tibbs|h> I don't think the proposal was for the separate packages to have the same payload.
16:14:13 <tibbs|h> In fact, they'd just have some symlinks.
16:14:30 <spot> hm, okay
16:14:44 <tibbs|h> One thing that confuses me is whether the "single binary package" thing would require the use of triggers.
16:14:49 <abadger1999> If it's just symlinks but the actual code that's doing the work is the same, I'd think that one package would be better.
16:15:07 <tibbs|h> Because I think we'd be better off avoiding triggers if at all possible.
16:15:11 * spot nods
16:15:24 <abadger1999> MM... I agree with tibs's point
16:15:30 <spot> kalev: how often does the UUID for the mozilla projects change?
16:15:34 <kalev> not sure why we'd need triggers here
16:15:51 <tibbs|h> Install seamonkey, have existing extensions work with it.
16:15:53 <kalev> spot: there's one UUID assigned for each product which never changes
16:16:00 <abadger1999> kalev: Is there a %post script that needs to be run when an extension is installed?
16:16:12 <tibbs|h> How do you do that without triggering on browser installation?
16:16:16 <kalev> tibbs|h: we could just own all the directories leading up to that
16:16:26 <spot> tibbs|h: well, if the UUIDs are constant, we could just splat out all the symlinks
16:16:33 <kalev> abadger1999: no, no need to run a post script, just have to drop files (or symlinks) in the right place
16:16:41 <tibbs|h> So you just opportunistically install everything for every supported browser.
16:16:47 <abadger1999> Okay.  that sounds reasonable
16:16:52 <tibbs|h> If that works, great.
16:16:54 <spot> tibbs|h: opportunistically create symlinks, yeah
16:17:00 <Rathann|work> what about dependencies?
16:17:07 <spot> Rathann|work: my next question. :)
16:17:29 <spot> we could do some sort of a virtual provides thing here
16:17:46 <Rathann|work> I mean, the plugins should have something like Requires: npapi >= version and the browsers should have Provides: npapi = version
16:18:07 <kalev> Rathann|work: npapi is a completely different subject
16:18:20 <Rathann|work> oh
16:18:45 <spot> kalev: how should we ensure that a extension package is actually useful, e.g. what would it Require ?
16:19:01 <tibbs|h> I do think we'd want to hide the "every supported browser" thing behind macros.
16:19:24 <kalev> spot: if we go down the one package route, I think it shouldn't require anything
16:19:47 <spot> well, we could do that.
16:19:47 <kalev> if we choose to go for multiple packages, then each of the package should require the browser it's extending, I think
16:20:27 <spot> i suppose the argument of "no one will install mozilla-foo" and expect it to work without a mozilla family program holds water
16:20:57 <kalev> there was a recent package review where the submitter advocated for separate packages
16:21:10 <spot> kalev: what was the logic there?
16:21:18 <abadger1999> kalev: Was the codebase different or would it have been symlinks only?
16:21:18 <kalev> I think the reason was that he doesn't want to have the extension working for browser foo, but wants it in browser bar
16:21:33 <kalev> abadger1999: it would have been symlinks only
16:22:14 <spot> well, if we had a mozilla-extension-common and %{mozilla-client}-extension layout, it would solve the requires issue cleanly
16:22:16 * SmootherFrOgZ is around. Has to finish up with a $dayjob meeting
16:22:33 <spot> it would also permit packagers who knew that the extension didn't work with a specific %{mozilla-client} to omit it
16:23:05 <kalev> omitting is easy in any case: just don't install the symlinks
16:23:28 <kalev> allright, I looked up the package review
16:23:32 <spot> since the bits would be in the -common package, if they decided later to also install support for another client, they'd just pull down that subpackage with the new symlinks
16:23:58 <spot> there might be some confusion though about why it works in Firefox but not in Thunderbird/SeaMonkey/Whatever
16:23:59 <kalev> https://bugzilla.redhat.com/show_bug.cgi?id=583531#c17
16:24:19 <kalev> I tried to get the submitter to work on an official policy but he wasn't very interested in that :)
16:24:40 <kalev> so anyway, quoting: "I think forcing all mozilla applications to use it is just insane. For
16:24:43 <kalev> example, a user might need it for Thunderbird, but not for Firefox.
16:24:46 <kalev> "
16:25:28 <spot> i think i'm leaning towards the "-common with client specific subpackages" combined with helper macros to make the packaging simpler
16:25:53 <kalev> I should note that other existing extensions which we have in Fedora (addblockplus and noscript) install one binary package which makes it work in all supported browsers
16:26:15 <spot> kalev: are they just creating all the symlinks ?
16:26:20 <kalev> yeah
16:26:21 <Rathann|work> I kind of like the single package approach
16:26:25 <racor> kalev: Do all non-mozilla products ignore %{libdir}/mozilla/extensions/* or do they have it in their default extension search path?
16:26:28 <Rathann|work> for simplicity
16:26:43 <racor> Otherwise installing a mozilla extension would automatically activate the extension for all non-mozilla products, too.
16:27:15 <kalev> firefox uses extensions which are installed under %{libdir}/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/ directory
16:27:20 <Rathann|work> racor: why would they even look for extensions there?
16:27:21 * abadger1999 leaning towards single package approach.
16:27:41 <kalev> thunderbird uses extensions under %{libdir}/mozilla/extensions/{3550f703-e582-4d05-9a08-453d09bdfdc6}/
16:27:55 <racor> rathann: No idea, history, convention, ...
16:28:13 <spot> okay, so it sounds like people like the single package approach
16:28:19 <Rathann|work> if all the subpackages do is install some symlinks then I see little harm in having them in one package and just ensuring that at least one package that supports them is installed
16:28:25 <kalev> I don't really have a preference to use single or multiple packages; both have cons and pros
16:28:55 <kalev> Rathann|work: how do we ensure that at least one package is installed? We don't have Requires: thunderbird OR firefox OR seamonkey ...
16:28:56 <Rathann|work> and with virtual provides/requires we don't blow up the dependency tree needlesly
16:29:07 <kalev> ah, with virtual provides, yes.
16:29:14 <spot> kalev: can you work on a draft that does a single package approach, and include a section about when it is permissable for a packager to choose to omit a symlink for a client that is known not to work
16:29:32 <spot> bonus points if you come up with clever macros for the various UUIDs
16:29:39 <kalev> spot: I can, sure
16:29:49 <kalev> we'll need one exception I think
16:29:56 <spot> kalev: which is?
16:30:09 <kalev> if a package is known to work in only ONE mozilla product, it doesn't look good to have it in a common mozilla- namespace
16:30:19 <kalev> for example, thunderbird-lightning
16:30:37 <spot> kalev: what if it starts working in more later?
16:31:09 * spot wonders if that is likely enough that we care or not
16:31:23 <kalev> not sure what to do in that case.
16:31:35 <spot> i suppose we could go through a normal rename in that case.
16:31:54 <spot> kalev: okay, that exception seems to make sense to me, document it in the draft?
16:31:59 <kalev> will do
16:32:03 <spot> also, please make sure you list all the known clients and UUIDs
16:32:18 <abadger1999> I'd do mozilla-* and have a virtual provide for thunderbird-* at package maintainers discretion but... pkg name and virtual provide could be reversed in that thought.
16:32:44 <spot> abadger1999: i think reversing it might be less controversial
16:33:07 <abadger1999> <nod>
16:33:12 <kalev> we currently have two packages under thunderbird- namespace:
16:33:13 <kalev> thunderbird-enigmail-0:1.1.2-1.fc13.x86_64
16:33:13 <kalev> thunderbird-lightning-0:1.0-0.28.b2pre.fc13.x86_64
16:33:19 <kalev> (one of them might be from rpmfusion, not sure)
16:33:30 <spot> mmkay.
16:33:43 <spot> so, we'll revisit this issue when kalev works up that draft for us
16:33:48 <spot> kalev: thank you for your help here. :)
16:33:56 <mcepl> kalev: the former (the later is confusingly in component sunbird)
16:34:08 <kalev> no problem, glad to help
16:34:24 <spot> #topic $RPM_SOURCE_DIR revisit https://fedorahosted.org/fpc/ticket/12
16:34:59 <spot> as i'm sure you folks saw, there was some angry feedback on this item (which was approved in a previous meeting, but not yet written up)
16:35:01 <tibbs|h> Pushback?
16:35:16 <spot> I still believe the draft, as written, is correct and has merit.
16:35:18 <tibbs|h> It sounds like "I want to do what I want".
16:35:33 <spot> but as I said, I didn't want to be accused of "decision making by fiat"
16:35:35 <tibbs|h> Did we get an example of something you couldn't do without referencing sourcedir?
16:35:51 <spot> tibbs|h: no, merely that it was valuable for "readability"
16:35:59 <tibbs|h> To some degree I understand that.
16:36:23 <spot> tibbs|h: my rebuttal is that comments would resolve the issue without adding the risk of a broken package
16:36:35 <tibbs|h> I really wish we could have SOURCE-ABC macros where ABC was something descriptive instead of a number.
16:37:12 <spot> tibbs|h: well, you could do something like %global filefoo %{SOURCE2}
16:37:18 <spot> i think that would work
16:38:21 <spot> i have no problem with that, as it is still using the %{SOURCE#} macro
16:38:25 <tibbs|h> Is there an example of a package that uses the soon-to-be-banned notation that we could look at?
16:39:04 <tibbs|h> I'm really curious as to how readable it really is.
16:39:06 * spot looks, one sec
16:39:42 <tibbs|h> Because it seems to me that you still have to list out all of your SourceN: lines, but then can't find where they're actually used.
16:40:09 <tibbs|h> Now they're sawing holes in my ceiling for new ductwork.
16:41:34 <racor> tibbs: You gave an example in comment #1 in the ticket yourself: we'd loose wildcards/pattern matching.
16:41:54 <tibbs|h> That was purely theoretical.
16:42:03 <tibbs|h> And nobody demonstrated that you couldn't do it some other way.
16:42:20 <spot> racor: i couldn't come up with a practical example of where that wouldn't work by simply looping through the %{SOURCE#} items
16:42:22 <racor> not so: I have  local package which has several dozens of source files.
16:42:54 <tibbs|h> I do as well.
16:43:15 <tibbs|h> But that doesn't really argue against this rule.
16:43:16 * spot can't find an approved package that does this
16:43:21 <racor> It looks ugly with SOURCE#n, but ... it's much safer than it used to be with $RPM_SOURCE_DIR
16:44:46 <spot> So, i suppose the big question is: Does anyone feel like we should revise or revote on this draft?
16:45:33 <racor> Real world example: ftp://ftp.rtems.org/pub/rtems/linux/infrastructure/fedora/14/SRPMS/i586-pc-freebsd8.1-8.1-0.20100727.0.fc14.src.rpm
16:46:08 <racor> spot: no. I am in favor of enforcing SOURCE#n.
16:46:12 <Rathann|work> I think it's fine as it is
16:46:16 * spot pulls down 51M of SRPM just to see
16:46:49 <tibbs|h> I don't see the point in revising the guideline, but since its controversial perhaps we should run it by FESCo.
16:47:53 <spot> okay, seems sane.
16:48:14 <spot> #action $RPM_SOURCE_DIR requested to be sent to FESCo for ratification
16:48:14 <tibbs|h> I would still love for someone to come up with a way to iterate over SOURCEN values.
16:48:29 <spot> tibbs|h: its probably possible with some macro fun
16:48:53 <tibbs|h> I've never managed to figure it out, even after dropping down to lua.
16:48:55 <spot> probably very slow without rpm changes though
16:49:13 <spot> as i dont think you can know which are defined without brute force checking
16:49:23 <tibbs|h> I don't think speed is all that important when you just want to do the same thing to twenty SOURCEN files.
16:50:24 <spot> okay, lets move on
16:50:32 <spot> #topic New Java Guidelines - https://fedorahosted.org/fpc/ticket/13
16:50:47 * spot has not had time to diff this against the current guidelines
16:53:08 <rdieter_work> according to ml threads, it's mostly about -javadoc stuff.
16:53:44 <rdieter_work> and jni too
16:54:33 <spot> okay
16:54:38 <spot> so it all looks sensible to me
16:54:53 <abadger1999> http://toshio.fedorapeople.org/java.orig   http://toshio.fedorapeople.org/java.new
16:55:57 <rdieter_work> feedback on ml was good
16:56:51 <spot> okay, so i see no obvious "this is a bad idea" items in there
16:57:05 <spot> we can always revisit it if people find flaws in it
16:57:06 <Rathann|work> I notice that maven-based template doesn't have removal of binaries in %prep
16:57:18 <Rathann|work> like the ant-based one has
16:57:39 <abadger1999> misleading rewording:: ""Packages may declare release tags as defined by http://en.wikipedia.org/wiki/Special:Search?go=Go&search=Packaging/JPackagePolicy""
16:57:46 <spot> Rathann|work: i wonder if that is an omission.
16:57:55 <spot> accidental omission, rather
16:58:02 <tibbs|h> Do we really want to deal with jpackage stuff again?
16:58:07 <Rathann|work> spot: probably
16:58:27 <spot> The current text says "For now, refer to the Packaging/JPackagePolicy for release tags. That document should eventually be folded into this one. "
16:58:47 <spot> and JPackagePolicy was rewritten some time ago to drop the "jpp" extension
16:58:47 <Rathann|work> "Older JPackage packages contained %post scriptlets creating %ghost symlinks. These MUST not appear in Fedora Java packages and are actively being removed at JPackage."
16:58:54 <Rathann|work> what's the rationale for that? ^
16:58:58 <abadger1999> Right -- and that document says "no repotag"
16:59:10 <abadger1999> that's why I say the rewording is misleading.
16:59:27 <spot> abadger1999: gotcha
16:59:31 <spot> so, maybe something like:
17:00:05 <spot> "Java packages should follow the normal Fedora release guidelines. If a package is coming into Fedora from JPackage, please refer to Packaging/JPackagePolicy. "
17:00:33 <abadger1999> Yep
17:00:34 <spot> s/should/must
17:01:20 <spot> okay, so with that change and the addition of the binary removal lines in the maven template...
17:01:24 <spot> are there any other concerns?
17:01:39 <Rathann|work> spot: what I said 3 minutes ago
17:02:04 <spot> Rathann|work: dunno, but it isn't new
17:02:13 <spot> Rathann|work: it exists in the current Java guidelines
17:02:17 <Rathann|work> oh
17:02:36 <Rathann|work> well then no other concerns about the proposed changes
17:02:48 <spot> okay, gimme a moment to make these minor changes
17:03:00 <abadger1999> The filenames section is unclear... I can understand it by comparing to the previous version of the guideline
17:03:24 <abadger1999> But it's not clear what is being referred to when they say things like: If the package provides a '''single''' JAR and the filename provided by the build is <code>%{name}.jar</code> then this name '''MUST''' be used.
17:03:32 <abadger1999> %{name} MUST be used where?
17:04:19 <spot> abadger1999: i think the end of that line is clarified by saying "this filename '''MUST''' be used."
17:05:06 <abadger1999> Yeah -- kinda kinda redundant though?
17:05:24 <tibbs|h> Are all of those BuildRequires: lines in the maven template actually required?  Or is that just an example?
17:05:24 <abadger1999> The build spits out foo.jar.... why I owuld rename that to bar.jar?
17:05:32 <spot> yeah, but i suppose if people were renaming jar files, it might need to be stated.
17:05:36 <abadger1999> *why would I rename
17:06:00 <abadger1999> <nod>
17:06:16 <spot> i'm inclined to make that minor correction and leave it, even if it seems obvious
17:06:33 <abadger1999> So maybe add a sentence explaining what is this section for? (whether and how to rename jar files).
17:07:41 <spot> abadger1999: such as?
17:08:10 <abadger1999> spot: I can come up with something --- trying to review the rest of the document for other problems.
17:09:01 <spot> abadger1999: i just committed the minor changes we discussed already
17:10:35 * spot cleans up the Release Guidelines link
17:11:10 <spot> abadger1999: do you want to revisit this in the next meeting?
17:11:24 <spot> abadger1999: i'm happy to table this until then if you would like more time to consider it
17:11:26 <abadger1999> Is there a rush on this?
17:11:29 <spot> nope.
17:11:35 <abadger1999> If not, yeah, let's table 'til next meeting.
17:11:38 <spot> okay
17:11:48 <spot> #action minor cleanups made, draft tabled until next meeting
17:12:06 <spot> #topic Open Seat
17:12:23 <spot> I am going to send out the email with the candidates under consideration this afternoon
17:12:29 <abadger1999> :-)
17:12:31 <spot> please be sure to read it over and give feedback
17:13:01 <spot> #topic Open Floor
17:13:20 <spot> we're 12 minutes over the hour already, but the floor is open for any other topics
17:13:34 <abadger1999> I started work on the systemd guidelines.
17:13:46 <abadger1999> Not a rush since it's not the default for F14.
17:14:03 <abadger1999> notting said he'd look at them after the f14 busy-ness subsides.
17:14:14 <abadger1999> https://fedoraproject.org/wiki/Systemd_Packaging_Draft
17:14:25 <tibbs|h> Need to go afk now.
17:14:27 <spot> abadger1999: okay, please make sure you open a trac ticket so it isn't lost
17:14:32 <abadger1999> If anyone else knows about systemd, they're welcome to work on it -- I don't know anymore than is on that page.
17:15:05 * abadger1999 opens ticket now
17:16:19 <spot> okay, i'm going to close out the meeting in one minute, if there is no additional items raised.
17:17:31 <spot> Okay, thanks everyone.
17:17:33 <spot> #endmeeting