/srv/irclogs.ubuntu.com/2016/09/28/#snappy.txt

ahoneybunmm if if get the tar.bz2 file what plugin do i need to use?01:18
ahoneybunaudacious 3.801:18
mupBug #1628357 opened: A deamon fails with: No home directory found <Snappy:New> <https://launchpad.net/bugs/1628357>02:42
=== JanC is now known as Guest85708
=== JanC_ is now known as JanC
=== jibel_ is now known as jibel
mupPR snapd#2017 opened: Download deltas (but do nothing with them yet) when env var is set <Created by absoludity> <https://github.com/snapcore/snapd/pull/2017>06:26
dholbachgood morning06:33
dholbachmhall119, nice work on the content snap blog!06:38
didrockszyga_: hey! do you know the rationale for the "grade" keyword which is mandatory now? (There has been no announcement on it if I didn't miss anything?)07:04
didrocksdholbach: maybe you know? ^07:04
didrocksok, found a cryptic explanation on some design doc07:07
dholbachdidrocks, no, I don't07:10
didrocksdholbach: I just added some changes to take into account the grade channel, also, going to change few things for --dangerous install with latest version07:13
=== cpaelzer_ is now known as cpaelzer
dholbachdidrocks, to the codelabs or where?07:28
didrocksdholbach: codelabs07:33
didrocks(done)07:33
dholbachdidrocks, awesome - thanks07:34
didrocksyw!07:35
mupPR snapd#2016 closed: many: rename apply-config hook to configure <Created by kyrofa> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/2016>07:36
popeyogra_: is the process of porting to new devices well documented? Is it as hard as porting to new phones? I have a banana pi I'd like to see ported to...07:49
popeyhuh, turns out they've looked at this before. http://forum.banana-pi.org/t/snappy-ubuntu-core-on-banana-pi-bpi-m2/43207:59
dholbachdidrocks, can we try the collaboration feature for snap-codelabs?08:02
dholbachI haven't seen in action yet and it might make sense in this case.08:02
didrocksdholbach: hum, what do you mean by collaboration feature?08:18
didrocksdholbach: I'm trying to fix the "resume" not working FYI ;)08:18
dholbachdidrocks, IIRC there's a few feature where you hit the "collaboration" link for a snap in myapps and can enter an email for somebody with whom you want to maintain the package together08:19
didrocksdholbach: oh, that, maintaining together08:21
didrocksyeah08:21
didrockslet me see if I have a link for this08:21
didrocksdholbach: sent08:22
dholbachhah, fun - the message was in French08:23
dholbachgreat, that was painless08:23
=== tasdomas` is now known as tasdomas
didrocks;)08:28
popeyhaha, got that too08:31
popeythought it was spam, being french ;)08:32
popey"You have successfully been granted administrative access to snap-codelabs.didrocks." - MUhahahahah08:33
mupPR snapd#2018 opened: snapstate: pass errors from ListRefresh in updateInfo <Created by mvo5> <https://github.com/snapcore/snapd/pull/2018>08:39
mupPR snapd#2012 closed: interfaces/builtin: add missing rule to allow run-parts to execute all resolvconf scripts <Created by morphis> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/2012>08:51
ogra_popey, porting is a lot easier ... but you need to build kernel, uboot and a gadget snap09:00
popeyogra_: is it documented?09:00
ogra_not really ... thats kind of on my TODO09:00
ogra_(at least a blog post is ... )09:01
popeyok09:02
mupPR snapd#2007 closed: interfaces: ppp: load needed kernel module <Created by alfonsosanchezbeato> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/2007>09:07
ogra_popey, oh, and it gets a lot eaier if your board is already supported by our linux-generic armhf kernel (there is a bunch o borads that are supported by default in that one09:14
ogra_)09:14
ogra_https://launchpadlibrarian.net/287031519/buildlog_snap_ubuntu_xenial_s390x_ubuntu-core_BUILDING.txt.gz09:16
ogra_Staging livebuild09:16
ogra_Priming livebuild09:16
ogra_'utf-8' codec can't encode character '\udcc4' in position 93: surrogates not allowed09:16
ogra_Traceback (most recent call last):09:16
ogra_  File "/usr/share/launchpad-buildd/slavebin/buildsnap", line 191, in main09:16
ogra_    builder.build()09:16
ogra_cjwatson, ^^^ i that buildnaps or snapcrafts fault ?09:16
ogra_*is that09:16
mupPR snapd#2008 closed: overlord/state: prune old empty changes <Created by niemeyer> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/2008>09:17
ogra_(havent seen that one before ... and i guesss it might just succeed if i re-try)09:18
ogra_(since all others have succeeded)09:19
mupPR snapd#2019 opened: store: retry download on 500 <Created by chipaca> <https://github.com/snapcore/snapd/pull/2019>09:34
mupPR snapd#2020 opened: prevent timeout while waiting for log on systemctl status <Created by fgimenez> <https://github.com/snapcore/snapd/pull/2020>09:46
cjwatsonogra_: must be snapcraft, I think09:48
cjwatsonogra_: if you look closely at the buildsnap traceback it's just reporting the non-zero exit status09:48
mupPR snapd#2021 opened: releasing package snapd version 2.16 <Created by mvo5> <https://github.com/snapcore/snapd/pull/2021>10:14
ogra_well, let me just try a re-build ... i dont really see any obvious other errors and yesterdays build has worked ...10:23
mupPR snapd#2020 closed: tests: prevent timeout while waiting for log on systemctl status <Created by fgimenez> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/2020>10:25
* ogra_ files bug 162845710:41
mupBug #1628457: snapcraft fails on s390x with utf8 error <Snapcraft:New> <https://launchpad.net/bugs/1628457>10:41
mupPR snapd#2021 closed: debian: releasing package snapd version 2.16 <Created by mvo5> <Merged by mvo5> <https://github.com/snapcore/snapd/pull/2021>11:05
=== jkridner|pd is now known as jkridner
mupPR snapd#2022 opened: Add links to IRC, mailing list and social media <Created by dholbach> <https://github.com/snapcore/snapd/pull/2022>12:31
mupPR snapcraft#833 opened: Add links to IRC, mailing list and social media <Created by dholbach> <https://github.com/snapcore/snapcraft/pull/833>12:33
zyga_didrocks: I don't know about grade, sorry12:35
=== zyga_ is now known as zyga
zygajdstrand, tyhicks: mixed news about /media sharing, still no luck, I'm debugging and investigating12:36
zygathis is somewhat frustarating as it is extremely easy to break the system12:36
jdstrand:\12:36
zygamy current quest is to figure out where pivot_root is giving up with EINVAL, I'm just patching the kernel12:37
jdstrandzyga: you are on xenial?12:38
zygabut I also seem to be missing some other things that are required to make this work, most importantly, it seems that mount points happily leak outside12:38
zygayes, I'm doing all of this on xenial12:38
jdstrandzyga: but no kernel trace?12:38
zygajdstrand: ?12:38
jdstrandzyga: you're kernel isn't oopsing or anything?12:39
zygajdstrand: ah, no, nothing like that happens12:39
zygajdstrand: I think that the crashes earlier can be trivially caused by what looks like recursive mount that sees itself and just continues12:40
zygajdstrand: but I also had less adventourous examples where after the test program has finished I had something I couldn't unmount12:40
zygajdstrand: or unmount -l would really detach /12:40
jdstrandzyga: ok, I ask just to be sure-- in another channel there was an issue with pivot_root causing an oops if running snapd in an lxd container, and the timing of your comment was just odd. nm me12:40
zygajdstrand: oh, interesting12:41
zygajdstrand: I bet there is some new ground we are breaking here12:41
jdstrandoh totally12:42
jdstrandall kinds of new ground :)12:42
zygamoving to a VM is actually better as native is slow/costly to recover12:43
jdstrandindeed :)12:43
zygajdstrand: from what I see so far I think we need MS_UNBINDABLE at a strategic spot or everything blows up12:44
zygajdstrand: but I don't have a working demo that goes all the way to pivot_root and behaves12:44
zygajdstrand: well, investigating :)12:44
zygaoh, curious12:46
zygajdstrand: pivot_root documentation really sucks, kernel sources are better12:46
jdstrandkyrofa: hey, do you have an agreed to list of keys that are allowed in the hooks yaml?12:46
jdstrandkyrofa: eg:12:47
jdstrandhooks:12:47
jdstrand  <???>:12:47
jdstrand    plugs: ...12:47
jdstrandkyrofa: and aiui, 'plugs' is the only thing that can be in there, but this is valid:12:47
jdstrandhooks:12:47
jdstrand  <???>: null12:47
jdstrandkyrofa: also, if the hook key names are defined, do they map to files in meta?12:48
jdstrandkyrofa: perhaps a better question is: is there up to date documentation on how hooks are supposed to work? :)12:48
ogra_you just attach them to the eyelet on your computer :P12:51
sergiusensogra_ I am not sure how to fix your problem or debug it and I bet adding --debug is not going to be easy12:57
sergiusensogra_ can you use a hacked up snapcraft to run through the build?12:57
ogra_sergiusens, yeah, i was waiting for you to show up here ... i guess we might need some cjwatson help12:57
sergiusensogra_ well, I recall you forked snapcraft once12:58
ogra_i could do that i guess, yeah12:58
sergiusensso we don't need him12:58
ogra_well, i guess a debug toggle might be helpful in general ... cant be that hard to add code for this to the lp builder12:58
ogra_but yeah, as a quick hack, tell me what changes you need and i'll push a debug snapcraft to the PPA temporary12:59
cjwatsonogra_: the problem with that is that we have nowhere to set it in LP13:00
cjwatsonso it would not be a trivial stack of changes13:00
ogra_ah, because it would need UI ...13:00
ogra_yeah13:00
cjwatsonand a database change, and a model change, and passing it over the channel to the buildd13:00
cjwatsonso, you know, I can spend two days on all that or you can push a debug package to the PPA :)13:01
sergiusenscjwatson ogra_ in all fairness I need to finish up the rework of using project owned exceptions for everything we know about and let the built-ins fly away to stdout/stderr13:01
ogra_heh, ok, my imagination didnt go far enough here :)13:01
sergiusensogra_ http://paste.ubuntu.com/23246720/13:02
ogra_ah, thats definitely easier than what colin described above :)13:02
dz0nynot sure what rules you have for snapcraft or snapd but this could be nice publicity https://hacktoberfest.digitalocean.com/13:02
cjwatsonalso perhaps a sensible alternative would be to allow a project to put debug: true in snapcraft.yaml?13:04
cjwatsonof course wouldn't be active from the very start13:04
sergiusenscjwatson yeah, that is the debian/rules path; I was trying to keep those two things separate, but I guess it will be inevitable13:05
kgunnkyrofa you about ?13:07
Elleohas anyone run gdb on a snap inside unity8? I've managed it in unity7, but in unity8 I just get a permission denied error even when run as root13:07
sergiusensogra_ this is the branch that broke you https://github.com/snapcore/snapcraft/pull/796/files13:08
mupPR snapcraft#796: Only discover dependencies once per file <Created by kyrofa> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/796>13:08
sergiusensogra_ I failed to notice this got removed `fs_encoding = sys.getfilesystemencoding()`13:08
ogra_geez, how can i make github not show me that "we've made soe changes" thing ... so annoying13:08
sergiusensogra_ accept the changes, let them flow and they will go :-P13:09
ogra_i think i did that a few times now13:09
* ogra_ tries again13:09
oparozThe discussion about /media earlier was to allow snaps access to /media? That would be great :)13:10
ogra_sergiusens, well, it is funny that it only affects s390x ...13:11
sergiusensogra_ well, funny as it may be, I bet that is the issue and your ppa run will luckily prove it13:15
mupPR snapd#1832 closed: interfaces/builtin: support time and date settings via 'org.freedesktop.timedate1 <Reviewed> <Created by stolowski> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/1832>13:17
zygajoc: hey, do you have a second?13:19
joczyga: sure13:20
zygajoc: I need to verify something for GPIO interface13:20
zygajoc: if you have hardware with GPIOs around (could be any device really, including pi) I can give you an udev rule that will export one of them to userspace13:21
joczyga: yep i have hardware can try it on13:22
zygajoc: can you give me a pastebin of: udevadm info --export-db | grep -i gpio13:23
jocone sec, booting it13:23
zygajoc: what we want in a file, e.g. /etc/udev/rules.d/foo.rules13:23
ogra_sergiusens, grrr ... snapcraft build fails in the tests13:24
zygajoc: and then a correctly done RUN line :)13:24
kgunnElleo: i just saw your statement, interesting...13:24
zygajoc: but I need the details from your device first13:24
kgunntedg: ^^^13:24
ogra_is there some var i could set to disable them altogether ? (thats not the first time i have to hack them up)13:24
sergiusensogra_ oh right, disable them as we test the error outputs and that applied diff would set it off13:25
sergiusensogra_ tests, no, just debian/rules overrides13:25
Elleokgunn: not currently certain if the permission denied is coming from gdb itself or snap, either way it happens very early on in loading things13:25
kgunnElleo: is the snap --devmode?13:26
Elleokgunn: yeah13:26
kgunnElleo: i would suspect the general confinement of u8 itself13:26
kgunne.g. click13:26
joczyga: http://paste.ubuntu.com/23246802/13:27
Elleokgunn: interestingly I can run "snap list" in gdb, but not "snap run ubuntu-keyboard"13:27
kgunnElleo: are you on yakkety or xenial?13:27
Elleokgunn: xenial13:27
Elleokgunn: but with the overlay13:27
kgunnsure13:27
joczyga: gpio 346 would be a nice one to test13:27
kgunnElleo: wonder if you need to break confinement on snappy...this is weird, but install classic on core on classic :-P13:29
kyrofakgunn, I am now13:29
kgunnElleo: https://github.com/snapcore/classic-snap13:29
Elleokgunn: I'm currently running unity8 via the unity8-desktop-session rather than the unity8 snap, wouldn't that avoid that confinement?13:30
kyrofakgunn, sorry, standup is at 0600, I wake up at 0550, and space IRC until about 0630 or so :P13:30
kgunnkyrofa hey, so i wanna build a qt demo, and i have the git source link....but the actual qt .pro file is kinda buried13:30
kgunnkyrofa https://github.com/qt/qtdeclarative/tree/dev/examples/quick/demos/photoviewer13:30
kyrofaHmm13:30
kgunnkyrofa so wondering is there a way to point there ?13:30
tedgkgunn: I'm confused at what you're pointing me at.13:31
kgunntedg: <Elleo> has anyone run gdb on a snap inside unity8? I've managed it in unity7, but in unity8 I just get a permission denied error even when run as root13:31
kyrofakgunn, did you try using the `project-files` option in the qmake plugin?13:32
kyrofajdstrand, yes indeed13:32
kgunnkyrofa ....bah! thank you13:32
kgunnkyrofa next time just reply rtfm :)13:32
kyrofakgunn, hahaha, not my style ;)13:33
ogra_yeah, thats so un-ubuntu13:33
Elleokgunn: same result when running inside classic13:33
kyrofajdstrand, you have a good grasp of this, but this might reaffirm: https://github.com/snapcore/snapd/blob/master/docs/hooks.md13:34
zygajoc: thanks, let me finish a meeting and I'll be back to this13:34
cjwatsonsergiusens: could you retry tests on https://github.com/snapcore/snapcraft/pull/831 ?  they should pass now (or at least get further)13:34
mupPR snapcraft#831: 'sign-build' implementation <Created by cprov> <https://github.com/snapcore/snapcraft/pull/831>13:34
jock13:34
kyrofajdstrand, the hooks that are supported are maintained in the snapd code though, and the list will change. Are you adding them to the review tools?13:35
jdstrandkyrofa: right now I have some basic tests for hooks in the review tools that I added yesterday. I did read that file. I was wondering if there was a list-- that doc says none are currently supported13:37
jdstrandI can wait on added valid ones-- that isn't a big deal13:37
Elleokgunn: get the same thing if I try running strace on it, happens when running the ubuntu-core-launcher: http://pastebin.ubuntu.com/23246832/13:37
jdstrandalso, this output is less than helpful:13:37
kyrofajdstrand, there's a list of one as of now, but the PR that adds it to the doc hasn't landed yet13:37
jdstrand$ snapctl13:37
jdstranderror: snapctl requires SNAP_CONTEXT environment variable13:37
kyrofajdstrand, it's called `configure`13:37
jdstrandand snapctl -h13:37
kyrofajdstrand, yeah, snapctl is typically used within hooks13:37
* jdstrand notes that he was told to use 'snapctl -h' by the aforementioned doc :)13:38
kyrofajdstrand, oh right-- snapctl -h will work in the next release13:38
jdstrandkyrofa: ok, thanks. this is helpful13:38
kyrofaSide effect of only maintaining docs in master, heh, sorry13:38
kyrofajdstrand, but yeah, that doc should be updated as hooks are added13:39
Elleokgunn: aha13:40
* kgunn waits anxiously13:40
Elleokgunn: all snaps are failing to run in unity8's terminal for me13:40
Elleokgunn: including simple things like hello-world, strace shows it trying to do some network stuff and then getting an EACCESS error13:41
jdstrandElleo, kgunn: curious if you are using the newest snapd in yakkety-proposed and the snap-confine in yakkety13:41
Elleojdstrand: I'm running xenial + stable-overlay13:41
jdstrandI see, nm then13:42
zygajoc: ok, back13:43
Elleokgunn: ah, and now after running hello-world successfully by sshing in, I get the permission denied error when attempting to start it13:43
zygajoc: so that device three distinc GPIO chips, right?13:43
zygajoc: what do you see in /sys/class/gpio?13:43
joczyga: yes three chips13:44
Elleokgunn: ah, seems to actually be /run/snapd.socket it gets the error on: http://pastebin.ubuntu.com/23246852/13:45
kgunnotp but will read up in a bit13:46
kyrofaHey ogra_, got a sec?13:47
ogra_kyrofa, i guess i do13:49
kyrofaogra_, saw a question on askubuntu that made me think of you: https://askubuntu.com/questions/829118/ubuntu-core-power-failure-resistance13:50
kyrofaogra_, I suspect the overall answer to the question is no, is that correct?13:51
ogra_kyrofa, we redice the writes as much as we can and since we use ext4 the recovery should also work fins after a power failure13:52
ogra_*fine13:52
ogra_i often enough just unplug the power when testing13:52
ogra_with no ill effects13:52
ogra_*reduce the writes13:53
kyrofaogra_, makes sense. But in terms of the design, things are split like that for security more for increasing the lifetime, since the writable partition is still on disk. Right?13:53
kyrofaThe read-only bits are snaps which are still written to disk as well13:53
ogra_i guess wearing out the SD really depends on the snaps you use and if they do a lot of wild write operations13:53
ogra_the OS itself is very unlikely to ever wear out an SD13:54
ogra_kyrofa, yes, the RO bits are written to disk on "snap refresh" ...13:54
kyrofaogra_, I dunno, I go through an SD card a year on my plug computer. I figured it was due to logging13:54
Elleokgunn: not sure if it's relevant, but when I did the initial "snap login" it forced me to do it as root, I don't know if that's resulted in something having odd permissions (although snap stuff works fine under unity7 still)13:55
Elleokgunn: well, via sudo13:55
ogra_kyrofa, yeah, that can indeed be ... but we dont have swap, /tmp is a tmpfs in ram and writes on OS level only happen for the few writable bind mounts we actually have ...13:56
ogra_kyrofa, the thing that will really wear it out is a snap that does a lot of writing13:56
ogra_but not the OS13:57
ogra_logging on its own is usually very quiet unless you start running snaps with --devmode ... then it gets super agressive13:57
ogra_(which i'd really like to get rid of)13:57
kyrofaogra_, alright, thanks for the explanation! I think I have enough to answer that question now unless you want to tackle it13:58
ogra_all these apparmor ALLOWED lines wil eat your SD in no time if you run a devmode snap for a while13:58
ogra_no, go ahead :)13:58
sergiusensogra_ did it finish yet?14:08
ogra_sergiusens, ages ago ... but the publisher is a bitch lately14:08
ogra_still waiting ...14:08
sergiusensogra_ lol; ssh and grab the logs :-)14:08
ogra_(disabling the tests makes the build **really* fast :) )14:09
ogra_sergiusens, no, i'm still waiting for the snapcraft package to be published in the PPA14:09
ogra_no logs to grab yet :)14:09
sergiusensogra_ oh, I thought you built the snap already!14:10
sergiusensdarn this is slow14:10
ogra_yeah14:10
ogra_the publisher is a pain atm14:10
=== chihchun is now known as chihchun_afk
ogra_sergiusens, snap build started ...14:22
sergiusensogra_ \o/14:26
kyrofaogra_, does http://askubuntu.com/a/830774/261753 look reasonable?14:31
ogra_kyrofa, looks fine to me14:33
kyrofaogra_, alright, thanks for the help!14:34
ogra_sergiusens, https://launchpadlibrarian.net/287088900/buildlog_snap_ubuntu_xenial_s390x_ubuntu-core_BUILDING.txt.gz14:34
zygajoc: can you tell me what you see in /sys/class/gpio please14:36
joczyga: yes, what you said - three gpio chips as indicated by udev and export/unexport14:37
joczyga: no gpios have been exported yet14:37
mvodbarth: does #65 for snapweb the "WI" mean "work-in-progress" ? or work-item? or something else :) ?14:39
ogra_west india problem14:40
zygajoc: ok, great,14:40
mupPR snapd#2023 opened: cmd/snap,configstate: rename apply-config variables to configure <Created by kyrofa> <https://github.com/snapcore/snapd/pull/2023>14:40
mupBug #1628559 opened: Can't install more than 1 package in one command <Snappy:New> <https://launchpad.net/bugs/1628559>14:42
dbarthmvo: WIP indeed; lenses playing tricks with my eyes...14:42
ogra_use scopes then14:43
ogra_:P14:43
dbarthmvo: i'll rebase and push shortly14:43
mvodbarth: cool, thanks14:43
dbarthogra_: :)14:44
zygajoc: if you 'echo 123 > /sys/class/gpio/export' does it just do what is expected?14:45
zygajoc: where 123 is any number in the expected range14:46
joczyga: yep14:46
zygajoc: thanks14:47
* zyga wonders what the udev rule trigger should be14:47
mupPR snapd#2024 opened: docs: add `configure` hook to hooks list <Created by kyrofa> <https://github.com/snapcore/snapd/pull/2024>15:17
shuduoogra_: hi in recent pi3 beta image, there is no camera slot in "snap interfaces" output. is it expected?15:18
ogra_shuduo, hmm, i wouldnt know who is supposed to actually provide it15:20
zygastgraber: hey, do you have a moment15:20
ogra_shuduo, ounds liek you sshoudl file a bug as a starting point15:21
shuduoogra_: sure if it's a tracked issue i would file a bug15:22
ogra_sergiusens, have you seen the log above ?15:27
ogra_https://launchpadlibrarian.net/287088900/buildlog_snap_ubuntu_xenial_s390x_ubuntu-core_BUILDING.txt.gz ... not really a lot more info i must say ...15:28
sergiusensogra_ yes, I wish I printed(filename) but at least I know where to look now15:28
ogra_yeah15:28
ogra_iirc we are using C.UTF-8 ... i wonder if thats any different on s390x than on the other arches15:29
sergiusensogra_ all the same15:30
sergiusensogra_ can I give you a quick other patch?15:30
ogra_sure15:30
ogra_sergiusens, btw https://bugs.launchpad.net/hplip/+bug/149836615:32
ogra_s.encode("utf-8", errors="surrogateescape")15:32
ogra_seeems to be a valid workaround15:32
sergiusensogra_ right, we don't encode anything now from the new source of information; I want to try without surrogateescape, but I guess we can go full steam ahead15:33
=== chihchun_afk is now known as chihchun
sergiusensogra_ http://paste.ubuntu.com/23247199/15:42
shuduoogra_: if a device like pi3 neither connected to PC with USB debug cable nor connect to HDMI monitor, it will not boot up. is it expected? since i see my pi3 boot well with debug cable. but if I unplug debug cable, i can't see its ethernet get IP via nmap command.15:49
zygahmm15:56
ogra_shuduo, no, thats not expected, if th device is properly set up via console-conf it should boot (and does here)15:57
shuduoogra_: sadly it is almost 100% reproducable at my side15:58
ogra_weird15:58
shuduoogra_: sorry false alert. i tried few more times, i'm sure it works well. i guess i run nmap too fast after it shows connection estiblished16:07
ogra_heh, yeah, arm devices demand some level of patience ;)16:08
ogra_sergiusens, so the package has just finished building ... lets see if the publisher manages to publish in under 60min :P16:09
ogra_zyga, niemeyer see shuduo's question above regarding the camera interface on images ... on actual images, who woud provide that slot and how would we define it ? i.e. if there is camera hardware, woud we/i have to define that interface in gadget.yaml ? would it magically show up once i plug in a USB camera etc16:13
oparozAre there plans to let Snaps mount external storage (NFS, CIFS)?16:15
mupBug #1628592 opened: no camera slot in pi2 or pi3 image <Snappy:New> <https://launchpad.net/bugs/1628592>16:16
ogra_i think there was some kind of interface planned for this16:16
oparozThat's missing for enterprise snaps16:16
ogra_though this would bee network storage ...16:16
ogra_not external torage (like USB sticks)16:16
ogra_+s16:17
niemeyerogra_, shuduo: The core or the gadget snap would provide the camera slot. Not in gadget.yaml.. snap.yaml. Hot plug of USB devices is coming..16:17
shuduoniemeyer: so it is not exist in amd64 core image too, right? i can see camera interface exist from "snap interfaces" on 1604 desktop.16:20
ogra_because your desktop/laptop has a camera ?16:21
shuduoogra_: actually no. my camera can't be detected by 1604 desktop. :D16:22
stgraberzyga: what's up?16:23
shuduoniemeyer: i want to show webcam demo or face-detection demo to customer on core. may i know ETA of camera interface?16:24
niemeyershuduo: Don't we already have one?16:25
niemeyerChecking16:25
niemeyerWe do..16:26
niemeyerhttps://github.com/snapcore/snapd/blob/master/interfaces/builtin/camera.go16:26
ogra_niemeyer, we do but it does not seeem to show up on the imagees (though i wouldnt know hwo to enable it)16:26
zygastgraber: hey16:27
zygastgraber: I'm trying to crack a problem that you may know much more about16:27
ogra_shuduo, what kind of camera are you trying to use ?16:27
shuduoniemeyer, ogra_ so the question become when the camera interface show up in image. :)16:28
zygastgraber: I'd like to create a separate mount namespace in which / is a slave of the real / but /media (or some other location) is not a slave but the real thing16:28
ogra_shuduo, depends on the camera ... i there is no camera on the device by default i dont think we can show the slot ...16:28
zygashuduo: it only shows up automatically on classic AFAIR16:29
ogra_shuduo, if it is a USB camera it should be handled by the USB hotplug interface that niemeyer mentioned above16:29
niemeyershuduo, ogra_: You don't need to do anything.. it's already supported both in the images and in 16.04:16:29
niemeyersnap interfaces | grep camera16:29
* zyga looks16:29
niemeyerJust add a plug to the snap, and connect it after installing it16:29
shuduoogra_: normal usb camera, some model from logitech.16:29
ogra_ogra@pi3:~$ snap interfaces|grep camera16:30
ogra_ogra@pi3:~$16:30
zyganiemeyer: camera is only implicitly defined on classic16:30
ogra_we do not expose it on the images16:30
niemeyerHuh16:30
zyganiemeyer: and it is also reserved for core snap16:30
zyganiemeyer: it smells wrong16:30
niemeyerzyga: The slot being reserved is correct16:31
zyganiemeyer: should be either something the gadget can add or always there16:31
ogra_reserved sounds ok16:31
niemeyerzyga: Should always be there..16:31
zygaay, I'll make a PR quickly16:31
ogra_zyga, assuming you can aways plug a USB camera in i think it should always be there16:31
zygayes, I agree16:31
ogra_zyga, then bug #1628592 is yours ;)16:31
mupBug #1628592: no camera slot in pi2 or pi3 image <Snappy:New> <https://launchpad.net/bugs/1628592>16:31
stgraberzyga: so you want a given path outside the mntns to be / in the mntns but want /media to be the same and still get you any new mount under it?16:32
ogra_shuduo, thanks for pointing it out !16:32
zygastgraber: yes, I tried a few prototypes with just command line tools (mount, unshare, pivot_root) and I didn't get anything sensible16:32
zygastgraber: it is surprisingly easy to blow the machine up16:33
shuduoogra_: good to know someone will take care it. go to sleep now. bye all. :)16:33
ogra_bye16:33
mupPR snapd#2025 opened: snap/implicit: don't restrict the camera iface to clasic <Created by zyga> <https://github.com/snapcore/snapd/pull/2025>16:34
sborovkovzyga: hi. Indeed after enabling xenial proposed and upgrading that armhf issue went away. My snaps run fine again.16:34
zygadone16:35
zygasborovkov: woot, that's great16:35
zygasborovkov: :)16:35
stgraberzyga: hmm, so I'd expect something like 1) unshare mntns 2) bind-mount new / somewhere 3) make target rprivate 4) bind-mount /media to target/media 5) make target/media rshared 6) pivot16:35
zygastgraber: let me try that quickly16:36
zygastgraber: my gut feeling is that without unbindable mount somewhere it blows up at 216:36
stgraberzyga: the kernel won't let you add mounts cross mntns, so you need to have all your rshared bits setup before you pivot16:36
zygastgraber: right, I patched my kernel to give extra diagnostic for pivot_root error cases16:36
mupPR snapcraft#834 opened: Remove the debian packaging <Created by elopio> <https://github.com/snapcore/snapcraft/pull/834>16:54
davmor2how do you go about reading the description of a snap from the commandline to know if you want to install it?16:57
kyrofaniemeyer, is what davmor2 is asking possible?17:08
ogra_xdg-open https://uappexplorer.com/apps?q=myssnapname&sort=relevance&type=snappy_application17:09
ogra_:P17:09
davmor2kyrofa, niemeyer: for example I can do apt show X and it will give me the long description as well as the short snap find only seems to show the short description17:09
ogra_just replace "mysnapname"17:09
davmor2ogra_: yeah that is fine but if you are on core you have no browser :P17:10
ogra_snap install a-browser :P17:10
davmor2ogra_: hence asking about a cli version17:10
ogra_i think there is no way ...17:10
ogra_apart from hand crafting a store query or some such17:11
zygawell, a nice CURL query probably gets you all the answers ;)17:11
zygabut I don't think you want that17:11
ogra_zyga, first you would need curl though17:12
ogra_ogra@pi3:~$ snap find curl17:13
ogra_error: no snaps found for "curl"17:13
ogra_ogra@pi3:~$17:13
zygaogra_: there's a nice http snap AFAIK17:17
ogra_true17:18
ogra_from the almighty Chipaca17:18
mupPR snapd#2026 opened: Connect fixes <Created by stolowski> <https://github.com/snapcore/snapd/pull/2026>17:21
zygastgraber: (sorry for the lag), that doesn't work quite well17:21
zygastgraber: and worst of all, after pivot_root fails I see lots of extra (stale) mounts in the main namespace17:21
zygastgraber: I'll share the script I have17:21
ogra_sergiusens, core snap building17:25
mupBug #1628616 opened: Hello nextcloud claws-mail-moon127 all segfault on yakkety <Snappy:New> <https://launchpad.net/bugs/1628616>17:25
ogra_https://code.launchpad.net/~snappy-dev/+snap/ubuntu-core ... and https://code.launchpad.net/~snappy-dev/+snap/ubuntu-core/+build/570817:25
sergiusensogra_ the NEW wait begins :-)17:31
ogra_heh17:31
zygastgraber: perhaps a key qustion, when you said that step one is to unshare the mount namespace, do you consider any special sharing of / itself?17:34
zygafg17:35
zygajdstrand: some progress, not much success17:35
zygastgraber, jdstrand: http://paste.ubuntu.com/23247640/17:36
zygathe good things are caused by --propagation private but this also breaks the key feature17:36
jdstrandzyga: you made that comment about keeping the namespace doc up to date. I had the same thought, but then I was like "man, once the stars align and every feature works, we should never, ever, touch this again" :P17:41
sergiusensogra_ Snapping 'ubuntu-core' ...17:41
zygajdstrand: yes, I had that thought too :)17:42
zygajdstrand: I'll convert some of the docs we have into an unified format, perhaps man pages because I just love man pages and because they are installed and discoverable17:42
zygajdstrand: hey, I think I *might* have solved the problem just now17:42
* zyga typed "sync" three times just in case the world blows up17:43
jdstrandzyga: yeah, I don't care about the format. the code is well-written and well-commented, but it is hard to really see the exact steps, so I wanted that somewhere and having close to the code (ie, somewhere in snap-confine) made a lot of sense to me17:43
jdstrands/having/have it/17:44
zygamwahaha17:44
* jdstrand crosses fingers17:44
zygaalmost :)17:44
zygaI have the umount -l /old-root in the script17:44
zygathat breaks the host (understandably)17:44
zygaone fix after reboot17:44
zygaman, umount -l / just breaks the world in very very funny ways17:44
zygarebooting17:45
mupPR snapcraft#835 opened: Add the test upstream rules <Created by elopio> <https://github.com/snapcore/snapcraft/pull/835>17:45
zygabut I think this already works17:45
zygamodulo the umount17:45
zygaI saw the event propagate17:45
zygaand I saw *correct* sharing in mountinfo17:46
mupPR snapd#2019 closed: store: retry download on 500 <Created by chipaca> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/2019>17:46
zygaman, this os one abused VM17:46
zygasystemd doesn't cope that well without /17:46
mupPR snapd#2023 closed: cmd/snap,configstate: rename apply-config variables to configure <Created by kyrofa> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/2023>17:47
zygathere's some nice binfmt stuff that lets you run processes with an open fd to the executable, sstemd should perhps use that on all its esesential bits17:47
zygajdstrand: it works :)17:48
jdstrand\o/17:48
zygahttp://paste.ubuntu.com/23247685/17:48
zygahave a look, please17:48
zygaI'll comment it now to explain why, IMHO, things are as they are17:49
ogra_sergiusens, looks like it finished17:53
jdstrandzyga: man17:58
jdstrandso many layers of mounts...17:59
jdstrand(thinking about this added to what we already have)17:59
zygajdstrand: more than you expected?17:59
jdstrandno17:59
zygajdstrand: http://paste.ubuntu.com/23247723/17:59
zygajdstrand: with extra explanations about why I think this is required17:59
jdstrandjust, overall how complicated the mount namespace setup is17:59
zygajdstrand: I left my printout of shared subtrees in the attic, I'll check some of my own questions in a moment18:00
zygajdstrand: well, yes :)18:00
jdstrandI'm not saying it can be simplified18:00
zygajdstrand: it's a hell of a maze18:00
jdstrandjust... man18:00
=== dpm is now known as dpm-afk
zygajdstrand: I cannot wait to see the windows kernel replicate this with their linux subsystem ;)18:00
jdstrandlol18:00
zygatyhicks: hey, if you are around, I would love a review of the pastebin above ^^18:00
zygastgraber: ditto, this will help us a lot18:01
zygajdstrand: the pivot_root call can be used to set up /var/lib/snapd/hostfs18:01
zygajdstrand: but I need to make nvidia work in a different way before that happens18:01
jdstrandhehe "infinite cycle"18:02
jdstrandI now know what prompted your tweet :)18:02
zygajdstrand: gee, what is using that 5GBs of ram18:02
jdstrandI thought 514000+ mounts was a bit high, even for snappy :)18:03
zygajdstrand: I killed the process, I guess that made the kernel stop in some way18:03
zygajdstrand: but it still crashed soon after :)18:03
jdstrandI bet :)18:03
jdstrandthat's funny18:03
sergiusensogra_ I will prepare a PR18:03
sergiusensogra_ do you have a link to the logs18:04
zygajdstrand: and since having this I can see that none of the mount entries are share18:04
zygajdstrand: this is a bit worring though as this is differerent from systemd defaut18:04
zygajdstrand: so perhaps after pivot_root we should mount --make rshared / again18:04
zyga(crazy)18:04
zygajdstrand: I bet some tools rely on this systemd default now18:05
zygajdstrand: e.g. systemd-nspawn or similar18:05
zygajdstrand: probably lxd as well18:05
jdstrandyeah, will have to test with content interface, lxd, docker, shared mounts, etc18:06
* jdstrand hugs the testsuite18:06
tyhickszyga: that's pretty close to what I expected it to look like18:08
ogra_sergiusens, https://launchpadlibrarian.net/287114070/buildlog_snap_ubuntu_xenial_s390x_ubuntu-core_BUILDING.txt.gz18:09
tyhickszyga: that's crazy stuff but I don't see anything unexpected/surprising in there18:09
zygatyhicks: thank you18:10
zygatyhicks: the key was the unbindable part18:10
zygatyhicks: that makes it not a new kind of fork bomb18:10
tyhickszyga: yeah, I wouldn't have figured the unbindable part out18:10
tyhickszyga: did shared-subtrees.txt point you towards using unbindable?18:11
zygatyhicks: yes18:11
zygatyhicks: I have it printed on my desk for a few days now18:11
tyhickshehe18:12
jdstrandzyga: these days, I'm surprised you don't have it tacked up on your wall18:12
tyhicksyou should laminate it18:12
zygatyhicks: lol :)18:12
zygatyhicks: I love that it has a quiz18:13
zygatyhicks: that's like "you may have read it but now let's see if you pass the quiz" :-)18:13
tyhickszyga: wow, you really have been reading it closely in order to take the quiz :)18:14
zygathanks guys, I'll make this into a nice pull request tomorrow18:18
zygamorphis: ^^ FYI18:18
zygamorphis: call of the alarm :)18:18
mupPR snapd#2024 closed: docs: add `configure` hook to hooks list <Created by kyrofa> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/2024>18:23
kyrofajdstrand, there ^^ . Now the hooks doc has information about the only existing hook18:23
mupPR snapd#2022 closed: README: add links to IRC, mailing list and social media <Created by dholbach> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/2022>18:24
mupPR snapd#2018 closed: snapstate: pass errors from ListRefresh in updateInfo <Created by mvo5> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/2018>18:27
ogra_niemeyer, it is nice that you tell me the gadget isnt any different regarding slots ... my problem is that we do not have syntax for slots *anywhere* defined in the docs ... i.e. i'd expect some "slot:" keyword that i can define in the snap.yaml of  the gadget to tell the system there is such an interface18:28
* ogra_ grins about jdstrand ending up on the quotes page ...18:30
ogra_jdstrand, the number of mounts will go down once we ran out of major numbers for loop devices in the kernel :P18:31
niemeyerogra_: Yes, you are right.. we need doc champions to cover that aspect better at snapcraft.io18:31
niemeyerslots:18:32
ogra_yeah, i cant find anything aynwhere ....i looked around at the known places18:32
niemeyer    camera:18:32
niemeyerogra_: That should be enough for this case18:32
ogra_ah, neat, k18:32
niemeyerogra_: Plugs are also poorly documented18:32
ogra_(i would have expected it in interfaces.md ... but that actually only explains how to use the snap command)18:32
niemeyerogra_: We really need some love in that area of snapcraft.io18:33
ogra_yeah18:33
ogra_plugs are at least mentioned in the snapcraft.yaml doc ...18:33
ogra_anyway ...18:34
* ogra_ &18:34
mupBug #1628640 opened: Add 'snap info' command showing publisher, channel map <Snappy:New> <https://launchpad.net/bugs/1628640>18:41
jdstrandogra_: heh-- and here I was thinking the quote would be "13:03 < jdstrand> I thought 514000+ mounts was a bit high, even for snappy :)"18:46
mupPR snapd#2009 closed: tests: add firewall-control interface test <Created by fgimenez> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/2009>18:47
mupPR snapd#1988 closed: interface/builtin: access system bus on screen-inhibit-control <Created by afrantzis> <Merged by niemeyer> <https://github.com/snapcore/snapd/pull/1988>18:50
davmor2ogra_: nice looks like it might be an upgrade issue rather than an install issue so I'll have a play with that tomorrow18:54
mhall119hi all, is there an electron desktop snap that I can use as an example?18:57
mhall119trying to snap up Rambox,which is electon-based18:58
mhall119davmor2: ^^ see what you did?18:58
davmor2mhall119: hey it's not my fault you are compelled to snap all the things18:58
mhall119no, it's your fault for not doing this one first, thus leaving it to me :-P18:59
mupPR snapcraft#836 opened: Deal with 404 responses from the store's snap status endpoint <Created by thomir> <https://github.com/snapcore/snapcraft/pull/836>19:00
davmor2mhall119: wait you were the one trialling it I'd never heard of it till you G+'d it :P19:01
sergiusensmhall119 there's google play music from RAOF and atom19:14
sergiusensmhall119 but saying 'electron' based is really vague, the world electron lives in has no convention19:15
sergiusenscwayne or joc a review for https://github.com/snapcore/snapcraft/pull/832 from either of you would be nice19:33
mupPR snapcraft#832: python plugin: only download in pull and build in build <Created by sergiusens> <https://github.com/snapcore/snapcraft/pull/832>19:33
cwayneI'll take a look sergiusens thanks for the heads up19:34
sergiusenscwayne this makes the plugin respect the lifecycle (to not build during the `pull` step)19:35
sergiusensand makes the hacking on the offline train story for python a reality19:35
mhall119can I get somebody to look into a snap that fails to install?19:45
mhall119http://people.ubuntu.com/~mhall119/snaps/couchdb_2.0_amd64.snap19:46
mhall119it's a daemon that systemd is failing on starting, so the install aborts19:46
mhall119if I make it just a standard app, not a daemon, I can launch it manually and it works19:47
paul_r0b0thi19:49
mhall119hello paul_r0b0t19:49
paul_r0b0ti have deleted the stage and prime folders19:49
paul_r0b0tand when i do snapcraft clean19:49
paul_r0b0tit complains about some of the folders missing19:50
paul_r0b0teventually i would like to crate the stage folder again19:51
paul_r0b0twith snapcraft stage19:51
mhall119you should "snapcraft clean -s stage" instead of just deleting those folders19:51
mhall119snapcraft remembers the last steps that finished successfully, so it doesn't have to repeat them19:52
paul_r0b0tright19:52
mhall119so by deleting the folders themselves, you've left it confused, it knows it finished staging and priming, but it doesn't see those folders anymore19:52
sergiusenscprov where does this error come from? "Your account lacks information to sign build assertions for this snap."20:01
sergiusenscprov I believe it comes from the store, but I thought we agreed that good error messages would tell me what to do20:02
sergiusenscprov not blaming anyone in any case, just lost20:02
paul_r0b0tok. eventually i would to generate the stage folder again20:03
paul_r0b0tok. eventually i would like to generate the stage folder again20:03
cprovsergiusens: snapcraft, sign-build, your account does not have upload perms on this snap. Needs a proper message, agreed20:03
sergiusenscprov oh, the error is related to me not having registered the snap?20:04
sergiusenseven though the message does not mention that even :-)20:04
sergiusensI will log a bug20:04
paul_r0b0tbut when i do snapcraft stage, it still "remembers" all the staged components20:05
paul_r0b0tso it doesn't attempt to stage again20:05
cprovsergiusens: yes, please, I will tackle this in a bit.20:05
mhall119paul_r0b0t: try "snapcraft clean -s stage"20:06
mhall119it might not like that though, since it's out of sync20:06
mhall119worst case, run "snapcraft clean" to reset snapcraft back to a clean slate20:06
mhall119but you'll have to do the pull and build steps again if you do20:06
paul_r0b0tyes, i tried snapcraft clean20:06
paul_r0b0tbut complains b/c it cant find many of the folders20:07
mhall119then "snapcraft stage" will get you to the point where you have a ./stage/ folder agian20:07
paul_r0b0tsnapcraft stage doesnt do much20:07
paul_r0b0tb/c it thinks or "remembers" all the staged components20:08
sergiusenscprov LP: #162867120:08
mupBug #1628671: Assertion error message with no useful end user information <Snapcraft:New> <Software Center Agent:New> <https://launchpad.net/bugs/1628671>20:08
mhall119paul_r0b0t: what folders do you still have there?20:08
paul_r0b0tso it doesn't attempt to generate them again20:08
paul_r0b0tmhall119: only parts20:08
sergiusenscprov with a proper snap I get $ snap sign-build telegram-sergiusens_0.10.8_amd64.snap error: the required flags `--developer-id' and `--snap-id' were not specified20:09
mhall119ok, parts is where it stores your state info I believe, so if you remove that you should be able to start over20:09
cprovsergiusens: wow, 'snapcraft sign-build' not *snap*20:10
cprovsergiusens: snap is driven by snapcraft20:10
sergiusenscprov doh20:10
sergiusenscprov heh, autocomplete fail :-)20:10
cprov:-)20:11
paul_r0b0tyeah, only catch is that i have some local code in parts that i have changed20:11
paul_r0b0tso ideally i would just like to build20:11
paul_r0b0tand stage20:11
sergiusenscprov nice, another weird message 'Could not assert build: Snap builds are currently disabled.'20:12
kyrofapaul_r0b0t, then remove everything in parts other than the `plugins` folder20:12
kyrofapaul_r0b0t, then run snapcraft clean again20:12
sergiusenscprov so nice, I have my assertion :-) comma, look at this20:12
kyrofapaul_r0b0t, ah, you've been editing code in parts/<part>/src?20:12
sergiusenspaul_r0b0t you shouldn't be adding local code in parts20:13
paul_r0b0tkyrofa: yes20:13
kyrofapaul_r0b0t, yeah, it's not really made for that20:13
sergiusenspaul_r0b0t instead clone and point `source: <path-on-disk>`20:13
kyrofapaul_r0b0t, but you can get up and running if you remove all the files in parts/*/state/ EXCEPT for the one named `pull`20:13
sergiusenspaul_r0b0t stuff in parts/<part-name> is there for discoverability not so much for changing; well quick experiments but not much else20:14
cprovsergiusens: staging is enabled and I will enable production when we are happy.20:15
paul_r0b0tall: yes, i understand that its not the best practice to add local code in parts20:16
sergiusenscprov got it20:16
kyrofapaul_r0b0t, then you can't be surprised when things break down :)20:17
paul_r0b0tbut it has been convenient to use snapcraft in order to setup quickly my development environment20:18
paul_r0b0tnot what snapcraft has beeen made for20:18
paul_r0b0ti guess i can keep a backup of local parts source code20:19
paul_r0b0tthen remove everything in parts except 'plugins'20:20
paul_r0b0tand run snapcraft clean20:20
kyrofapaul_r0b0t, or do what sergiusens recommended, but yeah, that works too20:21
paul_r0b0tkyrofa, sergiusens, mhall119, : thx!20:23
sergiusenscprov darn, my search for a string failed I will kill that bug I logged as your branch isn't merged yet20:23
cprovsergiusens: Can I amend my PR with the error messages fix or to do you prefer a new one because that is already fully tested ?20:30
sergiusenscprov ammend is fine20:30
cprovsergiusens: will do, thanks.20:31
sergiusenscprov no need to ammend either, we can squash on merge (which will make it easier to review the delta actually)20:31
sergiusenscprov also, do we have a bug for this; sorry I am super slow today20:32
cprovsergiusens: no, we do not since it's a new UX feature, I will create one.20:33
cprovsergiusens: new commit for you appreciation ;-)20:45
sergiusenscprov that looks much nicer :-)20:50
cprovsergiusens: np, sorry for letting it slip.20:51
cprovit was equivalent to display "You suck!" on the terminal ;-)20:51
mupPR snapd#2027 opened: asserts: support parsing the plugs stanza i.e. plug rules in snap-declarations <Created by pedronis> <https://github.com/snapcore/snapd/pull/2027>20:59
cwaynesergiusens: if i push up a new snapcraft.yaml for a remote part, how long does it usually take before snapcraft update sees it21:15
josephtcwayne: roughly an hour21:20
josephtsergiusens: ^21:21
cwaynejosepht: thanks21:21
josephtcwayne: np21:21
mupPR snapcraft#833 closed: Add links to IRC, mailing list and social media <Created by dholbach> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/833>21:36
loologra_: around still?21:38
loolor anyone: where's the source for the gadget snaps for rpi*?21:38
mupPR snapd#2015 closed: asserts: introduce AttributeConstraints <Critical> <Created by pedronis> <Merged by pedronis> <https://github.com/snapcore/snapd/pull/2015>21:53
mupPR snapcraft#831 closed: 'sign-build' implementation <Created by cprov> <Merged by sergiusens> <https://github.com/snapcore/snapcraft/pull/831>22:30
cwaynesergiusens: so i was able to build checkbox with that branch, so lgtm on that front at least :)23:02

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