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