/srv/irclogs.ubuntu.com/2013/07/19/#ubuntu-mir.txt

racarrrobert_ancell: I think it just exposes less implementation detail00:27
racarrI mean it's just a lock in implementation right, but the interface to the clients00:27
racarris "perform these operations atomically"00:28
racarrand yes, what did my emacs do?00:29
robert_ancellracarr, + // from a second thread before input focus is set.xs00:58
robert_ancellthink you missed hitting ctrl there00:58
racarrTrue!01:27
racarrthanks :) fixed in r85801:29
dufluWoo... another morning of just fixing conflicts02:59
duflurobert_ancell: ping03:39
robert_ancellduflu, yep03:40
duflurobert_ancell: You mentioned that shortened versions was a possibility: major.minor only03:40
dufluI think I agree with that...03:40
dufluSo long as no one complains that we change major a lot03:40
robert_ancellduflu, for the project?03:40
dufluYes03:41
robert_ancellduflu, yeah, I like it too. The second number is only incremented if we branch, so for most purposes we only have one number03:41
duflurobert_ancell: Or rather the second number represents fixes that don't affect ABI03:42
duflu... ?03:42
robert_ancellduflu, then you can't do branches. i.e. if we release Mir 94 in saucy, then we need to fix it, we need version 94.1 because in t-series we'll be on (say) 11303:43
robert_ancellSo the version become <version>.<branch-version>03:43
duflurobert_ancell: I don't understand the problem. Once saucy is released as N.M, it will get updates N.(M+1). T-series is the only distro that will get (N+1)03:46
dufluJust like we do for Unity releases...03:48
robert_ancellduflu, so what do we do if we release 1.2 in saucy and 1.3 in t-series then need to make a patch to saucy?03:48
robert_ancellwe can't go 1.3 because that would collide with a newer version. Then we'd have to do 1.2.103:49
duflurobert_ancell: There's no problem if each new distro gets a major rev03:50
dufluNumbers are cheap03:50
robert_ancellyes they are03:50
robert_ancellbut there's no need to unnecessarily break ABI every single release which is what this scheme would do03:51
duflu... so it would be 1.2 in saucy (up to 1.X in updates), and 2.Y in T03:51
dufluAnd _eventually_ when the ABI stabilizes, we could stay on the same major and branch to 3 components03:52
dufluAll the while ABI == major == a single integer03:53
robert_ancellthere's no need to combine the project version and the three (for the moment) ABIs together into one number03:53
robert_ancellit just creates unnecessary work03:53
duflurobert_ancell: That's kind of true. But it does create clarity.... Alternatively, see my latest MP comments03:55
robert_ancellduflu, I have to go but I updated both MPs04:03
tvoss_good morning :)05:08
tvoss_RAOF, ping05:08
dufluMorning tvoss_05:33
tvoss_mlankhorst, RAOF  in case you are around: I noticed that SNA is not enabled by default in the XMir drivers. Is that by accident or on purpose?06:18
didrockstvoss_: hey, ar you going to push today the disable armhf android tests?06:25
didrocksare*06:25
tvoss_didrocks, sure, I assumed you had done it already, happy to do it, though06:26
tvoss_alf_, mind if I set https://bugs.launchpad.net/mir/+bug/1102760 to in-progress?06:26
ubot5Launchpad bug 1102760 in Mir "Multi-monitor support incomplete - can't show different images on each screen" [Critical,Triaged]06:26
didrockstvoss_: ah, sorry, I'm more trying to decipher the race right now06:26
alf_tvoss_: sure06:26
didrockstvoss_: .1 doesn't seem enough though, just had a case where it's not enough06:26
tvoss_alf_, the correct answer is nope :)06:26
* didrocks will try .5 and give several try to it06:27
=== 65MAANWI2 is now known as tvoss
didrockstvoss: if you want, I can disable all tests, but I thought you wanted to be more fine grain and I don't know ctest06:30
tvossdidrocks, let me see what I can do :)06:30
RAOFtvoss: Um, that would be by accident.07:15
* RAOF checks the packaging branches.07:15
tvossRAOF, I have a custom /etc/X11/xorg.conf to enable sna07:16
tvossdidrocks, https://code.launchpad.net/~thomas-voss/mir/disable_acceptance_integration_tests_on_armhf/+merge/17574607:22
tvossRAOF, alan_g|EOD you might want to have a look, too: https://code.launchpad.net/~thomas-voss/mir/disable_acceptance_integration_tests_on_armhf/+merge/17574607:25
didrockstvoss: approved07:29
didrocksthanks!07:29
didrockstvoss: I may need to extend the sleep to .5s FYI07:29
didrocksjust ensuring that all the runs pass07:29
tvossdidrocks, not sure if that is enough, we might need to disable unit tests too07:29
didrocks(by priority to dailies to finish tests)07:29
tvossso let's see what the builders say07:29
didrockstvoss: ok, I'll rerun a mir build once merged, ok?07:30
tvossdidrocks, ack07:30
RAOFHm. Why is it defaulting to UXA? The packaging branch clearly defaults to sna.07:30
tvossRAOF, can you reproduce defaulting to UXA locally?07:37
didrocksRAOF: on ati, we have another issue in fact making unity-system-compositor segfaulting07:58
didrocksRAOF: libEGL warning: Could not open driver /usr/lib/i386-linux-gnu/egl/egl_gallium.so (libOpenVG.so.1: cannot open shared object07:58
didrocksfile: No such file or directory)07:58
RAOFdidrocks: Oooh, really?07:58
RAOFThat's odd.07:58
RAOFI clearly had libOpenVG installed.07:58
didrocksRAOF: so, we should install libopenvg1-mesa I think07:58
RAOFYeah.07:58
didrocksRAOF: but maybe the deps don't take it07:59
didrockslet me see07:59
RAOFActually, that shouldn't be fatal; I think it should go on and load egl_dri2.so07:59
didrocksRAOF: so libegl1-mesa:i386                         9.2~git20130628.g6b676e6-0ubuntu0+mir4-jenkins86saucy008:01
didrocksbut libopenvg1-mesa:i386                      9.1.4-0ubuntu308:01
didrocksRAOF: weird that shlibdeps doesn't force the latest version08:01
didrocksRAOF: we need libopenvg1-mesa from the ppa, right?08:01
RAOFWe shouldn't, no.08:02
RAOFlibopenvg1-mesa is installed, then?08:02
didrocksRAOF: right, but not the version from the ppa08:03
didrocks(you didn't list it in the things to upgrade)08:04
didrockscan the ABI has changed?08:04
RAOFYeah, I didn't expect it to be necessary; libopenvg should have a fixed ABI.08:04
didrocksRAOF: as soon as the slot is free, I'll retry forcing the upgrade to latest08:04
didrocksI was thinking it was the race again, but longer timeout needed on ati08:05
didrocksbut not the case :)08:05
RAOFdidrocks: Yeah, thanks. I'm surprised. Looks like this might be a libegl1-mesa-drivers bug (lack of appropriate depends: on libopenvg1-mesa)08:05
didrocksRAOF: sounds likely the cause, will keep you posted (I think the slot will be free in 10 minutes08:05
didrocks)08:05
RAOFTest-building patch series to ensure they build at each commit is annoying.08:07
didrocksRAOF: ok, now we get:08:12
didrocksERROR: /build/buildd/mir-0.0.7+13.10.20130719ubuntu.unity.next/src/server/graphics/gbm/gbm_cursor.cpp(46): Throw in function mir::graphics::gbm::GBMCursor::GBMBOWrapper::GBMBOWrapper(mir::graphics::gbm::GBMPlatform&)08:12
didrocksDynamic exception type: boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::runtime_error> >08:12
didrocksstd::exception::what: failed to create gbm buffer08:12
RAOFdidrocks: Hm. What platform is that?08:20
RAOFdidrocks: Obviously it's ATI, but what chipset?08:20
didrocksRAOF: 05:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cedar [Radeon HD 5000/6000/7350/8350 Series]08:20
=== alan_g|EOD is now known as alan_g
didrocksRAOF: do you want a ssh access to the machine?08:20
RAOFdidrocks: Sure, why not.08:21
didrocksRAOF: prefered ssh public key? ;)08:21
RAOFFrom launchpad?08:21
didrocksoui have 2!08:21
didrocksseems you are someone who can't decide! ;-)08:22
RAOFchris@Ed08:22
didrocksok, grabbing that one :)08:22
alf_duflu: alan_g: @remove-graphics-viewable-area, my concern about using *Region is that "Region" has a particular meaning in graphics (an arbitrary collection of pixels) and we are not providing any related operations08:58
duflualf_: Maybe so, but I feel it's closer. So another word... ?08:58
* duflu reserves the right to not think with so little time left in the week08:58
alan_galf_: duflu: with members "clip_to_screen" and "make_fullscreen" I have a feeling that "screens" might be part of the role/name08:59
alf_alan_g: perhaps we should not have *Boundaries/Regions, but completely different names for the too interfaces09:00
alf_s/too/two/g09:00
alan_gScreenLayout?09:00
duflualf_: I think Region is most accurate. Qualify it as FooRegion if you like. The word "Boundaries" makes me imagine a set of lines in space, where the line equations are most important, rather than their contents09:00
alf_duflu: that was the intention, the boundaries are important, not the contents for these interfaces09:01
dufluDesktop?09:01
dufluA "Desktop" is the set of all displays rectangles...09:02
alan_gMy "desktop" is the thing that holds up tea, monitors, paper and pens...09:03
dufludesktop->clean(later)09:04
alan_g;)09:04
dufluPeople generally understand "is it on the desktop", and the concept extends to multiple monitors per desktop09:06
dufluIf you want to steal X/Compiz terminology then it's a "Screen", but that's confusing terminology when "Screen" encompasses multiple monitors09:07
dufluAlthough, arguably, the desktop could be transformed to take up less than the monitor :P09:08
alan_gShould we avoid using "screen" then and use, say, "output"09:09
alf_alan_g: duflu: I think that the Input(Coordinate?)Boundaries interface makes sense from the input subsystem's (the consumer's) perspective.09:09
alf_alan_g: duflu: I am not completely happy with SurfaceBoundaries, give the actual operations that it has, as Alan pointed out.09:10
dufluI would still hope for a name that describes the area/region, rather than just its edges09:11
dufluArea?09:11
alan_gDisplayMap ... clip_to_display()09:13
dufluMap has become an overloaded word, methinks09:15
tvoss_woot, not a single gpu hang with sna after bios upgrade on x220 while running a complete phoronix test suite09:19
duflutvoss_: There's a new BIOS? Or you were out of date?09:20
tvoss_duflu, bios is from May 201309:20
duflutvoss_: All other possible variables eliminated? :)09:21
tvoss_duflu, yes, I'm staring at this for quite some time now ;)09:21
duflutvoss_: Oh, I seem to have installed that BIOS already. No wonder mine has worked... (?)09:23
tvoss_duflu, I was actually down to inspecting individual registers of the gpu09:23
dufluEek09:23
tvoss_duflu, but: intel_gpu_top is really an awesome tool09:25
=== tvoss_ is now known as tvoss|benchmark_
alf_alan_g: duflu: OK, so how about, InputRegion::bounding_rectangle(), InputRegion::confine(Point) and DisplayOutputLayout::clip_to_output() DisplayOutputLayout::make_fullscreen()/resize_to_output()09:34
duflualf_: Sounds reasonable09:34
dufluThough I'm not sure what a "Layout" is. Didn't get that far09:35
dufluIf you make the change soon, I will abstain on it09:35
alan_g"size_to_output()"?09:35
alan_gDisplayOutputLayout seems a bit wordy09:36
alf_alan_g: DisplayLayout?09:36
alan_gDisplayArea?09:37
dufluOh. Yes it was so wordy I didn't understand "DisplayOutputLayout". I did understand "DisplayLayout" (or would "OutputLayout")09:37
alan_gDisplayLayout would be OK09:38
alan_gOutputRegion?09:38
alan_gIf it works for input, then why not for output?09:39
alf_alan_g: I don't think that DisplayArea/OutputRegion communicate that there are multiple outputs. InputRegion doesn't care about that (yet). Which brings up another point, that these interfaces may need to change names as the needs of shell/input change. This is just a first cut.09:42
alan_gDisplayLayout would be OK09:42
alf_alan_g: duflu: ok, so it's InputRegion and DisplayLayout (although I still think *Boundaries makes sense, since all these operations are about clipping/checking against/sizing to some boundary)09:46
duflualf_: OK. Please resubmit so I don't have to do any more reviews today :)09:46
duflu... so that it's at least not blocked on me09:47
alan_galf_: Something can have boundaries without being named for them09:47
alf_duflu: Feel free to pre-abstain :)09:47
alf_alan_g: Sure, but as I mentioned above, in this case the boundaries are more important than that something in terms of what the consumer needs. Anyway, I think both approaches are reasonable, so I am not fussed :)09:50
didrockstvoss|benchmark_: that wasn't enough: https://launchpadlibrarian.net/145330493/buildlog_ubuntu-saucy-armhf.mir_0.0.7%2B13.10.20130719.1ubuntu.unity.next-0ubuntu1_FAILEDTOBUILD.txt.gz09:52
didrockstvoss|benchmark_: at least, it doesn't hang, but unit-tests are segfaulting09:52
didrockstvoss|benchmark_: duflu: alf_: any of you wanting to ack https://code.launchpad.net/~didrocks/mir/disable-unit-armh-tests/+merge/175786?09:57
didrocksas per discussion, we disable the tests right now, then before a week pass by, tvoss|benchmark_ promised to work on them again (with some platform-api trick)09:58
dufludidrocks: Nothing to see yet :)09:58
didrocksduflu: click on the commit :p09:58
dufluAlso.. don't we usually fix failing tests?09:58
didrocksduflu: well, it's been 3 weeks they are failing and preventing us for pushing mir09:59
tvoss|benchmark_didrocks, +109:59
didrocksduflu: so no, you don't usually fix failing tests ;)09:59
didrocksthanks tvoss|benchmark_! I'll rerun a build again once merged09:59
didrocksduflu: so the new deal is "no mir by default until this is fixed"10:00
didrocksbtw, let me add that on the spreadsheet10:00
=== tvoss|benchmark_ is now known as tvoss_
didrockstvoss_: mind approving? (not tvoss|benchmark*ed* now? ;))10:01
dufludidrocks: I will let the western hemisphere decide. I need to start winding up...10:03
didrocksduflu: enjoy your week-end!10:03
tvoss_didrocks, want a happrovie?10:03
didrockstvoss_: I would love one! :)10:03
tvoss_didrocks, there you are10:04
didrocksthanks!10:05
* duflu also means Greece and Germany even though they're not in the western hemisphere10:08
dufluBah, details10:09
tvoss_didrocks, https://bugs.launchpad.net/platform-api/+bug/120300310:14
ubot5Launchpad bug 1203003 in platform-api "The platform api should offer an init method that resolves all required symbols and indicates whether the platform is available or not" [Critical,New]10:14
didrockstvoss_: sounds like the right strategy, thanks!10:14
tvoss_didrocks, https://bugs.launchpad.net/mir/+bug/120300410:16
ubot5Launchpad bug 1203004 in Mir "Tests disabled on armhf" [Critical,New]10:16
=== om26er is now known as om26er|away
=== om26er|away is now known as om26er
didrockstvoss_: mir built on armhf11:46
tvoss_didrocks, \o/11:46
didrockstime for unity-system-compositor ;)11:46
tvoss_didrocks, \o/11:46
didrocksheh ;)11:46
=== alan_g is now known as alan_g|lunch
=== alan_g|lunch is now known as alan_g
robotfuelkgunn: we have a saucy version of the ihv tests now http://certification-static.canonical.com/checkbox-ihv/13:24
kgunnrobotfuel: hey thanks13:28
robotfuelkgunn: I'll run that on some of the systems today in the lexington lab13:29
kgunnrobotfuel: good stuff & checkbox is single sign on right? so anyone could run their machine?13:30
robotfuelkgunn: I think the machine has to be added to hexr first to show up on c3, but anyone can run checkbox and view the results locally. it also produces an xls spreadsheet of the results.13:32
robotfuelkgunn: with the ihv tests there is no need for a network connection13:33
robotfuelkgunn: to run it you unpack the tarball cd in to the checkbox-ihv directory then run start_testing13:35
robotfuelkgunn: it installs all the required packages and runs checkbox's graphics tests13:35
=== mpt_ is now known as mpt
=== alan_g is now known as alan_g|tea
=== alan_g|tea is now known as alan_g
=== om26er is now known as om26er|afk
=== bschaefer_ is now known as bschaefer
=== om26er|afk is now known as om26er
* kdub is tempted to just keep overriding MirEvent for sending messages to client19:03
kdubbut thats probably already overridden too much19:03
racarrkdub: I think so! I wish we didn't use it at all19:16
racarrfor sending messages to the client19:16
racarrkdub: The thing is, most messages to the client19:16
racarrwill eventually need some sort of subscription mask19:16
racarrwell maybe not :p19:17
racarrbut I think a lot do, like, the client can "subscribe" to display changes19:17
racarrand this way, I think rather than use the mechanism we do now of the MirEvent, which is sort of half out of band19:17
racarrto our protobuf IRC, even though it is19:18
racarron the same socket19:18
racarrwe can model it as a call19:18
racarrwith multiple responses19:18
racarrand then on the client side, I think using19:19
racarrmore fine grained delegates, i.e. handle_input(MirEvent), handle_display_changed(information), handle_focus_lost19:19
racarretc. is just good loose coupling19:19
racarreven though we don't have many events to the client so far19:20
racarrit already causes noise in some of the tests19:20
racarrwhere for example, a test which wants to match client input events19:20
racarri.e. "this client gets an A key"19:20
racarrhas to either mute, or expect, irrelevant events like19:21
racarrgot Focus, lost focus (because it's a 3 client test)19:21
racarror maybe later like, display changed!19:21
racarrand then, what is qtubuntu going to do?19:22
racarrqtubuntu_handle_input(Event) switch(event->type) case mouse_event: qtubuntu_handle_mouse_event, case key_event: bla bla. case surface_configuration_event: switch event->surface->attrib...19:22
racarrblablabla19:23
racarrso I think we should just have19:23
racarrseperate delegates19:23
kgunnkdub: i think i know why someone did it...but isn't there another way we could flip buffers on our mir gl rendering ?19:33
kgunnother than glreadpixels19:33
kgunnglreadpixels not good for deferred arch's....it makes you wait for the entire pipe to finish rendering19:33
kgunnwhen, you could run away and do more stuff19:34
kgunnalso...there is some overlap in processing on the gpu that can be gained (not just the exploiting the cpu side of things)19:34
kgunnon a deferred mode arch....you can processing geometry & stuff...of the next frame, while your rendering out the previous frame19:35
kgunnthots ?19:35
kgunntvoss_ was seeing some perf hits on galaxynexus with unity8....and i was poking around and noticed that we're doing glreadpixels19:35
Stskeeps[21:33] <kgunn> kdub: i think i know why someone did it...but isn't there another way we could flip buffers on our mir gl rendering ?19:36
Stskeepserr..19:36
Stskeepssorry, slippage of the mouse19:36
Stskeeps(kid on my arm, ..)19:37
kgunnkdub: tvoss_ http://forum.imgtec.com/discussion/comment/7821#Comment_782119:39
racarrWhere are we doing19:42
racarrglReadPixels!19:42
racarrbesides the snapshot functionality.19:42
kgunnracarr: hmmm...now you're making me wonder if i know what i'm talking about :)19:44
kgunnmaybe that's where it is19:44
kgunngl_pixel_buffer.cpp19:45
racarrkgunn: I think it's only for snapshots19:46
racarr90% confidence index ;)19:46
kgunnracarr: thanks...i'll poke a bit more to ensure19:46
racarrI heard about some galaxy nexus performance problems though19:47
racarrso I guess something is going on19:47
kgunnracarr: it does make sense tho now that you say it....there's a bunch of copying etc going on19:47
kgunnracarr: yeah...i don't think anyone has tried demo shell on nexus4 (if you were feeling  jumpy :)19:48
racarrI did last week when it didn't really do anything19:48
racarrand it was fine19:48
kgunnracarr: and yeah...i know way too many little bastard issues on omap446019:48
racarrI will try again soon ;)19:48
kgunnto really worry too much19:48
racarrkind of fell out of sync with gerry this week because I missed thursday morning and was distracted by the stress-test wednesday morning19:48
kgunnracarr: did you launch an app ? and if so, any perf delta appearant ?19:49
kgunnracarr: he mainly bug fixed and put quality goodness into app management19:49
kgunnso the ui perf prob wouldn't have changed much19:49
racarrIt wasn't apparent on nexus 4 or desktop19:50
racarrbut I also didn't really push it XD19:50
racarrat the time it was like "ok lets figure out why nothing shows up on screen..."19:50
racarr*hours of furious recompiling*19:50
kgunngreyback: ^19:50
racarr"Yay it shows up on screen! *flicks aimlessly for a minute*19:50
racarr:p19:50
kgunnwrt nexus 419:50
kgunngreyback: in case you read scrollback...would be interesting to know...how often you're doing snapshot for apps19:52
kgunnthat could be a very bad thing (glreadpixels + a copy)19:53
kdubkgunn, there is another way20:11
kdub(sorry for the delay, was eating lunch)20:11
MichaelPwhen Mir is shiped with the next release. How is it going to be with ati proprietary drivers ?20:12
kdubkgunn, nexus4 has similar problems with long glReadPixels performance20:12
racarr"There are only two hard things in Computer Science: cache invalidation and naming things."20:26
racarrhaha, I feel like this speaks to our20:26
racarrscenegraph/synchronization data store topic *waves hands*20:27
kdubhah20:29
kgunnkdub: so that glreadpixels is your trigger for flipping ? or rather is it just for snapshot support (in which case this is ok)....and i tend to agree with racarr that's what this is20:31
kgunnenlighten if i'm wrong20:32
kdubkgunn, i'm unsure what the question means20:32
kgunnkdub: sorry...i am refering to the use of glreadpixels in the code20:33
kgunni am thinking its only relevant to when a shell client wants a snaphot20:33
kgunn(e.g. it shouldn;t be called every frame)20:33
kdubright, of course20:33
kdubthe normal render pass does not hit that function20:33
kgunnMichaelP: in 13.10 we would be delighted to see proprietary driver support appear from the various vendors20:34
kgunnbut that's not ours to promise20:34
MichaelPkgunn: yeah i know.. distro's like arch you either have to downgrade xorg or use ati beta drivers...20:36
MichaelPnow whats mir supose to do that xorg don't ?20:37
kgunnMichaelP: be younger :)20:38
kgunnseriously though....that's one part20:38
kgunnbeing a bit more focused w/o legacy of decades of special interest add-ons will help maintainability20:39
MichaelPSometimes younger is dummer !!lol20:39
kgunnand this is all a journey20:39
kgunnif you ask what xmir will do...nothing20:39
kgunnits about a conservative step of introducing mir into distro, yet with real road miles on it20:39
kgunnits easy to keep designing, tweaking, etc...but maturity cannot be delivered like a feature20:40
racarrOne thing that mir is supposed to do that X doesn't is make sense from the ground up :p20:41
kgunnlike Orsen Wells said of Paul Masson wine (and if you don't know what that is...then you're the younger of us ;)20:41
racarrand shine some sense up the whole stack, as opposed to20:41
racarrpushing nonsense and hacks up the whole stack :p20:42
MichaelPfrom what i was reading on google about mir.. was sound like with in the next few releases of other distro's everyone eles wants to switch to wayland20:42
kgunnMichaelP: can't learn everything from reading20:43
MichaelPIm downloading 13.10 right now to check it out20:43
kgunnMichaelP: awesome!20:44
MichaelPkubuntu said kwin doesn't support mir20:44
kgunnMichaelP: i heard that too...20:44
kgunnthe beauty of open source...20:45
kgunnMichaelP: another thing i think mir is bringing beyond xorg20:45
MichaelPBut yet i watched a video on google.. with unity.. gnome shell.. kde xcfe useing mir20:45
kgunnis that its been built around having an answer on mobile & desktop...20:46
racarrxmir :)20:46
kgunnusing android drivers and then of course mesa20:46
kgunnanother big decision is server side alloc'd buffers20:47
MichaelPI have trouble with the free ati drivers... i use HP laptop... then to watch music video's i plug into my hdmi tv.. So if im in like say gnome.. i have trouble sizing the screen.. on the hdmi20:48
kdubracarr, why do input and events come back to the clients with the same callback?21:13
kdubis it driven by convenience or necessity? :)21:14
racarrkdub: That's what I was talking about earlier21:49
racarrI think it21:49
racarr's wrong21:49
racarrkdub: If you look 2.5 hours up in scrollback21:52
racarrI wrote a bunch on it21:52
kdubracarr, ah22:14
* racarr sets clock ahead 5 minutes23:55
* racarr beer top flies with a *clang*23:55

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!