15:00:42 <spot> #startmeeting Fedora Packaging Committee
15:00:42 <zodbot> Meeting started Wed Aug 31 15:00:42 2011 UTC.  The chair is spot. Information about MeetBot at http://wiki.debian.org/MeetBot.
15:00:42 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic.
15:00:45 <spot> #meetingname fpc
15:00:45 <zodbot> The meeting name has been set to 'fpc'
15:00:47 <tibbs|h> Howdy.
15:00:49 <spot> #topic Roll Call
15:01:10 * limburgher here
15:01:13 <limburgher> -sh
15:01:20 <limburgher> here-ish, I mean.
15:02:17 <spot> abadger1999, rdieter, SmootherFrOgZ, racor: ping
15:02:20 * abadger1999 here
15:02:45 * racor hete
15:03:56 <spot> okay, well, thats just quorum
15:04:47 <spot> Last week we were talking about coming up with a draft to define service terminology
15:04:58 <tibbs|h> Yes.  I have some work on that.
15:05:03 <tibbs|h> Let me get it into the wiki.
15:05:10 <spot> #topic Service Terminology
15:05:46 <tibbs|h> https://fedoraproject.org/wiki/PackagingDrafts:SystemdClarification
15:05:47 <geppetto> here
15:06:14 <tibbs|h> My editing sucks, but there are some other terms used by the guideline which aren't terribly well explained.
15:06:32 <tibbs|h> There's also the "activation" section with its own definitions.
15:07:00 <tibbs|h> I tried to clean up some references to just "service" where the meaning wasn't clear from context.
15:07:17 <tibbs|h> Got about half-way done; I'll do the rest of this makes sense.
15:08:44 <abadger1999> What's there makes sense to me.
15:09:00 <tibbs|h> Terrible wiki abilities, sorry.
15:09:01 <spot> D-Bus activated service: A service which is waiting for an activation message from the D-Bus system bus before activating.
15:10:05 <tibbs|h> I'm trusting you at this point.
15:10:22 <spot> tibbs|h: it matches the D-Bus section that lennart wrote
15:10:26 <tibbs|h> The d-bus thing is not in my skill set.
15:11:11 <rdieter> here now, sorry
15:12:06 <spot> I'm not sure what "System service" or "Activated service" are supposed to mean
15:12:12 <limburgher> Yeah, that's a pretty good start.
15:12:22 <spot> but i like the rest of it
15:12:39 <tibbs|h> spot: Well, I found those terms in the existing document.
15:12:52 <tibbs|h> Not entirely sure what "system service" is supposed to mean.
15:13:07 <tibbs|h> Activated service refers to dbus, socket or hardware activation.
15:13:10 <spot> i think s/system service/service is probably correct
15:13:11 * rdieter takes system service to mean something started on boot unconditionally
15:13:35 <tibbs|h> "The recommended parameters for WantedBy= are either multi-user.target (for most system services) or graphical.target (for services related to the UI)."
15:13:58 <geppetto> I guess "system service" == "service" ?
15:14:09 <spot> ah, i see
15:14:31 <spot> he's trying differentiate "stuff you always need running" from "stuff that a graphical desktop needs"
15:14:56 <tibbs|h> Maybe that bit is worth a rewrite.
15:15:40 <geppetto> Activated service is defined under "activation"
15:15:43 <spot> So, perhaps replace "for most system services" to "services needed for all multi-user use cases, server and desktop"
15:16:11 <tibbs|h> geppetto: Yes, the activation section has its own definitions, which we can either leave or move up.  Not sure.
15:16:35 <tibbs|h> spot: List graphical first and say "multi-user.target for everything else".
15:16:45 <spot> tibbs|h: even better.
15:16:58 <tibbs|h> Not entirely sure if there are services that shouldn't be WantedBy anything.
15:17:23 <spot> we can document that corner case if/when it is needed
15:18:19 <spot> I say, convert this "These are services that are not (or not necessarily) started explicitly by the user but start when certain other events happen or certain state becomes true." into a definition at the top
15:18:27 <spot> and drop it from the activation section
15:18:38 <tibbs|h> OK.
15:19:44 <tibbs|h> Anything else?
15:19:56 <spot> Not from me, i think with those changes, i'm +1 here.
15:20:05 <tibbs|h> I'll just keep cleaning it up for next week.
15:20:11 <spot> tibbs|h: okay, sounds good
15:20:37 <spot> #topic rtmidi bundled library exception - https://fedorahosted.org/fpc/ticket/104
15:20:55 <spot> I haven't had time to look at this, but i suspect strongly it is possible to make a library out of this
15:21:49 <spot> especially since upstream provides "detailed instructions for statically linking their code"
15:22:07 <tibbs|h> That upstream URL is 404 for me.
15:22:12 <spot> if no one objects, i'll tackle this one and try to resolve it without an exception
15:22:30 <geppetto> sounds good
15:23:18 <tibbs|h> I certainly won't object.
15:23:32 <spot> the spring ticket (105) is 4 hours old, so i suspect most people haven't had a chance to look it over yet
15:23:41 <limburgher> True.
15:23:42 <spot> please look over ticket 105 and be ready to discuss it next week
15:23:53 <spot> https://fedorahosted.org/fpc/ticket/105
15:23:56 <tibbs|h> I glanced at it.
15:24:03 <tibbs|h> Enough to know it's going to be a fun issue.
15:24:21 <spot> tibbs|h: i think ticket 101 just is waiting for you to add it to the copylib md5 list
15:24:24 <geppetto> I looked at it, and won't be here next week
15:24:33 <geppetto> the md5 thing is the same thing everyone does
15:24:45 <tibbs|h> Hmm, now the rtmidi URL is working for me.  Weird.
15:25:21 <geppetto> 7z seems like it should be easily fixable
15:25:23 <spot> geppetto: agreed, and i think the lzma-sdk monstrosity i birthed will likely work for the 7z part
15:25:36 <limburgher> I was just <shudder> thinking that.
15:25:50 <tibbs|h> Oh, crap, I forgot to finish off that review.
15:25:58 <tibbs|h> So far behind now....
15:26:00 <limburgher> I assumed you were busy.
15:26:04 <geppetto> The lua part is interesting … that might not be fixable
15:26:19 <spot> the lua part is the contentious part. every time i look at lua, i back away slowly, so i believe it when they say its forked and customized beyond sanely using system lua
15:26:32 <geppetto> snap :)
15:26:47 <limburgher> Oh not you d'nt.
15:26:51 <limburgher> s/not/no/
15:26:54 <abadger1999> limburgher: Does the 7z sdk portion bear on what you're doing?
15:26:57 <spot> my inclination is to grant an exception for the forked lua.
15:27:29 <spot> point to the existing md5 exception, and decline 7z unless the lzma-sdk is not a viable solution
15:27:35 <limburgher> abadger1999: They can probably build against the hideous abomination we're working on instead of bundling, just like upx will.
15:27:44 <abadger1999> <nod> okay.
15:28:17 <tibbs|h> So really this boils down to the Lua thing?
15:28:24 <spot> tibbs|h: seems that way to me
15:28:34 <tibbs|h> I mean, MD5 we generally grant and 7z may be worked out.
15:28:56 <tibbs|h> For the Lua thing, it doesn't appear that anyone's talked to upstream.
15:28:58 <limburgher> Pondering: Is Lua to the 21st century what BASIC was to the 20th?
15:29:09 <tibbs|h> Lua is nice for what it is.
15:29:11 <geppetto> yeh, even the 7z isn't really a bundling from what I saw … they are just reusing the algo.
15:29:28 <limburgher> geppetto: reusing meaning reimplementing?
15:29:56 <tibbs|h> We can't really argue if people have their own implementations of things even though that's kind of a waste of their effort.
15:30:07 <geppetto> limburgher: They say "uses a public domain implementation of the 7z compression algorithm"
15:30:23 <spot> geppetto: the lzma-sdk was placed (poorly) in the public domain
15:30:28 <limburgher> geppetto: So they need to specify which one?
15:30:38 <spot> geppetto: this means that they're almost certainly just using the lzma-sdk
15:30:41 <limburgher> If it's lzma-sdk, then . . .
15:30:43 <limburgher> . . .yeah.
15:31:06 <tibbs|h> I have to say the whole "anti cheat" thing is tough for anything open source.
15:31:24 <spot> "Lua has patches applied, must link to streflop, and is configured different from stock Lua (most importantly we need lua_Number to be float and not double). Lua is particularly important because parts of the game code may be written in it, which must yield exactly identical results (also floating point operations!) on all platforms."
15:31:45 <abadger1999> so is lua a giant copylib?
15:31:50 <tibbs|h> Not really.
15:31:57 <spot> abadger1999: not generally, i think this is a special case.
15:31:58 <tibbs|h> I mean, you can build it shared just fine.
15:32:12 <tibbs|h> Would still be good to see what lua upstream thinks.
15:32:18 <abadger1999> meant to be embedded, has compile time options to configure runtime behaviour.
15:33:16 <spot> i wouldn't say "meant"
15:33:24 <spot> but it is designed to support an embedded usecase
15:33:47 <spot> i think its the patches, and change of lua_Number to be float
15:34:04 <spot> i doubt that other lua-dependent apps need (or want) that assumption
15:34:16 <abadger1999> <nod>
15:34:52 <spot> in my mind, this is either a case where this modified lua be packaged and used by Spring RTS
15:35:07 <spot> or we permit this bundling
15:35:43 <spot> i just don't think lua upstream is going to change lua_Number, even if they take all the other patches
15:35:47 <racor> ... or we modify the source-code (float <->double hardly makes any sense today)
15:37:02 <limburgher> racor: could spring be patched to use double?  <spitballing>
15:38:01 <tibbs|h> Well, it could, but then I believe the point is that then network play would be incompatible with any other implementation.
15:38:44 <racor> limburgher: no idea ... "float" for exact identical results, ... well doesn't make sense.
15:39:27 <limburgher> tibbs|h:  Odd.  Why would that be the case?  Would the value transmitted not fit in either data type?
15:39:37 <limburgher> Unless I'm totally lost.  possible.
15:39:53 <tibbs|h> It's not uncommon for network games to do a bunch of client-side computation that somehow has to be completely identical on all clients.
15:39:59 <geppetto> limburgher: it's not transmitted … it's you have two boxes X And Y … both do calc FOO … if they don't get the same result == bad
15:40:24 <racor> tibbs|h: But using "float" doesn't guarantee this.
15:40:45 <geppetto> which is pretty retarded with FP anyway, but these are game developers … they probably don't care about portability that much
15:40:48 <tibbs|h> It seems that either they think it does, or it works well enough for their purposes.
15:41:05 <limburgher> I see.  So it may usually be the same, but not in all cases.
15:41:13 <geppetto> tibbs|h: the entire world is an i686 :)
15:41:16 <limburgher> geppetto: <nod>
15:41:37 <limburgher> geppetto: with top-notch GPU, proprietary drivers, . .
15:41:41 <tibbs|h> What is streflop?
15:41:53 <tibbs|h> Ah, alternate math library.
15:41:56 <spot> http://nicolas.brodu.numerimoire.net/en/programmation/streflop/index.html
15:42:02 <tibbs|h> Makes more sense now, I think.
15:42:33 <tibbs|h> In other words, using float and linking against streflop gives them what they need.
15:42:45 <spot> yeah, i just don't think we're ever going to modify the system lua like that
15:42:56 <geppetto> STandalone REproducible FLOating-Point library
15:43:02 <limburgher> tibbs|h: And it worked, so they stopped messing with it. :)
15:43:08 <limburgher> spot: agreed.
15:43:09 <spot> and i doubt there is a consumer base for such a lua outside of Spring RTS
15:43:18 <geppetto> interesting … they are much less retarded than I assumed :)
15:43:22 <spot> so, imho, letting them bundle it is fine.
15:43:46 <spot> minimal security risk, upstream lua is very slow moving
15:44:29 <tibbs|h> I don't disagree at this point.
15:44:41 <limburgher> And I'd imagine they understand the parts they modified enough to port patches.
15:44:44 * geppetto nods
15:44:46 <tibbs|h> There's basically no chance of getting the system lua to do this.
15:45:03 <spot> So, I'm +1 for lua and MD5 bundling exceptions
15:45:13 <limburgher> And I don't think we really want to.
15:45:17 <limburgher> +1
15:45:24 <geppetto> +1
15:45:49 <racor> spot: Is lua still alive? I checked last week and upstream appeared dead to me.
15:46:01 <spot> racor: i think they're just very slow, mimicking death. :)
15:46:09 <tibbs|h> It's pretty alive.
15:46:11 <racor> last release 2008
15:46:16 <tibbs|h> New beta out last month.
15:46:28 <tibbs|h> They have conferences and stuff as well.
15:46:28 <abadger1999> +1 -- with the bundled(lua) = x.y.z deps that we added to the guidelines, I think this is acceptable.
15:46:43 <tibbs|h> Next lua workshop is in a week or so.
15:46:55 <spot> so, we're at +4 for lua and md5 exceptions
15:47:07 <tibbs|h> Sorry, +1
15:47:40 <racor> -1 for lua, +1 for md5
15:47:47 <spot> rdieter?
15:47:57 * abadger1999 does a um search streflop
15:48:04 <rdieter> +1
15:48:19 <geppetto> abadger1999: http://nicolas.brodu.numerimoire.net/en/programmation/streflop/index.html
15:48:27 <spot> geppetto: he's seeing if it is packaged
15:48:32 <geppetto> oh
15:48:36 <abadger1999> geppetto: I mean.... are we also allowing the bundling of streflop here ?
15:48:49 <spot> i think that may be something that makes sense to have a system copy of
15:49:03 <abadger1999> No matches found.
15:49:06 <limburgher> crud.
15:49:23 <spot> i'll look at making a streflop library package
15:50:12 <abadger1999> Ugh:  This also means you cannot reliably use this library with gcc on systems where only sse (but not sse2) is present, like some athlon-xp cores.
15:50:43 <spot> #action lua bundling approved (+1:6, 0:0, -1:1), md5 bundling approved (+1:7, 0:0, -1:0), streflop bundling decision postponed, pending research on packaging it.
15:52:41 <abadger1999> #action 7z also pending more research about using the 7z lzma-sdk package that's under review
15:54:45 <spot> okay.
15:54:49 <spot> #topic Open Floor
15:55:32 <spot> if there is nothing by say, 15:57, i'll close out the meeting
15:55:58 <tibbs|h> I got nothing.
15:56:24 <abadger1999> nothing here
15:57:21 <spot> okay, thanks everyone
15:57:23 <spot> #endmeeting