XSF Discussion - 2018-04-12


  1. jonasw

    Maranda, requesting the config form is a smart thing to do, because usually you want to offer configuration to the user.

  2. Maranda

    jonasw, for muc? I'm not sure the end user will know what to do with it also as MattJ said if something does it like Gajim does you may end with an undefinitely locked room

  3. Kev

    Why not just do what Swift does?

  4. Kev

    "[x] Automatically configure new rooms"

  5. Maranda

    And regarding subject I decided to send it after the room is unlocked

  6. Zash

    Sensible defaults? Never!

  7. Maranda

    Kev, or just request an instant room

  8. Kev

    We didn't even have that to start with, but we had people who required reserved rooms.

  9. Kev

    Maranda: I think that's not one of the two obvious readings of the spec :)

  10. Maranda

    I think lovetox is more incline on auto requesting an instant room though

  11. Maranda

    Even because if you cancel the config form the room has to be destroyed ™️

  12. Zash

    > undefinitely locked room say what?

  13. Maranda

    Yes

  14. Maranda

    Undefinitely locked room

  15. jonasw

    i think you meant: indefinitely

  16. Maranda

    Whatever

  17. Maranda

    I'm an illiterate english wise 😜

  18. Zash

    Keep a timestamp and unlock or destroy it on some timeout?

  19. Maranda

    Possible, but how much time and what happens if the user just creates the room and goes to pick up a coffee (leaving the config form open)

  20. Maranda

    That's not too silly either

  21. Maranda

    As example

  22. Zash

    Measure how long it takes to fetch coffee

  23. Ge0rG

    Unlock the room if the user leaves prior to finishing configuration

  24. jonasw

    allow to create rooms by just submitting a config form to a MUC JID?

  25. Maranda

    Or join and just request an instant room

  26. Maranda

    It's already provided

  27. Ge0rG

    I think instant rooms are underspecified in 0045

  28. Maranda

    Ge0rG well I didn't even know about all this mess before yesterday, and/or I suppose my brain could've just removed it because it's too messy

  29. Ge0rG

    Maranda: so I made you have nightmares about MUC? Yay.

  30. Maranda

    About all this locking mess yeah it's horrible UX wise, but I have to care about the protocol not UX ultimately

  31. jonasw

    does gajim 1.x still do resource locking?

  32. Maranda

    I suppose, never experienced chat disjoints (yet)

  33. jonasw

    :/

  34. Ge0rG

    Maranda: what? you put protocol over UX?

  35. jonasw

    as a server deve, I think that’s a valid argument ;-)

  36. Maranda

    Ge0rG, shiny things is your thing mine is the rubbery below that..? 🤷‍♂️

  37. Maranda

    😘

  38. Ge0rG

    Maranda: if the protocol goes against UX, it needs to be ignored and/or repaired.

  39. Maranda

    Indeed but since there's a standard I have to abide to that

  40. Maranda

    Until it's fixed ™️

  41. Ge0rG

    Maranda: there are server devs in this MUC who have ignored the standard to improve UX

  42. Ge0rG

    > Until it's fixed ™️ So did you submit a PR? An XEP?

  43. Maranda

    Submit a PR to muc?

  44. jonasw

    sure

  45. Maranda

    I would remove the locking mechanism completely and leave instant rooms while I understand the reasons below it

  46. Maranda

    That's my PR

  47. Ge0rG

    Maranda: I've submitted multiple PRs already ;)

  48. Ge0rG

    Maranda: a PR is a diff against the XEP xml

  49. Ge0rG

    not a sentence on this MUC :D

  50. Maranda

    I can already see a lot of people voting against it

  51. Maranda

    I know

  52. Maranda

    But that's what it would be

  53. Maranda

    And then I'd need some editor to re edit it and make it comprehensible for the masses too.

  54. Maranda eyes jonasw?

  55. Maranda

    🤣

  56. Ge0rG

    Maranda: you could collaborate with an editor

  57. jonasw

    the way pubsub does it would be cool. create a room by sending a config form along. if the room exists -> conflict, if it doesn’t exist -> configure as specified by the client (if possible, otherwise error)

  58. Ge0rG

    jonasw: for instant rooms, I'd argue that the server should assign a room name.

  59. Maranda

    Yes that's indeedly a better solution

  60. Ge0rG

    <iq to=chat.yax.im><gimme-a-room-pse>

  61. jonasw

    gah

  62. Ge0rG

    s/room name/room JID/

  63. Maranda

    jonasw's for sending the config form, but then rooms aren't persistant by default

  64. Maranda

    So we get into an implementation issue

  65. jonasw

    …?

  66. jonasw

    the client would send a config form with persistent set to treu.....

  67. jonasw

    gotta go

  68. Maranda

    And what about non persistant members only rooms mr. "jonasw gotta go“ 🤨

  69. Maranda le sighs

  70. jonasw

    Maranda, what?

  71. jonasw

    the client can request whatever it needs?

  72. jonasw

    I don’t see your problem.

  73. Maranda

    That a non persistant room to exists needs someone in it, that's what all the locking junk is about

  74. jonasw

    ahhhh

  75. jonasw

    so?

  76. jonasw

    <presence><x><create-config>form goes here</create-config></x></presence>

  77. Maranda

    So what I said above applies as issue in your solution

  78. jonasw

    this joins and creates the room

  79. jonasw

    and configures

  80. Maranda

    Ok that could work 😁

  81. jonasw

    I don’t see the problem with that.

  82. jonasw

    :)

  83. jonasw

    and it’s atomic, which is neat

  84. jonasw

    much better than MUC logging

  85. jonasw

    wtf

  86. jonasw

    what did I just write

  87. jonasw

    locking is what I meant

  88. jonasw

    I need lunch, gotta go now for real

  89. Maranda

    jonasw your "work like in pubsub" didn't trigger the "publish-options" example in my head (which fits more than "create-and-configure" and won't apply for non persistant)

  90. Maranda

    s/and won't/that won't/

  91. Maranda

    And well GC1.0 breaks spim blocking horribly for mucs

  92. Ge0rG

    Maranda: does it?

  93. Maranda needs to add additional tracking.

  94. Maranda

    Yes

  95. Maranda

    And I sense a tip of <sarcasm/> there Ge0rG 😜

  96. Ge0rG

    Maranda: and I sense a large pinch of generalized statement.

  97. Maranda

    Ge0rG muc private messages, I track directed presences with the x element atm

  98. Maranda

    I'll have to track all directed presences using bare instead but that's a bit more expensive

  99. Maranda

    On GC1 private messages will break mod_spim_block

  100. Maranda

    Atm

  101. Ge0rG

    Maranda: don't you have to track all directed presences anyway?

  102. Ge0rG

    Maranda: the funny part is when you try to join a nick as `Maranda`, but the MUC tells you that you joined as `Dumbass` instead. It will break both most clients and presence tracking!

  103. Ge0rG

    join a MUC

  104. Ge0rG

    (no offense intended)

  105. daniel

    source for 'it will break most clients'

  106. Ge0rG

    daniel: maybe yours is a notable exception, but please don't generalize that.

  107. daniel

    i'm just wondering if you actually experienced clients breaking on this?

  108. Ge0rG

    I know of two that will be broken.

  109. Ge0rG

    with different degrees of brokenness.

  110. Kev

    Servers changing MUC nicks will certainly break things. How much things break might vary, but it'll screw things up.

  111. Kev

    You need both your client to understand it sensibly and your server to do unspecified things.

  112. Ge0rG

    Kev: I think there are two different cases here; a MUC telling you that you joined with a different nickname, vs. changing your nickname later on

  113. daniel

    maybe sometimes you need to break things to have nice things

  114. daniel

    something something omelettes

  115. daniel

    but it's pretty reckless to have the renaming in 45 w/o a way for the client to signal that it will be able to process that

  116. Kev

    45 is broken in many interesting ways.

  117. Ge0rG

    daniel: yeah, but we can solve that. Just have the MUC service keep a mapping of (actual client nickname <-> what the client thinks its nickname is) and add some renaming on conflicts

  118. Ge0rG

    so if my client thinks I'm `Ge0rG`, but I'm actually `Not_Ge0rG` in the MUC, when the real `Ge0rG` sends a groupchat message, I will see it as coming from `The_other_Ge0rG`. Easy!

  119. jonasw

    whatthefuck

  120. pep.

    Sorry I haven't done the minutes of the gdpr meeting yet :(

  121. jonasw

    I might have a conflict next tuesday, my boss is looking to sort this out.

  122. pep.

    k, we can move if necessary I guess

  123. jonasw

    if and only if this conflicts, I’ll be available on wednesday instead of tuesday.

  124. jonasw

    conflict resolved

  125. Ge0rG

    Ah, minutes are in. Always a pleasure to read.

  126. MattJ

    .

  127. Guus

    I'm here

  128. Guus

    (but in a meeting)

  129. MattJ

    Ending soon?

  130. MattJ

    Nyco sent apologies

  131. Guus

    god knows ...

  132. MattJ

    I know the kind :)

  133. Guus

    I can lurk here

  134. MattJ

    Martin, around?

  135. Martin

    Yup, sorry, chat window popped onto the wrong monitor

  136. MattJ

    I haven't heard anything from Ralph

  137. Guus

    can any of you start off?

  138. Guus

    I have to pay some attention to this meeting 😕

  139. MattJ

    Pinged Ralph but no response. I'm not sure of the value of starting with 2.5 members present - unless you want to be counted as a 1

  140. Martin

    I agree, probably a better idea to defer until next week

  141. Dave Cridland

    And then there were four. Or maybe 3.5.

  142. Guus

    Ok, meeting over 🙂

  143. MattJ

    Ok

  144. MattJ

    Let's do what we can

  145. MattJ

    0) Role call

  146. Guus

    I'm here!

  147. MattJ

    Me, Martin, Guus

  148. MattJ

    nyco, sent apologies (but is here if he wants to retract them)

  149. MattJ

    Anyone have anything for the agenda?

  150. Guus

    (nope)

  151. MattJ

    Anyone free to take minutes?

  152. Guus

    <--

  153. MattJ

    Thanks!

  154. MattJ

    No decisions to make this week, it seems

  155. MattJ

    1) Commitments

  156. MattJ

    1.1) Membership survey

  157. MattJ

    I've converted the survey to a Google Form, you can take a look here: https://docs.google.com/forms/d/e/1FAIpQLSdZL6iNYhLJCTWYg3vZ_2XEC5dYrzeQuZtaJZ3OdJFL2UwFpQ/viewform

  158. Ge0rG

    MattJ: there is an item to decide, https://github.com/xsf/xmpp.org/pull/425

  159. Guus

    Can I fill that out as a test/

  160. Guus

    or will my responses be inrevocable?

  161. MattJ

    Feedback welcome. Main open questions I think we need to decide: should it require an email address? (I say yes), and who should the survey be for? XSF members only? or the community at large?

  162. MattJ

    Guus, feel free

  163. Guus

    if we're doing this for members only (my preference), I'd make change the email field in a name field.

  164. Ge0rG

    MattJ: what is the email required for?

  165. MattJ

    Ge0rG, follow-up, preventing duplicate responses

  166. Ge0rG

    MattJ: that should be stated in the form

  167. MattJ

    and if we opt for members-only, potentially verification

  168. MattJ

    Ge0rG, is that with your GDPR hat on? ;)

  169. Ge0rG

    (maybe we should discuss the details off-meeting)

  170. Ge0rG

    MattJ: not only

  171. Ge0rG

    MattJ: if somebody asks me for my email, I want to know why.

  172. MattJ

    Ok, we can discuss. I'd like to send the form out before the next meeting

  173. MattJ

    We're short on time, so let's move on

  174. Guus

    as I said: I think a member-only thing is most suitable: if only because we know these people to have some affection with XMPP.

  175. Guus

    and with that, an email is not 'needed' (as we know who you are)

  176. MattJ

    Guus, I worry that may exclude some valuable opinions (the XSF may be a bit of a bubble)

  177. MattJ

    For example, lots of memberships have lapsed - we might be able to learn why

  178. Guus

    fair

  179. Guus

    ok, you won me over

  180. MattJ

    1.2) Online swag shop

  181. MattJ

    Nyco sent some details to the board list

  182. MattJ

    If we go ahead, I'd opt for not having any up-front costs

  183. Guus

    perhaps first decide if we do want to go ahead?

  184. MattJ

    I think last week we agreed on going ahead with the research

  185. MattJ

    Research is done (?)

  186. Guus

    sure

  187. MattJ

    What reasons are there to not go ahead?

  188. MattJ

    I can't think of any, it's essentially an experiment though

  189. Guus

    (I don't have any major ones, but so far, it's only been three people talking about this)

  190. Martin

    Do we know who'd come up with the creative elements? Or would we just use existing logo assets?

  191. MattJ

    Martin, I assumed the latter, but that's a good point - we may want to do more than that (as we have done for FOSDEM in the past)

  192. Guus

    Martin: I think this'd be best served by the comms team, but possibily scam as well?

  193. MattJ

    But then someone has to volunteer to do that

  194. Ge0rG

    there might be taxation issues for the XSF

  195. Ge0rG

    whoever is responsible for the XSF tax forms should be asked first.

  196. Guus

    that's sensible

  197. MattJ

    I assume it's no different to selling t-shirts at FOSDEM, but we probably should

  198. Guus

    Peter, as the Treasurer (and general -has-been-around-forever-and-knows-everything-) might be able to help here

  199. MattJ

    Guus, do you want to add it to your list? :)

  200. Guus

    k

  201. MattJ

    Thanks

  202. MattJ

    So let's do that, and push the final decision on this off for another week when hopefully we'll have more voices

  203. MattJ

    1.3) Collect information on the role and responsibilities of the executive officer

  204. MattJ

    Martin, any success with this so far?

  205. Martin

    Unfortunately not. I'm about to leave one job and start another one, so my week's just been eaten up. Sorry.

  206. MattJ

    The title of the card is inaccurate, we're specifically discussing the Executive Director role

  207. Guus

    change it? 🙂

  208. MattJ

    Shall do

  209. MattJ

    2) Items for discussion

  210. MattJ

    Guus, financing - ongoing I believe?

  211. Guus

    yeah, i've send out emails (cc'ed board), but no responses so far.

  212. MattJ

    Noted

  213. Guus

    other than that, i've not started anything on the subject myself.

  214. MattJ

    Other item is ED search which is blocked on the other task

  215. MattJ

    3) We've hit our time, does anyone have important AOB?

  216. MattJ

    Ge0rG highlighted that PR about Pidgin

  217. MattJ

    I haven't read it yet, and don't really know what's going on, so I'd rather push that to next week

  218. Guus

    I've commented on that in the PR

  219. MattJ

    and maybe give some feedback in the interim

  220. MattJ

    Ok

  221. Guus

    no AOBs from me.

  222. MattJ

    4) Date of next

  223. MattJ

    +1w

  224. MattJ

    5) Close

  225. Guus

    wfm

  226. MattJ

    Thanks all!

  227. Guus

    thank you!

  228. Martin

    Thanks MattJ

  229. MattJ

    Ge0rG, ok, I see the issue. The neutrality issue is actually in the community survey so that might provide some data on what people would like to see here

  230. MattJ

    Personally, I'd be fine with including it if we had the right markings next to it indicating that it is not up to date with the latest protocols

  231. MattJ

    But down that road lies a whole kettle of worms

  232. Ge0rG

    MattJ: I know. I'm not the one asking easy questions :P

  233. MattJ

    Someone needs to determine what the compliance level is. If it's self-reported, someone needs to verify that

  234. MattJ

    (or do they really? Probably some competitor will submit a PR to fix it and we'll need to resolve the dispute :) )

  235. Ge0rG

    We don't have compliance level requirements.

  236. Ge0rG

    Back when introducing the new policy, I wanted to make it more clear that only application authors are allowed to submit their respective application.

  237. Ge0rG

    However, even that opinion was controversial.

  238. MattJ

    It's hard to enforce, would be my main concern

  239. MattJ

    In open-source projects the line isn't always clearly defined

  240. Zash

    Are only application authors allowed to?

  241. MattJ

    If someone submits a couple of patches, are they allowed?

  242. MattJ

    If they only maintain the documentation, are they allowed?

  243. Zash

    Or if they are on the inofficial marketing team by speaking positively about your project at least once? :)

  244. MattJ

    This is why that plan to have XMPP projects host some metadata on their domain would be the best option

  245. Zash

    But if the current situation is that project authors won't even bother submitting a one line patch, who's going to motivate them to author such a metadata file?

  246. MattJ

    The people who are currently trying to submit the projects to us :)

  247. Guus

    I'm not a fan of restricting applications to that JSON file

  248. Ge0rG

    We as the XMPP community have a huge quality issue. We won't solve it by having "inofficial marketing volunteers" submit zombies to The Official Client List

  249. MattJ

    Guus, why so?

  250. Guus

    Because being the one that created the app doesn't uniquely qualify you to add it to our list.

  251. Guus

    Hell, I think I've added a couple of clients on there.

  252. Zash

    Also, me, being against forcing people onto singular platforms, feel meh about it being done by github pr.

  253. Ge0rG

    Zash: you can send .diff files

  254. Guus

    Why would we limit our list by denying entries from enthousiastic users that are not devs?

  255. Ge0rG

    Guus: because enthusiastic users don't know whether their favorite client is actually good for the general audience.

  256. MattJ

    Guus, it depends entirely on the purpose of the list

  257. Ge0rG

    At least less so than the developer.

  258. MattJ

    I think you and Ge0rG have different opinions on that

  259. Guus

    It's up to us to merge or reject the PR.

  260. Guus

    so quality control is up to us. I'd be happy for anyone to offer suggestions for us to put on those lists.

  261. Zash

    Was the purpose of the renewal not to filter out inactive projects.

  262. Ge0rG

    Zash: yes

  263. Zash

    Pidgin is not an inactive project, even it's not moving very fast.

  264. Ge0rG

    Guus: what kind of quality control do you want to apply, that doesn't violate the Holy XSF Neutrality Stance.

  265. Guus

    Ge0rg: a judgement if the entry is appropriate. I've denied stuff before.

  266. Ge0rG

    Guus: judgment on which grounds?

  267. Guus

    lemme think

  268. Ge0rG

    Guus: I agree with you that we want quality clients there. But we need to have some formal grounds for that

  269. Guus

    i think I denied at least two, because they were XMPP-based silos (that did not federate)

  270. Guus

    Oh, but then we disagree 🙂

  271. MattJ

    FWIW I had multiple conversations with ex-XMPP users who had moved to other platforms because XMPP can't do $feature

  272. Guus

    I don't think quality is a requirement.

  273. MattJ

    When it turns out they were Pidgin users, and don't even have Carbons

  274. Guus

    as that's subjective, at times.

  275. Guus

    exactly, lots of people are happy with Pidgin, even fi we're not

  276. MattJ

    and this has given me the opinion that Pidgin is harmful to XMPP, as it stands

  277. Guus

    so I'wouldn't mind adding it

  278. MattJ

    No, these people left XMPP because of Pidgin

  279. Seve/SouL

    Maybe gathering a minimum of XEPs implemented?

  280. Ge0rG

    Guus: except that pidgin makes your XMPP experience break in unexpected ways if you add another client

  281. Seve/SouL

    for IM.

  282. Ge0rG

    Seve/SouL: like the Compliance Suite?

  283. MattJ

    Pidgin is extremely popular (whether we list it or not)

  284. MattJ

    and for a significant number of XMPP users, it *is* XMPP

  285. Ge0rG

    Pidgin and Zom on top of Cisco Jabber.

  286. MattJ

    XMPP does not support Carbons or MAM if Pidgin does not support Carbons or MAM

  287. Guus

    Matt, that's why I think we'd better list it, but with some kind of footnote.

  288. Ge0rG

    we need a traffic light, and pidgin will be red.

  289. Ge0rG

    except colorblind.

  290. Seve/SouL

    Ge0rG, I don't know how many active/good clients would the Compliance Suite exclude, but yes. Something like 'minimum decent experience'. This way we even could list clients that have these features or more, and 'others' that do not, like Pidgin or whatever.

  291. Ge0rG

    As long as yaxim ends up on the "good" side, and Pidgin on the "bad" one, I don't care :P

  292. Seve/SouL

    Heh

  293. Guus

    Seve, I largely agree. I do think we should prevent the qualification to be very strict or detailed though, as it'll lead to too much discussion

  294. Ge0rG

    Seriously though, the list on xmpp.org is intended for people who don't have an XMPP client yet.

  295. Guus

    but a simple stoplight type of deal would owrk.

  296. Ge0rG

    I can't see any rational reason to tell them about Pidgin, except not to use it.

  297. Guus

    I think that it does add value for many people, even if it does not for you.

  298. Ge0rG

    Guus: what kind of value do you thin it adds?

  299. Ge0rG

    Guus: what kind of value do you think it adds?

  300. Guus

    Ge0rG whatever makes the gazillion people that use it for XMPP today think of it.

  301. Zash

    Maybe have an Subjective Persons Pick of the Week thing before the full list?

  302. Guus

    Also: if people see it on that list, and are used to pidgin, but see that there are many better clients (by looking at that traffic light), they might be motivated to explore what better things are out there.

  303. MattJ

    Zash, and in 4 weeks we run out of clients ;)

  304. Ge0rG

    Guus: ask jonasw what he thinks of it.

  305. Zash

    Someone (read: Ge0rG) could review clients and post under a big "NOT THE OFFICIAL BLAH OF THE XSF" banner on the blog

  306. Guus

    Ge0rG: I'm not disputing that it's lacking

  307. Ge0rG

    Zash: I'd be the Angry VideoGaming Nerd of XMPP clients.

  308. Maranda

    Ge0rG yes but they're normally tracked with the full jid so I need to make another table that contains bare and I didn't want to do for non muc cases I guess I'll have to make a third one just in case

  309. Ge0rG

    hi Maranda! Your message came in 4 hours late.

  310. Maranda

    I know i was without data

  311. Maranda

    I exhausted credit

  312. Ge0rG

    Guus: as long as we don't have a formal mechanism to put clients into "good", "bad" and "ugly" lists, and the appropriate tooling on the web site, I'm strongly against putting pidgin onto the list.

  313. Guus

    Ge0rG: my formal mechanism is your gut. 🙂

  314. Ge0rG

    Wikipedia has huge tables of XMPP clients, sortable by criteria and listing some "important" aspects.

  315. Maranda

    And exhausted it just I was typing said message too

  316. Maranda

    😎

  317. Seve/SouL

    Listing 'Minimum decent experience' clients and 'others', could even motivate client developers to work on their client. This way we can add to the list more clients and also specify which ones you should choose first. If adding clients to the list is what we aim for.

  318. Guus

    Ge0rG: i don't want to keep that kind of detailed data on our site. That'll be always out of date, and lead to too much bickering. Just a "good/bad/ugly" qualifier that's based on whatever the XSF member(s) in charge of the list semi-objective thought on the matter is, is good enough for me.

  319. Zash

    semi-objective in a semi-official place is weird tho

  320. Guus

    Zash: better than the alternative, perhaps

  321. Ge0rG

    Guus: so you and jonasw disagree, we'll have an edit war?

  322. Guus

    Ge0rG: no, because we're sensible people.

  323. Guus

    ... at least jonas is.

  324. Ge0rG

    I wish that'd be true for all XSF members.

  325. Guus

    I think we can strive to an acceptable compromise on a 1to3 level of things.

  326. Guus

    given the semi-objectes arguments based on compliance levels, I don't think there'll be much discussion between the highest and lowest levels anyways, so compromising should be doable.

  327. Guus

    we're not having an edit war now, do we? And we both have the ability to add/remove pidgin today. 🙂

  328. Zash

    Certified Approved by Guus, Ge0rG or jonasw on arbitrary subjective grounds™

  329. Guus

    Zash: I'll order that in rubber stamp format.

  330. Zash

    I'll order a tiny "Zash approves" rubber stamp to stamp on those stamps.

  331. Ge0rG

    I don't think there are any clients that would deserve the "Approved by Ge0rG" stamp.

  332. Guus

    instead of the compliance levels, we could have "things that Ge0rG complains about a lot / sometimes / hardly ever."

  333. Ge0rG

    Guus: I like that.

  334. Guus

    We would require you to complain to some degree on everything on the list then, though.

  335. Ge0rG

    Someone will have to provide me with the required devices to run the shit to complain about, then.

  336. Zash

    Maybe do a community survey on rankings?

  337. Guus

    "shit doesn't run on my device" is a valid complaint.

  338. Guus

    oh shit, kids

  339. Guus

    need to pick them up

  340. Guus

    byes! 🙂

  341. jonasw

    Falling out of Debian's own wrangling with the upcoming EU GPDR regulation, I thought it might be a good idea to have a cross- community discussion group to discuss the GDPR and its impact on free software and free culture projects. This has now been setup here: https://www.earth.li/mailman/listinfo/gdpr-discuss Please feel free to pass the link onto other communities who would be interested in participating. Best wishes, -- ,''`. : :' : Chris Lamb, Debian Project Leader `. `'` lamby@debian.org / chris-lamb.co.uk `-