/srv/irclogs.ubuntu.com/2009/06/04/#ubuntu-bugs.txt

bcurtiswxis there any documentation on how to triage a failed package install during an Ubuntu upgrade 8.04-8.10 ?00:00
bdmurraybcurtiswx: do you have an example?00:11
bcurtiswxbdmurray: yuppers bug #38339000:12
ubot4Launchpad bug 383390 in update-manager "package update-manager 1:0.93.35 failed to install/upgrade: ErrorMessage: SystemError in cache.commit(): E:Sub-process /usr/bin/dpkg returned an error code (1), E:Sub-process /usr/bin/dpkg returned an error code (1), E:Sub-process /usr/bin/dpkg returned an error code (1), E:Sub-process /usr/bin/dpkg returned an error code (1), E:Sub-process /usr/bin/dpkg returned an error code (1)" [Undecided,New] http00:12
persiaE: title-too-long00:12
bdmurrayyeah in-line editing!00:14
bdmurraybcurtiswx: so the first thing is to look at http://launchpadlibrarian.net/27473398/VarLogDistupgradeTermlog.gz00:15
bdmurraybcurtiswx: by the way this isn't documented00:15
bcurtiswxok, looking at file00:16
bdmurraystart at the end of the file00:16
bcurtiswxk00:16
bcurtiswx5 packages, wow00:18
bdmurraySo there are some errors were encountered while processing00:18
persiaThis class of bug is annoying.  This one looks like media error.00:18
bdmurrayso we can look in the file to find out what those errors were00:18
bdmurraypersia: sssh, no spoilers!00:18
persiabdmurray, Sorry.  I actually care about the packages on the bottom, so I wanted to check.  I'll be quiet.00:19
bdmurraypersia: it's fine I was just kidding00:19
bcurtiswxpersia, there are 3 or 4 others from the same person (im assuming the 5 files that didn't complete) if u wanted to get those triaged while i am a student for a little bit00:19
* persia adds more duplicates to 27650300:21
bcurtiswxbdmurray: that log doesn't include the package listed in the title "update-manager"00:23
persiabcurtiswx, You picked a good bug to learn on: there's 5 packages that fail, and the relationships between the packages are interesting.00:23
bdmurraypersia: could we write a bug pattern for that one?00:24
persiabug pattern for which?00:25
bdmurraypersia: for 27650300:25
persiaPossibly.  What's a bug pattern?00:25
bdmurraybcurtiswx: I think its a two-fold problem - a crash in update-manager and the package install problem00:26
persiaThe basic problem is that if anyone installed the earlier version with the dirty hack, it can't be cleaned up safely.00:26
bdmurrayits a regex apport looks for in bug reports to prevent their bug from being filed - it'll just redirect them to the master bug00:26
bcurtiswxbdmurray: so the package install fail caused update-manager to fail00:26
persiabdmurray, Very likely.  Basically, it's not possible to uninstall or upgrade ubuntustudio-menu 0.9 or 0.10.00:27
persiaIt may become possible to upgrade at some point, but it requires more maintainer-script-fu than anyone has yet attempted.  0.11 is better in that it is designed in a maintainable way that doesn't break other packages.00:28
bdmurraybcurtiswx: there's another one hostname that failed too00:28
persiaAnd for the record, there are three issues encoded in 383390.  While 276503 is one of them, it's already well understood, so 383390 is probably better used for one of the other two issues (as opposed to e.g. 383392 which I already duped)00:30
bcurtiswxbdmurray: im confused... we looked at the end of that file, to find the bad packages.. the bug deals with the update-manager failing because of those packages not installing on the dist-upgrade.. thats about as far as i am with this one right now as to whats supposed to be done to triage this00:33
persiabcurtiswx, The next step would be to look through the log to find the configuration of each of the failing packages.  You want to determine which failures are compund, and which represent actual issues.00:34
bcurtiswxcompund?00:34
persiaSo, for example, if you look for the ubuntustudio-menu part, you'll see 276503.00:34
persiacompound.00:34
persiaBut if you look for the ubuntustudio-audio part, you'll see something quite different.00:34
persiaFor some of these bugs, you'll only find one issue.  For some you find several.00:35
persiaBut update-manager shouldn't have crashed anyway, and so you might want to track the traceback there.00:35
bcurtiswxit seems that ubuntustudio-audio needed the lilypond, but it hadn't finished installing yet.. so its like 276503 in which if you install again it'll work.. right?00:37
persia276503 is a conffile handling bug.00:38
persiaBut yes, ubuntustudio-audio isn't installing because lilypond isn't installed, which likely isn't a problem with ubuntustudio-audio.  Now, why doesn't lilypond install?00:38
bcurtiswx that has a dependency problem00:40
bcurtiswxbut it doesn't say which00:40
bcurtiswxpersia: ^^ and is it a situation where lilypond depends on US-audio and vice versa?00:43
persiabcurtiswx, apt-cache show each one.00:44
persiaCheck the dependencies.00:45
bcurtiswxit depends on guile-1.8 but that failed due to the error in buffer read00:45
persiaRight.  So there's one more package to check on the list.00:46
bcurtiswxand that is?00:46
bcurtiswxthe guile-1.8-lib?00:47
persiaRight.00:48
bcurtiswxsame error as the guile package00:49
persiaOK.00:49
persiaNext step would be to see if you can upgrade guile-1.8 and guile-1.8-libs from 8.10 to 9.04 (I like chroots for this).00:49
persiaIf you can, then it's a problem with the media used.  If you can't, there could be a bug in the package.00:50
persiaIf it's a problem with the media, you'll want to check the files on the image used to create the media from cdimage.ubuntu.com00:50
bcurtiswxi've never used a chroot before00:50
persiaIf that's clean, it's unfixable user error.  If that's dirty, you want a task against the Ubuntu CD Image project.00:50
=== dwg_ is now known as dwg
persiaHave you used VMs before?  That also makes a good test framework.00:52
bcurtiswxyes i use VBox00:52
persiaThen try it there.00:52
bcurtiswxi actually keep meaning to setup a base image for an Intrepid Install and a Jaunty Install to have a nice place for a fresh start00:53
persiabdmurray, Would it be useful to write some docs about using LVM+schroot for snapshot chroots for testing against multiple releases (obviously one can't test kernel, X, etc., but most apps can be run with X forwarding).00:53
persiabdmurray, The reason I ask is that while it can be useful, it may be more confusing than just using VMs for some folk.00:55
bdmurraypersia: https://help.ubuntu.com/community/SbuildLVMHowto covers most of it I think00:55
bdmurrayAt least that's what I used00:56
* persia checks to see if that covers stuff like X forwarding00:56
persiaYeah.  That covers setup, but it's more focused on the sbuild side than the schroot side, and misses stuff like passing the right calls to be able to launch x clients from within the schroot and have them show up on the desktop.00:57
bdmurrayBut it'd work for package upgrade testing! ;-)00:57
persiaOr testing CLI tools.00:58
bdmurrayX clients information would be interesting00:59
persiaBut even so, I don't think that page really covers how to use it for testing: perhaps that could be added there, or that page could be referenced from such a resource as a guide on setting up the environment.00:59
persiabdmurray, Try schroot -p -c intrepid :)01:00
bdmurraydtchen: Just the linux bugs or other packages too?01:10
bdmurraydtchen: let me know I can do the linux ones or all of them01:15
=== asac_ is now known as asac
hggdhwhat's the wiki page that lists the desktop pacakges?01:30
dtchenbdmurray: linux, yes.01:31
hggdhis there a special recipient (team) for the nspluginwrapper?01:34
dtchenthe mozillateam iirc01:35
hggdhthanks, dtchen.01:36
dtchenyw01:36
hggdhsigh. Someone called Harrison C assigned himself a few bugs, and went MIA...01:43
hggdhwhat the hell. I did expect that triagers understood that bugs with coredumps attached should *not* be made public01:45
maxbOuch. Isn't that one of the key things you have to demonstrate you know to be allowed into bugcontrol?01:46
hggdhyeah, one thing I keep remembering on the applications...01:47
james_wcheck that the reporter didn't do it themselves01:47
hggdhI checked... ;-)01:48
hggdhbut these seem to be -bugsquad only, not -control01:49
bcurtiswxanyone here use docky?02:43
asomethingbcurtiswx: Why? I use Do, but not docky. Do you need some one to try and reproduce something? I could switch to test...02:57
bcurtiswxno actually, im just wondering how i use these plugins02:57
bcurtiswxlike the launchpad one in specific02:57
asomethingbcurtiswx, it's a Do plugin, not an applet. call Do, type Launchpad, tab to the next input and type what you want to search for, tab to the third input and select if it's a bug #, person, ect03:00
bcurtiswxasomething: neat, thx03:01
bcurtiswxasomething: so if i know a bug number, can i type the bug number into it and it will send me there?03:04
asomethingbcurtiswx, yup03:04
bcurtiswxasomething: i'm playing with it, but its confusing.. can you give me an example03:05
bcurtiswxi type Launch, tab twice, then type what?03:06
asomethingbcurtiswx, tab once and enter your search term, tab again press down to select the type of thing you're searching for, then enter03:08
asomethingdoes that make sense? I guess it's a bit hard to explain03:09
bcurtiswxasomething: yuppers, i guess it takes some time to get used to how it works.. thanks03:10
asomethingbcurtiswx, ya, I thought it was neat at first, but I find I don't use it all that often (the plugin not Do)03:11
bcurtiswxasomething: which plugins do you use the most?03:11
asomethingbcurtiswx, really just file and folders. I've got a few others enabled, but they seem to fit my workflow i guess03:13
bcurtiswxasomething: cool, thx03:15
=== txwikinger2 is now known as txwikinger
bdmurraydtchen: all unassigned05:16
dtchenbdmurray: thanks05:16
dholbachgood morning06:37
=== ziroday is now known as zeroday
askandCan anyone see what causes the crash in this backtrace? Or see  any clues at all? http://pastebin.com/m35148e9a08:37
=== zeroday is now known as ziroday
Itaragazzi09:28
Itami dovete aiutare pls09:28
dholbachIta: you could try #ubuntu-it09:29
Itaok09:29
Itathx09:29
dholbachwe usually speak English here :)09:29
dholbachsorry09:29
Ita:)09:29
Itatrank09:29
xteejxHey peeps10:38
jpdsHey xteejx.10:38
xteejxhi jpds :)10:38
xteejxBug 101986, is this really a kernel bug? It looks more like alsa to me, can anyone confirm that?10:42
ubot4Launchpad bug 101986 in linux "speakers are unmuted after resume from suspend while headphones are plugged in" [Undecided,New] https://launchpad.net/bugs/10198610:42
xteejxomg compiz actually works on my laptop in karmic10:51
xteejxhas the facebrowser gdm login screen thing been confirmed to go into karmic, does anyone know?10:51
xteejxand is what I've been hearing correct that canonical are trying to move away from the "boring brown" theme? (Can't wait btw)10:52
xteejxIs anyone here? I have a serious problem with apport, it keeps crashing on me, and can't resolve itself11:50
jpdsxteejx: File a bug?11:56
xteejxjpds, I have done, bug 383518 and bug 38351111:56
ubot4Launchpad bug 383518 in ubuntu "apt-get synaptic and update-manager crashing apport" [Undecided,New] https://launchpad.net/bugs/38351811:56
ubot4xteejx: Bug 383511 on http://launchpad.net/bugs/383511 is private11:56
xteejxhavent a clue how to resolve it or debug it11:57
thekornxteejx, do you have crash files in /var/crash? what happens when you run ubuntu-bug -p synaptic in a termianl, do you get a traceback etc.12:05
xteejxthekorn: yes, a few apport crash files in /var/crash and the ubuntu-bug causes a segfault with core dump12:06
thekornxteejx, I don't know what the private bug is all about, but you should definitly change bug 38351 from ubuntu to apport12:08
ubot4Launchpad bug 38351 in blueprint "stop sign when subscribing to specification (dup-of: 40161)" [Medium,New] https://launchpad.net/bugs/3835112:08
ubot4Launchpad bug 40161 in blueprint "When subscribing to a spec, the confirmation looks like an error." [Medium,Fix released] https://launchpad.net/bugs/4016112:08
thekornsorry, wrong one, you know which one I mean ;)12:08
xteejxhehe yup, shall i upload all the crash files from /var/crash ?12:09
thekornxteejx, and then you should reproduce your bug, and only upload the resulting crash file to this bugreport12:09
xteejxshould be easy enough lol thanks thekorn :)12:09
thekornand mention that it segfaults12:09
xteejxno probs12:10
thekornxteejx, your bug might be a dup of bug 37015812:11
ubot4Launchpad bug 370158 in apport "update manager crashes on latest update" [Undecided,New] https://launchpad.net/bugs/37015812:11
thekornalso this one is not karmic12:12
xteejxthekorn, don't think so12:12
thekornso maybe not12:12
xteejxdamn i cant upload the files I don't have any permissoins12:15
=== jithine_ is now known as jithine
=== ejat is now known as e-jat
=== yofel_ is now known as yofel
bddebianBoo15:16
keesgeser: why does apt-watch need to be compiled with -U_FORTIFY_SOURCE -Wno-format-security ?  That seems rather extreme.15:22
keesgeser: at the very least, there should be a bug open for that, and details in https://wiki.ubuntu.com/CompilerFlags on why it's an exception.15:22
=== thunderstruck is now known as gnomefreak
=== mvo_ is now known as mvo
dholbachPackaging Training with mvo in #ubuntu-classroom now!15:59
geserkees: I guess the person who introduced the change in the first place was to lazy to fix it properly16:02
geserkees: I fixed it already a little bit that -Wno-format-security could get dropped again16:02
geserbut didn't look at all those read() which cause the warning about the unused result value16:03
xteejxGood afternoon :)16:09
bdmurraykees: Did you try search_text at all?16:20
keesbdmurray: yup, worked great16:21
bdmurraykees: really?  what did it search?16:21
keesseemed to search the Description at least.16:21
bdmurrayhmm, I'll have to check it out16:22
xteejxbdmurray: Is valgrind better to use for segfaults in programs than gdb, specifically pidgin?16:24
xteejxOr if anyone can answer the above please?16:26
seb128depends of the crash usually16:26
seb128valgrind is useful for corruption bugs16:26
xteejxseb128, well I've tried several different methods to try and reproduce bug 139081, and I really cannot get it to crash or fault at all, I'm thinking the reporter might have a memory issue.16:27
ubot4Launchpad bug 139081 in pidgin "(gutsy) pidgin exits when changing buddy icon" [Unknown,Fix released] https://launchpad.net/bugs/13908116:27
xteejx(the report is no longer on LP but "mosteo" confirmed it)16:27
xteejxShall I ask for a valgrid or gdb trace in the Jaunty version which he is using?16:29
xteejxOr is it possible to invoke apport at all?16:30
xteejxActually I just found how to enable apport for 1 session, I'll ask the guy to get it to crash while apport is "watching" the system16:31
taxmanalright, so I want to file a bug but I don't know what package handles the issue, gnome-mount or hal. Often when a dvd or cd media is inserted, the media gets mounted by the other user that is logged into the system, not the one that is active. I guess this is because I have two admin users and most don't, but it still should always be mounted by the active user16:33
xteejxtaxman, If you're not sure, don't worry, we can do that for you. :)16:37
xteejxI'm guessing gnome-mount though...16:38
taxmanxteejx: I have to file it somewhere for you to do anything with it though, right? :)16:43
xteejxtaxman, Not at all, I would suggest you file it against gnome-mount for now, if it's wrong it can easily be changed by the Bug Squad :)16:43
taxmanwill do, but how would I file it against nothing?16:44
bdmurrayYou don't really want to file it about nothing / no package16:51
taxmanno I would rather figure out the right one, I didn't even know it was possible not to put something in. I won't try to for sure16:53
bencrisfordAfternoon all17:02
xteejxbencrisford, good good17:02
bencrisford:)17:03
micahganyone running hardy that can test something?17:09
bdmurraymicahg: server or desktop?17:35
micahgdesktop17:36
micahgbug 35137917:36
ubot4Launchpad bug 351379 in firefox-3.0 "colbertnation.com crashes Firefox 3.0.8 on Hardy 8.04.2" [Undecided,Incomplete] https://launchpad.net/bugs/35137917:36
micahgI tried a live CD, but couldn't get the site to play in 3.0.1017:36
micahgbut the user is no longer having an issue17:37
micahgSHould I just close it?17:38
bdmurrayIf the original reporter is not having the issue any more and there are no duplicates / other commenters and it works in Jaunty / Karmic yes that'd be fine.17:39
micahgok17:39
micahgDone17:39
* bcurtiswx yawns19:18
paulproteusHey greg-g. I was wondering how people choose their five-a-day. I'm someone with a lot of experience on bug trackers and who has done Debian bug squashings for the last stable release.19:59
paulproteusBut it seems to me that in general, it's hard to identify which bugs are doable given one's skills or a useful contribution.20:00
paulproteusI'm also curious because I'm thinking of building some tooling to make it easier to match you up with bugs you're actually able to fix.20:00
paulproteusWhat sorts of bugs do people generally fix in their five-a-day, and is that program a success?20:00
bdmurrayfive-a-day isn't just fixing bugs it is also about improving and triaging bug reports20:01
bencrisfordpaulproteus: This is a triaging channel ;), five-a-day is triaging too.  And if you can triage, you can pretty much triage everything20:01
paulproteusGood point, bddebian.20:01
bencrisfordyou might want to talk to the motu20:02
bencrisfordor dholbach who is motu and i think founded 5-a-day20:02
bdmurrayI'd be interested to hear about how to identify doable bugs20:03
=== micahg1 is now known as micahg
greg-gsorry, paulproteus, distracted at work (god forbid!)20:17
paulproteusHeh. (-:20:17
paulproteusI'll read http://wiki.ubuntu.com/BugSquad right now to make sure we're on the same page.20:18
greg-g"doable" is a hard to thing to search for20:18
greg-gthere are "bitesize" things which are simple like string changes or default config changes20:19
paulproteusIs there a tag for that?20:20
greg-gyeah20:20
paulproteusAwesome.20:20
paulproteusMy first order of business this summer is to make it easy to spot opportunities for oneself in the free software world.20:21
paulproteusDid you guys get the idea for "bitesize" from Miro, or vice-versa?20:21
greg-gno idea20:21
bdmurrayI've thought it might be interesting to have an association between packages and programming languages20:21
greg-gbdmurray: ooo, that is a good idea20:22
paulproteusbdmurray, That's exactly what I'm building, and hopefully for other tags too. (-:20:22
paulproteusWell other pieces of metadata, let's say.20:22
* greg-g nods20:22
bencrisfordxteejx: Nice :D20:51
xteejxi know :D20:51
xteejxtook a while figuring it out thou ;)20:52
bencrisford:P20:52
xteejxso i got a jaunty laptop with karmic USB drive, PROPERLY persistent, its a full install haha20:52
xteejxflashdrive*20:52
xteejxbencrisford, have you seen what's coming for karmic - the face browser gdm login? looks amazing!!20:54
bencrisfordxteejx: Good good :)20:54
xteejxCan't wait! Anyways enough of me must update packages20:55
elena09huge bug with fglrx21:30
elena09screen frozen and dark after activating System Hardware Drivers ATI and rebooting21:31
elena09screen frozen and dark after activating System Hardware Drivers ATI and rebooting21:38
bencrisfordelena09: Ouch.  Have you reported it on launchpad?21:39
elena09of course I reported it but who cares? ATI don't care21:40
bencrisfordelena09: But it isn't ATI who develop ubuntu :)21:40
elena09I know, but it's their Mobility Radeon HD 3450 card21:41
bencrisfordi dont think they would've made the drivers, but if they did they will care, because it means its their product with the bas name21:41
bencrisfordbad*21:41
bencrisfordelena09: See how the bug report goes, you can always have a look for duplicates21:42
bencrisfordif there is more than one21:42
bencrisfordits alot better for the bug if you see what i mean21:42
elena09I'll see21:42
bdmurraybencrisford: but if it is the proprietary driver there isn't much we, Ubuntu, can do21:43
BUGabundoguud evening21:43
elena09it is proprietary Catalyst 9.521:43
bencrisfordbdmurray: Oh, I didn't know that :/.  But surely ATI dont want their driver getting a bad name?21:43
BUGabundohey elena09 bencrisford21:43
elena09hello21:43
BUGabundohey bdmurray21:43
bencrisford'ullo BUGabundo :)21:44
bdmurrayI couldn't say but it might that just having a driver is good enough for them21:44
elena09May I ask you something? Could send me an invitation for Dropbox? I moved to a laptop and ...21:44
bdmurrays/might/might be/21:44
BUGabundoelena09: dropbox doesn't use invites21:45
BUGabundoits Open to join21:45
BUGabundobut if you use a referal from another user you and the user get an extra 250MiBs21:45
BUGabundootoh UbuntuOne requires invite21:45
BUGabundoif you need on let me know21:46
elena09so none knows about the ATI bug?22:01
BUGabundoI use nvidia22:01
hggdhI use ATI, but not fglrx22:02
elena09what driver do you use hggdh?22:03
hggdhelena09, radeon22:05
elena09radeon, or radeon hd? hggdh22:05
hggdhfglrx was not working, and I gave up on it still in Jaunty22:05
hggdhradeon. radeonhd did not work last time I tried22:06
elena09what card do you have?22:06
hggdhheh22:06
hggdhlet me find out22:06
elena09hggdh type of card please, perhaps will be similar to mine which is ATI Mobility Radeon HD345022:07
hggdhno, its a radeon X120022:07
hggdhcheapest sucker I could find ;-)22:08
BUGabundoaha22:10
elena09mine is older than yours?22:11
elena09hggdh mine is older than yours?22:16
kklimondaelena09: no22:18
BUGabundohey kklimonda22:18
kklimondahey :)22:19
elena09so my card card is newer kklimonda. so radeon will not work for it22:19
kklimondaelena09: probably not22:20
kklimondaat least not as well as fglrx does.. ;)22:20
BUGabundokklimonda: loved the one about the potilitian22:21
BUGabundoLOL22:21
kklimondaBUGabundo: So did I - wonder if Canonical can do something about it ;)22:21
BUGabundoahaha22:22
BUGabundohow is +1 going this week?22:22
BUGabundolots of changes due to UDS?22:22
kklimondanot really ;P22:22
BUGabundoeheh22:23
elena09bye and thanks22:25
elena09:)22:25
askandHow do I tell gdb to ignore broken pipe errors (should I?)22:37
loic-mHi22:53
loic-mRecently backported Konversation in Jaunty has a bug - doesn't show the vertical bar to mark the position the conversation was last time you came in a channel22:53
loic-mAny other Konversation users noticing that? I'm on Ubuntu and would like to check first if it's only my machine the problem22:54
BUGabundoloic-m: hi22:55
loic-mhi BUGabundo22:55
BUGabundoloic-m: support for stable versions is on #ubuntu channel22:55
BUGabundo#ubuntu-bugs is for bug triage22:55
loic-mBUGabundo really?22:55
BUGabundoyes22:56
BUGabundowhy would I try to trick why you ?22:56
loic-mBUGabundo: that's nice to know if one day I look for support22:56
BUGabundofor devel version, you can visit #ubuntu+122:56
loic-mBUGabundo: backport mean I'm not using a devel version ;)22:56
BUGabundoI know22:57
loic-mBUGabundo: and if I come to #ubuntu-bugs, it's maybe because I've got a bug to report or work on ;)22:57
BUGabundojust letting you know your options22:57
BUGabundoloic-m: for reporting bugs: $ ubuntu-bug PACKAGENAME22:57
loic-mBUGabundo: indeed22:58
mrooneyBUGabundo: it is fine to ask for a bug confirmation in #ubuntu-bugs22:58
mrooneybefore reporting and/or to attempt to make the report better22:58
loic-mNow what I'd like to know is if there's other Ubuntu/Kubuntu users wih Konversation 1.2~alpha2-0ubuntu1~jaunty222:59
loic-mmrooney: thanks22:59
BUGabundomrooney: I know! and I do it all the time22:59
loic-m(the problem is solved by reverting to the normal version)22:59
BUGabundobut asking for _user_ feedback on a funcionality, would be better done on #ubuntu22:59
BUGabundowhere loic-m can find many more users23:00
mrooneythis is a good channel for getting feedback from users experienced with bug triaging and reproducing23:00
mrooneythough how many people are active and use Konversation, I don't know :)23:01
BUGabundoeheh23:02
loic-mme neither... though I'd guess many people here use IRC...23:02
BUGabundonow you get my point23:02
BUGabundoloic-m: LOLOOL23:02
hggdher, what was that?23:20
BUGabundohggdh: what was what?23:22
hggdhthis dialog above...23:22
BUGabundosei la23:24
BUGabundosabes como e' cmg... vai td pra OT23:24
micahgBUGabundo: how many languages did you throw in there?23:26
BUGabundomicahg: last 2 lines: 123:26

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