/srv/irclogs.ubuntu.com/2011/02/14/#ubuntu-devel.txt

bcurtiswxwhats the easiest way to get what functions are called when performing an action in a program00:42
bcurtiswxsay i open a new IM window in empathy, how do I find out what functions are called ?00:42
penguin42bcurtiswx: You trace it back or forward from something that you know must have happened00:43
bcurtiswxpenguin42, so keep strace open, wait for it to stop then perform the action?00:44
penguin42bcurtiswx: So if it was a menu item that triggered it you'd look for the menu code and what ever registered the action for it; or you could go the other way, you could set a breakpoint at some function in gnome you know must have got called - e.g. whatever opens a new window00:44
penguin42bcurtiswx: strace is too low level really00:44
penguin42bcurtiswx: gdb and breakpoint on a function you expect to get called and then do a backtrace00:45
bcurtiswxOK00:45
bcurtiswxjust 'break' in a c file ?00:45
penguin42yeh00:45
=== cmagina-afk is now known as cmagina
=== oubiwann is now known as oubiwann_
=== _LibertyZero is now known as [DooF][HC]Libert
=== [DooF][HC]Libert is now known as LibertyZero
pittiGood morning07:08
a3Dmangood morning07:08
TheMusoHey pitti.07:08
pittihey TheMuso, how are you?07:09
TheMusopitti: Well thanks, yourself?07:15
pittiTheMuso: pretty well, thanks!07:23
dholbachgood morning07:27
didrocksgood morning07:44
dholbachsalut didrocks07:46
didrockshey dholbach07:46
=== tkamppeter_ is now known as tkamppeter
=== mthaddon` is now known as mthaddon
=== smb` is now known as smb
geserpitti: Hi, as you dealt with hal in the past, is disabling the v4l code the right fix for the current hal FTBFS? (http://launchpadlibrarian.net/63796245/buildlog_ubuntu-natty-i386.hal_0.5.14-5_FAILEDTOBUILD.txt.gz)09:31
pittigeser: I filed bug 716275; if that is easy to do, I'd prefer that09:32
ubottuLaunchpad bug 716275 in linux (Ubuntu) "Please ship /usr/include/linux/videodev.h" [Undecided,New] https://launchpad.net/bugs/71627509:32
pittigeser: if not, I'd add a patch upstream to check if it is available and disable it in configure if not, and ask mbiebl to cherrypick it09:33
geserok09:33
alkisgI've attached a debdiff for natty in LP bug #552404, is there anything else I need to do? The https://wiki.ubuntu.com/StableReleaseUpdates wiki page doesn't apply for development releases, right?09:35
ubottuLaunchpad bug 552404 in dbus (Ubuntu) "dbus fails to be configured in chroots" [Medium,Confirmed] https://launchpad.net/bugs/55240409:35
alkisgSo I can just re-subscribe ubuntu-sponsors?09:37
persiaalkisg, Yes.  The sponsor will upload, and then the SRU process will resume.  Do you need something for maverick as well?09:39
alkisgpersia: yes, but I don't have a maverick installation available for testing09:39
persiaMy understanding of lucid SRU is that there is an expectation of fix in natty and maverick first.09:39
persiaalkisg, It's a chroot bug, right?  Do you have disk space to create a maverick chroot?09:40
RAOFpitti: /usr/include/linux/videodev.h is the header for the V4L API, which is entirely removed in 2.6.38 - we don't want to ship a header for code that can't work on Natty, do we?09:41
alkisgpersia: I guess I could ask someone over in #ltsp to try it in maverick, to save me the time of creating a maverick chroot, since I won't ever be using maverick...09:42
persiaalkisg, I've requested nomination for each release, which should make it easier to follow the correct status of SRU.  Needs someone to approve the nominations, but the sponsor will probably do that as well.09:42
alkisgThank you :)09:42
pittiRAOF: ah, ok, good to know09:42
persiaalkisg, Good luck!09:43
pittiRAOF: I'll patch hal upstream then09:43
RAOFpitti: The correct response is to port to V4L2 or, at a pinch, just disable V4L support.09:43
RAOFGiven hal's tremendous utility, I'd guess disabling V4L support is the winning move :)09:43
persiaAre there no devices that have V4L support, but not V4L2 support?09:44
RAOFpersia: Not anymore, no.09:44
pittiRAOF: absolutely09:44
persiaCool!09:44
RAOFWell, not with 2.6.38, at least, because it doesn't support V4L at all :)09:44
persiaheh.09:45
RAOFSo there might now be some *unsupported* devices, but I don't know of any offhand.09:45
pittigeser: ok, fixed upstream; I'll talk to Michael now10:28
ev@pilot in10:33
=== udevbot changed the topic of #ubuntu-devel to: Archive: open | Development of Ubuntu (not support, not app development) | #ubuntu for support and general discussion for dapper -> maverick | #ubuntu-app-devel for application development on Ubuntu | http://wiki.ubuntu.com/UbuntuDevelopment | See #ubuntu-bugs for http://wiki.ubuntu.com/HelpingWithBugs | Current Friendly Patch Pilots: ev
* dholbach hugs ev10:34
dholbach:-D10:34
evgoogle calendar ftw10:34
apwcjwatson, have you heard of any plymouth not working issues recently?  for example: bug #71804410:38
ubottuLaunchpad bug 718044 in plymouth (Ubuntu) "[Natty] New plymouth does not get loaded" [Undecided,Confirmed] https://launchpad.net/bugs/71804410:38
cjwatsonapw: nothing new10:46
cjwatsonapw: the last several updates to plymouth weren't mine, though10:46
cjwatsonapw: ask soren10:48
apwcjwatson, will do thanks10:48
sorenwhuh?10:50
sorenOh, crap.10:50
apwsoren, there is a bug about the latest plymouth affecting some people10:50
apwactaully ubuntu15 and up10:51
udienzcjwatson, is see in MoM that adduser need to merge, but an changelog says only undating translations. is aduser will be merge this time?10:51
sorenubuntu15 was  bit of a bust, but ubuntu16 should be fine.10:51
sorenDarn it.10:51
sorenI'm on it.10:51
pittigeser: pushed fix to Debian's hal svn; will wait for Michael to review/upload, though10:51
cjwatsonudienz: we're after Debian import freeze, so merges are not a priority.  Is there a particular reason why we should pay attention to this merge?10:52
apwsoren, there seems to be be little in the way of changes from the ubuntu14 which was claimed as working ... odd10:52
cjwatsonudienz: the big merge push is in the first half of the release cycle, i.e. not now10:52
udienzcjwatson: ah ok.  i think is not, because only updating translation from debian.10:53
loolAh10:53
cjwatsonudienz: so just leave it, it'll happen in natty+110:54
loolcjwatson: I've just seen util-linux gained armhf support in Debian and decided to merge it; in the merge, I ended up removing a lot of delta that I think we don't need anymore; do you mind these changes at this point?  Maybe it would be best if these got peer reviewed, I've pushed them as UNRELEASED to the UDD branch10:55
loolarmhf support would be trivial to add on top of the Ubuntu package, but heck, I've merged it now  :-)10:55
cjwatsonlool: what sort of things?10:55
loolcjwatson: upgrade snippets mostly10:56
cjwatsonfrom pre-lucid?10:56
loolor diff which didn't add any value to us10:56
loolcjwatson: yes10:56
cjwatsonI don't really care if we drop pre-lucid upgrade stuff10:56
loolhttp://paste.ubuntu.com/566915/10:56
cjwatsonthe stuff listed on https://code.launchpad.net/~ubuntu-branches/ubuntu/natty/util-linux/natty seems generally fine10:57
loolcjwatson: I usually review the full debian -> ubuntu diff when documenting remaining changes; the longer it is, the more painful for me10:57
loolthat's usually why I remove this stuff when I can, or to make maintainer scripts more readable10:58
cjwatsonsure10:58
sorenapw: Yeah. /me investigates10:58
loolcjwatson: Ok; will give it some testing now, and upload; thanks10:59
apwsoren, the linked internally bug for the kernel seems to be reporting grub2 showing corrupted display ... so there may be a grub2 connection in part10:59
cjwatsonnone of that has changed recently10:59
apwcjwatson, yeah, the description is very hard to understand, i have requested much clarification on the linux bug11:00
cjwatsoncertainly not as recently as the plymouth changes mentioned11:00
GunnarHjev: Hi Evan, do you have time to sponsor a couple of MPs? Both are linked to from https://launchpad.net/bugs/66656511:11
ubottuUbuntu bug 666565 in language-selector (Ubuntu) ""utf8" charmap in locale name is wrong" [Undecided,In progress]11:11
evGunnarHj: I'll have a look11:12
GunnarHjev: Great!11:13
sivanghi all11:20
sivangwhat's the relationship between Ubuntu and Linaro?11:20
sivang(ubuntu-mobile is closed and said to ask here)11:20
persiasivang: Complex :)11:21
sivangpersia: complex?11:21
sivangpersia: it is for armel yes?11:21
persiaSo, a number of folks involved in Linaro are also involved in Ubuntu.11:21
sivangdoes it use apt?11:21
persiaLinaro has some goals (see www.linaro.org), and tries to accomplish them within Ubuntu, releasing things based on Ubuntu.11:22
persiaSo, from an Ubuntu perspective, Linaro just happens to be another project some folk are involved in.11:22
persiaFrom a Linaro perspective (I'm guessing), Ubuntu is distribution project that is one of the targets for their efforts.11:22
persiaUbuntu supports armel, and tends to select the Linaro branches of tools to do so, because those tend to have the best performance on armel.11:23
persiaBut I don't believe there exists any single interface, or anything, which is why I say "complex".11:23
sivangso when I do linaro stuff I work .deb and can use ubuntun repos?11:24
persiaAlso, that's *completely* unrelated to ubuntu-mobile.  ubuntu-mobile was part of an effort to make Ubuntu better for highly mobile and embedded uses.  The consensus seemed to be that as the devices got better, it was more interesting to just deliver normal Ubuntu, than to try to make a special software stack.11:25
persiaYou'd do better to ask the linaro folk, but I believe so.11:25
sorenapw: I think it11:26
sorens all me, actually.11:26
sorenapw: I don't understand why at all, though.11:26
sorenapw: the avoid-sigpipe patch causes it.11:28
sorenapw: If I revert that, it works again11:28
sivangpersia: thanks, makes sense.11:28
=== MacSlow is now known as MacSlow|lunch
sorenapw: It just don't understand. write(a,b,c) ought to be the same as send(a,b,c,0), but even that substitution causes it to fail.11:29
cjwatsonsoren: is 'a' a socket fd?11:35
sorencjwatson: Let's pretend the answer is "no".11:37
sorencjwatson: Just for giggles, let's say it's a pipe.11:37
cjwatsonyou can only use send() on sockets11:37
sorenAh.11:38
sorenman send(2) is rather misleading, then.11:38
sorenDarn it.11:38
cjwatsondepends how you look at it11:38
cjwatsonit does start "send a message on a socket"11:39
sorencjwatson: Is there any way I can get write() call to not SIGPIPE if the remote end of a pipe is closed?11:39
cjwatsonI think "The only difference between send() and write(2)" is intended to be read as "(for sockets)"11:39
sorencjwatson: I thought changing it to send and passing MSG_NOSIGNAL would do the trick.11:39
sorenAnd certainly it did in my tests, but they were using actual sockets :-/11:40
cjwatsonI'm surprised it isn't a socket, actually.  ply_boot_client_connect calls ply_connect_to_unix_socket11:42
sorenAlternatively, some way to reliably determine if an fd is a socket.11:42
sorenI'm sure it is.11:42
sorenIt's probably just that other things are using the same routine with non-sockets.11:43
cjwatsonah11:43
soren...which I hadn't expected, tbh.11:43
cjwatsonyes, src/client/plymouth.c calls ply_open_unidirectional_pipe11:43
cjwatsonand there are a couple of other calls11:43
cjwatsonyou probably get EBADF from send - you could just check for that and fall back to write11:45
cjwatsonthat would be OK11:45
cjwatsonactually, you get ENOTSOCK11:45
cjwatsonwhich is pretty clear11:45
sorenHeh.11:46
sorencjwatson: Yeah, that's a good idea. I'll try that.11:47
sorencjwatson: So if this were a pipe, the only way to avoid being SIGPIPE'd is to flush the fd first and see if it's closed?11:56
* soren reboots to check this new patch11:57
sorenThat seems to have done the trick.11:59
cjwatsonsoren: I guess so (or to ignore SIGPIPE, of course).  The pipe uses are all internal to plymouth though, so I don't think we need to worry about that11:59
sorencjwatson: Sure, I was just thinkin more gnerally.12:00
persiageser, DMB meeting?12:06
=== amitk is now known as amitk-afk
PetrHHHello12:21
PetrHHI'm working on packaging my app to deb packages12:22
PetrHHbut have no idea how to create menu entry after install12:22
PetrHHcould anybody send me link to the how to? I'm not so successful with google12:23
PetrHHthank you12:23
sorenPetrHH: Look at the .desktop files in /usr/share/applications12:23
PetrHHsoren, Thank you!12:25
=== oubiwann_ is now known as oubiwann
sorenapw: Plymouth fix uploaded. Thanks for pointing it out. I've been watching the new bugs for plymouth, but it looks this this was filed as "confirmed" from the start.12:40
=== amitk-afk is now known as amitk
sorencjwatson: Thanks for your help on that, by the way.12:44
cjwatsonnp12:45
PetrHHsoren, Where should I put application icon, please? I've found a lot of directories where e.g. f-spot.png icon is.12:52
sorenI'm not entirely sure where it truly belongs.12:52
* soren isn't a desktop person, really.12:53
=== MacSlow|lunch is now known as MacSlow
pittiPetrHH: apps usually ship their "canonical" icons in /usr/share/icons/hicolor/13:23
hallynslangasek: kirkland: so, where did we decide qemu-kvm-ppc64 belongs?  qemu-kvm, or qemu-user?13:25
* hallyn objects to 'apt-get instlal tree' apparently having done an implicit 'apt-get dist-upgrade'13:26
cjwatsonapt-get install never does an implicit dist-upgrade, but it may be necessary to upgrade other packages to fulfil dependencies.13:27
cjwatsonI don't see why it would have done so for tree though.13:27
hallyncjwatson: it even updated my firefox13:28
hallyn<shrug>13:28
hallyni dunno, this thing's package mgr must still be ina funky state.  it also refuses to install 2.6.38.  i may just need to reinstall13:31
cjwatsonhallyn: it might have attempted to continue a previously incomplete upgrade13:33
cjwatson'apt-get -f install' might be a good idea13:33
hallyncjwatson: no, that didn't (and doesn't) seem to say anything other than about autoremove packages13:35
hallynguess I'll try another rm -rf /var/cache/apt* and retry without apt-cacher again13:36
kirklandhallyn: qemu-kvm, as i recall13:38
zygamvo, ping13:38
zygamvo, do you have 3 minutes for a short brainstorm about dpkg?13:39
hallynkirkland: that's what I had thought.13:39
hallynkirkland: so should we reclasssify bug 717690 as against qemu-user ?13:40
ubottuLaunchpad bug 717690 in qemu-kvm (Ubuntu) "package qemu-kvm 0.13.0+noroms-0ubuntu12 [modified: usr/share/man/man1/qemu-user.1.gz] failed to install/upgrade: trying to overwrite '/usr/bin/qemu-ppc64', which is also in package qemu-user 0.13.50-2011.02-0-0ubuntu1" [Low,Confirmed] https://launchpad.net/bugs/71769013:40
hallynkirkland: hm, so all of the arm-* patches should be removed from qemu-user, right?13:45
hallyn\o/13:45
pittidebfx: note that we already have python-gudev in the archive, which just like pyudev is obsolete13:47
zul@pilot in13:47
=== udevbot changed the topic of #ubuntu-devel to: Archive: open | Development of Ubuntu (not support, not app development) | #ubuntu for support and general discussion for dapper -> maverick | #ubuntu-app-devel for application development on Ubuntu | http://wiki.ubuntu.com/UbuntuDevelopment | See #ubuntu-bugs for http://wiki.ubuntu.com/HelpingWithBugs | Current Friendly Patch Pilots: ev, zul
kirklandhallyn: should be fix released now13:48
pittidebfx: ah, sorry, it's libudev bindings, not libgudev; for the latter we have a GIR now13:48
kirklandhallyn: my last upload fixes that13:48
pittidebfx: ok, so ignore me :)13:48
kirklandhallyn: yes, all of the arm patches can go13:48
hallynkirkland: you re-uploaded qemu-user?13:48
kirklandhallyn: no13:48
kirklandhallyn: qemu-kvm13:48
kirklandhallyn: we dropped that manpage from qemu-kvm (slangasek's patch)13:49
hallynso you removed qemu-ppc64 from qemu-kvm?13:49
hallynoh, it's the manpage!13:49
hallyndoh13:49
hallynkirkland: at this particular moment, I'm down to two patches in qemu-kvm-0.14.0~rc1+noroms :)13:50
=== warp10- is now known as warp10
kirklandhallyn: rock13:50
sorenNo doko?13:50
hallynkirkland: shoudl '~rc1' be in the name like that, btw?13:50
=== dendro-afk is now known as dendrobates
sorenMaybe someone else can help me out.13:53
ScottKI thought he'd be back today (doko)13:54
sorenScottK: You might be able to help me with this, actually.13:56
sorenOnce upon a time, python-eventlet was built: https://edge.launchpad.net/ubuntu/+source/python-eventlet/0.9.13-0ubuntu1/+buildjob/203193013:56
ScottKOK13:57
sorenThe build log from amd64 shows that the .deb ended up containing a bunch of things in /usr/lib/python2.7/dist-packages/eventlet/13:57
sorenin addition to the expected stuff in  /usr/share/pyshared/eventlet/13:57
=== oubiwann is now known as oubiwann_
sorenI just built a newer version earlier today that didn't end up with stuff in /usr/lib/python2.7/dist-packages/eventlet/13:58
soren..this makes upgrades suck because there are leftover .pyc files in /usr/lib/python2.7/dist-packages/eventlet/.13:58
ScottKWhere's the newer version?13:58
sorenhttps://edge.launchpad.net/ubuntu/+source/python-eventlet/0.9.14-0ubuntu1/+buildjob/226100813:59
sorenI tried rebuilding the old source package, and this time I didn't get anything in in /usr/lib/python2.7/dist-packages/eventlet/ so it looks like there was a toolchain problem at some point.13:59
soren...and I can't imagine I'm the only one having to deal with this fallout on upgrades.13:59
seb128soren, seems similar to the pywebkitgtk recent issues14:00
seb128soren, see the current upload of that one, the changelog has some details14:01
sorenseb128: The one from about two weeks ago?14:02
sorenYeah, changelog entry sounds similar. Thanks.14:02
seb128soren, yes14:02
seb128soren, I think that was due to package rebuilt in natty when part of the python... didn't support 2.7 yet14:02
ScottKsoren: I agree it was a problem with the 0.9.13 upload's toolchain.14:03
seb128soren, was the "buggy" version uploaded around the time python2.7 landed?14:03
ScottKLooks like it was.14:03
seb128soren, it's likely to be a similar issue, rebuilt at a time python2.7 was pulled it but part of the buildchain was not ready14:04
soren2010-10-31 17:05:06 CET14:04
ScottKThere was also a period where 2.7 was a supported version, but not all the helper tools had been updated to know about it yet.14:04
sorenScottK: Now that sounds like trouble.14:04
sorenUh, wrong timestamp.14:04
seb128soren, well, just add some code to clean it up on upgrade14:05
sorenYeah.14:05
seb128we should likely check what packages got rebuilt around this time14:05
seb128it's 2 of those which are spotted as broken now14:05
seb128we might have some other ones14:05
ScottKsoren: I think seb128's suggestion is the right way.14:14
ScottKsoren: Alternatively, I think switching to dh_python2 would also fix this as, IIRC, that's where it puts it's .pyc files.14:16
sorenScottK: I'll deal with dh_python2 some other day. :)14:25
sorenScottK, seb128: Thanks, guys!14:25
ScottKOK.14:25
ScottKbarry: ^^^ It would probably be a good idea for someone to do a methodical search for other misbuilt packages.14:26
mvoScottK: misbuild in what way? I may be able to help here (got a VM image with maverick->natty upgraded *python*)14:44
ScottKmvo: As soren and seb128 were discussing it looks like late Octoberish pysupport was installing files for python2.7 in the wrong place.14:45
=== diwic is now known as diwic_afk
=== diwic_afk is now known as diwic
* mvo reads scrollback14:47
=== jelmer_ is now known as jelmer
* barry reads scrollback too14:52
=== cking is now known as cking-afk
=== herton is now known as herton_lunch
jelmerzul: Thanks once again for sponsoring :)15:17
zuljelmer: no worries15:17
kirklandpitti: hey, are you still around?15:20
pittihi kirkland15:20
kirklandpitti: i'm hoping there's an obvious fix for this ...15:21
kirklandpitti: been broken for me for 1 month now;  been hoping a magic update would just fix it15:21
kirklandpitti: i can't alt-tab to switch windows, resize windows, move windows, etc.15:21
kirklandpitti: this is natty gnome15:21
kirklandpitti: perhaps i'm missing a package?  or some configuration from day1 natty is not compatible with today?15:22
pittikirkland: hm, that doesn't happen for me; seb128, didrocks, did you ever hear about alt+tab/resizing/moving windows being broken in natty?15:22
pittikirkland: does it happen for a new user, too?15:23
pittikirkland: that's usually the first litmus test whether it's package or config related15:23
seb128didn't read anything about that15:23
pittiI didn't see that either15:23
seb128kirkland, is that under unity or classic GNOME?15:23
seb128try to unity --reset maybe15:23
pittikirkland: ok, so try with new user first, then let's bisect it todwn15:23
pittidown15:23
pittiseb128: "classic gnome"15:24
highvoltagepitti: that sounds like the start of a nercore rap :)15:24
highvoltage*nerdcore15:24
didrockspitti: not really about that, alt + tab can be very slow15:24
geserkirkland: I got once a problem with alt-tab in unity too, I had to re-add the key shortcut as it was gone15:25
kirklandpitti: okay, i'll create a new user15:25
kirklandseb128: classic gnome15:25
didrockskirkland: normally, I tried to migrate uncompatible settings, but yeah, --reset is always better :)15:25
seb128kirkland, try a guest session to start I guess15:25
seb128didrocks, is there a compiz --reset?15:25
pittiguest session would start unity, though15:26
didrocksseb128: not for that, unfortunately…15:26
didrocksguest session should start the session your are in15:26
didrocksyou*15:26
seb128pitti, what didrocks said15:26
pittididrocks: oh? clever15:26
didrocksso, classic if you are in gnome-classic, unity if you are in ubuntu desktop… and so on :)15:26
kirklandweird, unity was not installed15:27
kirklandi did not uninstall it15:27
didrockspitti: I fixed it for alpha1, but didn't retest for alpha215:27
didrocksso, in any case, it's in my checking TODO as it's often broken by inadvertance15:28
seb128didrocks, what?15:28
didrocksseb128: the "start the corresponding guest session"15:28
=== diwic is now known as diwic_afk
seb128didrocks, that works, at least it starts the classic session for me15:28
didrocksseb128: ok nice, not broken again yet :)15:29
kirklanddidrocks: seb128: pitti: okay, i installed unity, and then ran unity --reset and I can now move windows and resize them again!15:29
kirklandi still can't alt-tab, though15:29
pittikirkland: that's progress!15:29
pitticurious, though, as unity shouldn't be involved in classic gnome15:29
didrockskirkland: try to hang the alt + tab for few seconds15:30
pittiok, need to finish early today, sorry15:30
pittikirkland: I'll read backscroll15:30
seb128pitti, well, unity --reset starts compiz with a fresh profile15:30
pittiah15:30
pittiso, compiz bug15:30
didrockskirkland: there is a performance issue with it, so maybe15:30
hallynjinkeys - requestsync failed with 'too many concurrent connections' to mx.launchpad.net:2515:30
kirklanddidrocks: nope ... if I'm in the terminal, I get "^[      " in my window15:30
seb128pitti, "bug" or "config issue"15:30
didrockskirkland: staticswitcher in enabled in ccsm?15:30
didrocks(it should as you just reset the value)15:31
kirklanddidrocks: what is ccsm?15:31
hallynkirkland: did you allow the latin keyboard thingie to misconfigure with alt perhaps?15:31
kirklandhallyn: oh15:31
didrockskirkland: compizconfig-setting-manager, a way to change everything in compiz and break it :)15:31
kirklandhallyn: maybe so15:31
kirklanddidrocks: not installed, installing now15:31
didrockskirkland: compizconfig-settings-manager and then, just launch "ccsm"15:31
didrockskirkland: you should ensure that the staticswitcher plugin is activated15:32
kirklanddidrocks: was not emabled15:32
didrockshum…15:32
didrocks /!\ activating/deactivating plugin make compiz crash now15:32
kirklanddidrocks: got it, that works now15:33
kirklanddidrocks: seb128: pitti: thanks so much!15:33
didrockskirkland: that's really weird, unity.ini, debian/rules for autogeneration list, and the compiz gconf default are setting it…15:34
didrockskirkland: but well, nice that fixed it for you, I'll try again with a new user :)15:34
kirklanddidrocks: seb128: pitti: because of this, i have spent most of the last 4 weeks in tty1, with byobu+w3m+ irssi+mutt :-)15:34
kirkland(which is actually pretty nice :-)15:34
seb128kirkland, don't hesitate to ask early when you have a such issue15:34
didrockskirkland: well, that's just a way for you to enjoy byobu a little more :)15:35
kirklandseb128: thanks, will do15:35
tumbleweedbdrung: ^5 (on ubuntu-sponsoring)15:36
=== herton_lunch is now known as herton
dholbachbdrung, tumbleweed: are you both looking into the unicode problem right now?15:39
dholbachI just wanted to take the dog for a walk real quick - I can review whatever you have when I'm back15:39
dholbachit'd be nice to get the issue resolved :)15:40
tumbleweeddholbach: at least I am :)15:40
dholbachthanks muchly15:40
dholbachI'll let you know when I'm back15:40
bdrungdholbach: i am cooking15:46
mvohey zyga - you pinged me earlier?15:47
zygamvo, yes15:47
zygamvo, I had this crazy idea of being able to install packages without invoking any scripts, then gathering the required scripts and executing them in sequence during first boot, I was wondering what kind of caveats would you think of in such design15:48
mvobarry: mind if I upload some rebuilds for python2.7 ? looks like python-oss is a candidate for this, probably more15:48
mvozyga: you need to consider that pre-depends requires a package to be installed and configured, so you can only delay those with "regular" dependencies. then you need to run the configure scripts on bootup in the right order (well, dpkg --configure -a should actually handle this for you). and there is the issue that your daemon will not get restarted, so e.g. on security updates of libfoo the old copy keeps running15:51
zygamvo, re, sorry about being missing16:00
zygamvo, this about building system images "dry", without running the target system (pc->arm)16:00
zygamvo, so issues such as running system are not important here16:01
zygamvo, in fact we have a slightly easier work to perform, currently linaro has a tarball with the root fs created using lexbuilder/offspring with the regular method (which AFAIR depends on qemu faiking the target system)16:01
zygamvo, then when you want to create a bootable media for your device you need to combine this filesystem with a "hardware pack" which is a tarball with extra packages and repository for anything that they might depend on16:02
zygamvo, currently the procedure is somewhat complex because we need to install those hardware pack packages in the image we're building, I wanted to simplify that16:02
zygamvo,  up to a point that the whole procedure would not depend on anything apart from simple file manipulation tools16:03
=== beuno is now known as beuno-lunch
evGunnarHj: merged both branches and uploaded; great work on these!16:17
ev@pilot out16:30
=== udevbot changed the topic of #ubuntu-devel to: Archive: open | Development of Ubuntu (not support, not app development) | #ubuntu for support and general discussion for dapper -> maverick | #ubuntu-app-devel for application development on Ubuntu | http://wiki.ubuntu.com/UbuntuDevelopment | See #ubuntu-bugs for http://wiki.ubuntu.com/HelpingWithBugs | Current Friendly Patch Pilots: zul
seb128hum16:31
seb128is launchpad or launchpadlib known to be broken?16:31
seb128the retracers crash on "NotImplementedError: Can't look up definition in another url (https://api.launchpad.net/1.0/#distributions)"16:31
jpdsseb128: leonardr is talking about this in #launchpad with apw.16:32
james_wseb128, login_*(name, service_root=EDGE_SERVICE_ROOT) needs to change EDGE_SERVICE_ROOT to "production"16:33
pittijames_w: thanks16:35
apwjames_w, so login_*(name, service_root="production") ??16:35
james_wapw, yeah16:35
james_wif you are on a really old version of launchpadlib that will crash, let me know if so16:35
seb128james_w, how come they didn't keep it working for compatibility purpose?16:36
seb128it's breaking retracers and sponsoring queue and versions and...16:36
seb128like is there any need to force us to do review and fix everything now by breaking it?16:36
james_wseb128, they wanted to reassign the edge machines to the production, and a redirect broke some other things16:37
james_wseb128, I disagree with the way they have gone about it16:38
seb128james_w, ok, thanks16:38
bobgi am writing a package for my company that supplies the debconf values for ldap-auth-config (so that we can install this package to config a machine to use the company ldap for authentication) what's the best channel to get help for that?16:40
cjwatsonin fairness the edge decommissioning was announced several months ago16:42
pittiseb128: apport trunk already uses production, so the natty chroot should be okay, and the crash-digger merely needs a bzr pull16:44
pittiseb128: the only problem is the maverick chroot, we'd need either an SRU or a backport of apport in my PPA; I'll handle that one tomorrow16:44
bdrungdholbach, tumbleweed: merged16:45
pittiseb128: ok, branches updated and locks removed; let's see how it goes16:45
seb128pitti, thanks16:45
pittiseb128: ah, need to refresh the LP cookie, doing..16:46
pittiseb128: did it crash right away? it's currently consolidating the dup db, but that already means lots of LP access16:51
seb128pitti, yes16:51
pittiok, cool16:52
seb128pitti, thanks for the quick fixing16:52
achiangpitti: do you understand the relationship between udev and usb_modeswitch? i'm playing around with a new modem, which i'm pretty sure needs to be mode-switched. it was not originally listed in /lib/udev/rules.d/40-..., so i stuck an entry in there. yet, when i plug it in, i don't really see udev calling the proper script16:53
achiangudevadm monitor isn't really showing me anything interesting (or i don't know what i should be looking for)16:53
pittiachiang: I'm just logging out, can you please mail me?16:54
achiangpitti: ok, sure16:54
pitticheers16:54
achiangthanks16:54
slangasekhallyn: I thought the conclusion was that qemu*ppc64 rather belonged in /qemu-linaro/; is that not the plan?16:55
hallynkirkland: ^16:57
hallynslangasek: that hadn't been what i remembered, and i *think* not what kirkland took away from it either, but waiting for him to confirm16:58
kirklandslangasek: i thought we were putting any and all kvm-accelerated stuff in qemu-kvm16:58
kirklandslangasek: where ppc64 is (or will very soon be) kvm-accelerated16:58
dholbachbdrung, pulled17:03
slangasekkirkland: well, we said that, yes... we also earlier discussed that powerpc support would be going directly against qemu upstream so it might be just as good to package it via qemu-linaro17:05
slangasekkirkland: I guess I don't mind either way, but at this point you're missing a Replaces :)17:05
=== deryck is now known as deryck[lunch]
keesseb128: re 717358: what does that have to do with this goofy menu bar?17:09
seb128bug #71735817:10
ubottuLaunchpad bug 717358 in nautilus (Ubuntu) "nautilus puts a menu bar at the top of the desktop" [Low,Incomplete] https://launchpad.net/bugs/71735817:10
seb128kees, I guess I didn't understand the issue, it seemed like you have the default config with a gnome-panel at the top of the screen and indicator-appmenu17:10
keesnope. I have no panel on the top.17:11
keesyou can see in the screenshot that it's a menu bar17:11
seb128kees, well that could have been the indicator-appmenu applet on a panel weirdly themed as well17:11
keesand if I select "Help / About" it says nautilus17:11
kirklandslangasek: hrm, okay;  please commit the Replaces that we need against lp:ubuntu/qemu-kvm17:11
seb128right, the default appmenu if you have nothing focussed is the nautilus one17:12
keesI'm using classic desktop.17:12
seb128kees, do you have a dual screen config?17:12
keesnope17:12
kirklandslangasek: the ppc64 patches will be against HEAD, but we're shipping qemu-kvm-0.14 in 11.04, so we're not far off17:12
seb128kees, well, indicator-appmenu is in the default classic desktop applet list in natty17:12
keesnone of my other menu bar end up there (thank goodness).17:13
kirklandslangasek: also, it's the server team doing the work and testing against ppc64/kvm, so i think it'll be better for us to work against qemu-kvm (ours) rather than stepping on qemu-linaro (yours)17:13
seb128kees, ok, dunno then, I just tried in a guest session and move the default gnome-panel which is at the top and I don't get that17:13
seb128kees, I've switched back the bug to New I will let someone else confirm17:14
keesseb128: mdeslaur already confirmed it17:14
seb128kees, nautilus didn't get an upload for a month so it's not likely due to it17:14
slangasekkirkland: well, I would like less of an ours vs yours here; qemu-linaro is just like any other Ubuntu package and if changes are needed any Ubuntu developer can make them as normal17:14
* kees looks around for tedg17:14
kirklandslangasek: heh, fair enough17:14
slangasekkirkland: so from that POV I don't really think that having it in qemu-linaro instead of qemu-kvm should handicap you17:14
seb128kees, try mterry or kenvandine otherwise ;-)17:15
kirklandslangasek: okay, but you did tell me qemu-linaro will be 0.13.5, right?17:15
keesseb128: okay, thanks!17:15
seb128kees, you're welcome17:15
keesmterry, kenvandine: hi! :) can you look at 717358? does that relate to work you've done recently?17:15
slangasekkirkland: qemu-linaro is *currently* at 0.13.50, which is "straight from HEAD plus linaro cleanups"17:15
kirklandslangasek: we'll be uploading 0.14~rc1 today, so that puts us closer to HEAD (which I think is the main point)17:15
slangasekfrom my side I haven't heard that an rc was impending, but the line of communication is a bit long17:16
slangasekAIUI we're no more than 2 weeks out of date wrt upstream17:16
slangasekand will be syncing with them again between now and release17:16
mterrykees, wait, so nautilus is drawing its menu in gnome-panel even without the appmenu being active?17:17
keesmterry: no, no gnome panel at all up there.17:17
slangasekkirkland: the other question I have is, is whether it makes sense to install qemu-system-ppc64 for everyone on x86 who installs qemu-kvm17:17
kirklandslangasek: interesting choice of version, then :-)17:17
keesmterry: I have only a panel at the bottom of my screen, and I'm running classic desktop so none of the menu-bar stealing should be happening.17:17
slangasekkirkland: the 0.13.50? It's what was in the upstream git at the time as the label17:17
mterrykees, oh, weird.  No, not related to my work17:17
keesmterry: okay17:18
kirklandslangasek: fair enough;  qemu is weird then :-)17:19
seb128kees, mterry: ok, I can confirm that, if you don't have an appmenu container set it does that17:19
seb128kees, mterry: like in a guest session if you remove indicator-appmenu from gnome-panel17:19
mterryMUST SHOW APPMENU!!! GRR17:19
seb128;-)17:19
mterryseb128, I can look at it17:19
seb128mterry, if you want to that would be welcome17:19
seb128otherwise we can ask ted when he's back17:19
kirklandslangasek: and yes, i think that to be consistent with myself (oh so important, btw!), qemu-kvm should install qemu-system-[i386,x86_64,ppc64]17:20
kirklandslangasek: and qemu-kvm is the home for "architectures that support kvm-acceleration"17:20
kirklandslangasek: at least for now17:21
kirklandslangasek: and then we have another interesting discussion when cortex15 adds VT support for ARM17:21
kirklandslangasek: hopefully by then, qemu-linaro has merged into qemu17:21
slangasekkirkland: <smirk>17:21
kirklandslangasek: but i won't hold my breath on that one17:21
kirklandslangasek: too many moving parts outside of our control (ARM, QEMU, etc)17:21
=== beuno-lunch is now known as beuno
ograand you cant be sure the VT variant is actually kvm17:22
seb128re17:22
slangasekkirkland: qemu-linaro is already the source for upstream qemu in Ubuntu packages, for all intents and purposes - merging isn't the issue17:22
ogracompatible17:22
seb128mterry, I was saying that if you want to look to it that would be welcome or we can ask ted17:22
kirklandslangasek: okay17:22
seb128laptop crashed on vt switch then17:22
seb128mterry, that's not an appmenu though but the nautilus menu17:22
mterryseb128, oh, it's only nautilus?  ah, thought it was everything17:23
seb128like it doesn't track other menus or anything and go away when you nautilus --quit17:23
seb128could be the compiz update for the invisible dialogs issue17:23
mterryseb128, ok, I'll delay looking at that then.  I've got other indicator stuff I can do17:23
=== sconklin is now known as sconklin-lunch
seb128mterry, ok17:25
seb128it happens in unity as well in fact17:25
seb128I can see a one pixel grey line below the unity-panel there17:25
seb128if I switch workspaces I can see the menubar from nautilus during the transition17:25
GunnarHjev: Thank you, Evan!17:35
seb128kees, mdeslaur: do you know when the menu issue started?17:56
mdeslaurseb128: Unfortunately, not really, since it's being drawn _underneath_ my gnome-panel17:58
geserseb128: a few days ago, I can check my IRC log when I asked about it #ubuntu-desktop17:59
seb128geser, you asked on friday morning european time17:59
seb128geser, I checked17:59
seb128ok17:59
seb128let's say it's one of the update on thursday17:59
=== sforshee is now known as sforshee-lunch
hyperairwas there a tool that allows you to check the signatures of source packages?18:04
Laneydscverify18:07
hyperairaha!18:08
hyperairthanks18:08
hyperairi'm uploading gdata-sharp to ubuntu now18:10
Laney18:10
Laneysync?18:10
hyperairyes18:11
=== deryck[lunch] is now known as deryck
hyperairLaney: we'll need to rebuild gnome-do-plugins18:12
Laneysure18:12
hyperairin debian as wel18:12
hyperair+l18:12
hyperairwell gdata# has been uploaded.18:13
hyperairnext will be banshee18:13
hyperairbut that'll have to wait for directhex to upload it to debian first.18:13
Laneyyou can probably make it syncable18:13
hyperairthe one with amended debian/control18:13
Laneyif you take that patch into debian18:13
hyperairnah, banshee isn't syncable.18:13
Laneyi mean plugins18:13
hyperairah18:13
hyperairi don't know, i didn't work on gnome-do-plugins before18:14
Laneyit's your patch :P (which is already upstream)18:14
hyperaireh?18:14
hyperairit's my patch?18:14
hyperairO_o18:14
Laneycheck it out18:14
* hyperair checks18:14
* sebner hugs Laney and hyperair =)18:15
hyperairoh that one18:15
hyperairthat's oooooooooold18:15
hyperairand that patch should go into debian, yes18:15
Laneythere you go, an excuse for an upload/sync18:15
Laney\o/18:15
hyperairheheh18:15
hyperairhmm18:16
hyperairit's still svn? =O18:16
LaneyRAOF was talking about migrating it the other day18:16
* Laney knows not what the plans are18:16
=== diwic_afk is now known as diwic
hyperairi see.18:17
hyperairit seems that hibernate in gnome-do is broken though.18:18
hyperairon maverick18:18
hyperairi haven't had time to poke it to see18:18
hyperairor maybe it's my weird setup18:19
* sebner goes crying into the corner as he feels slightly ignored18:20
* Laney fluffs sebner18:20
sebner:D18:21
* iulian hugs sebner.18:21
sebner\\o/18:21
* Laney fades away18:21
Laneyttyl18:21
bobgis it possible to use debconf-set-selections inside a package preinst (or other) script so that it effects another package?18:33
cody-somervillepitti, Is apport sending a 'Crash report detected' to the notification daemon over and over repeatedly a known issue in Maverick? :P18:52
=== sforshee-lunch is now known as sforshee
cody-somervillewow... I just noticed that apport will open up the web browser running as root. That can't be intentional.19:08
satyahello19:10
kklimondajdstrand: hey, do you have a moment?19:15
kklimondaactually, anyone from the security team would help :)19:16
jdstrandkklimonda: whatcha need?19:19
jdstrandkklimonda: and hi! :)19:20
kklimondajdstrand: hey. I have a small problem.19:20
=== zul_ is now known as zul
* jdstrand thinks he may know what it is...19:21
kklimondajdstrand: Transmission requires a newer version of libevent then the rest of the archive, and we can't do the transition as we get some ftbfs - some of them in tests which indicates that something subtle has changed, and other packages may be affected.19:21
jdstrandthat was not it :)19:21
kklimondajdstrand: it leaves me with two choices - keep transmission at 2.13 for natty19:22
kklimondawhich will make it harder on both us and upstream to maintain it.19:22
kklimondajdstrand: or rebundle libevent2 in transmission source - it was bundled for a long time, I think we started using a system version only a year ago or so.19:23
* jdstrand cringes a little19:23
jdstrandlet me look at the source19:23
kklimondasure - do you want a link to libevent 2.0.10?19:25
jdstrandlooks like 1.73-3 use the system libevent19:25
jdstrandkklimonda: not really19:25
kklimondaso it was even earlier? How long have I been around..19:25
jdstrandso, lucid is supported until 2012-04 and natty is supported until 2012-1019:26
jdstrandyeah, that was pre-karmic19:26
jdstrandI'm sorry19:26
jdstrandlucid is supported until 2013-0419:26
jdstrandthat makes it easier19:26
jdstrandnatty will fall off before lucid is eol19:27
kklimondaright, how does it help19:27
kklimonda?19:27
jdstrandso I'm not sure the maintenance burden is greatly reduced by having the absolute latest trnasmission19:27
chrisccoulsonwe want the latest crack though ;)19:28
jdstrandkklimonda: so, I'm inclined to say that the recommendation from a security team POV is to keep transmission where it is for now, until the libevent issues are worked out and it can use the system one19:28
jdstrandchrisccoulson: :P19:29
jdstrandthere might be other factors, but embedded a library is really pretty bad, even more so when we diverge from Debian19:29
jdstrands/embedded/embedding/19:29
kklimondajdstrand: where can I check the history of security issues in libevent?19:30
jdstrandhttp://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=libevent19:30
kklimondahmm.. so it's a choice between the latest crack, and ease of maintainance.. bummer, both choices suck ;)19:33
jdstrandwell, what sucks is the timing of the library transition19:33
SpamapSIs hardy still getting actively updated with non-security SRU's or is it security only?19:34
jdstrandSpamapS: it will ge tthe occasional SRU19:34
SpamapSjdstrand: whiel I have your attention, I think that bug #251139 is making an unacceptable SRU request to have apr backport a change to use /dev/urandom instead of /dev/random. Would you concurr?19:42
ubottuLaunchpad bug 251139 in apr (Ubuntu) "backport apr 1.2.12 to Hardy" [Undecided,New] https://launchpad.net/bugs/25113919:42
kklimondaok, we are staying with 2.13 in this case, I'm not willing to add burden on others so we can get latest features. thanks jdstrand :)19:42
jdstrandkklimonda: sure, np. a wise choice if I may say :)19:43
jdstrandSpamapS: on the face of it, I don't see it as particularly high-risk, but hardy is pretty stable these days. I think you might have a hard time convincing them it is needed. it is a 2.5 year old bug with no one saying it affects them too or duplicates19:46
jdstrandand by them, I mean ubuntu-sru19:46
SpamapSYeah exactly19:46
SpamapSEntirely possible too that somebody has built a system out there expecting super-high-quality-randomness in apr.19:47
jdstrand"Won't Fix" is a viable choice. who knows, the user may come back with an important use case to reconsider19:47
SpamapSThats what I was going to mark it.19:47
SpamapSThanks for taking a look. :)19:47
jdstrandsure! :)19:47
* SpamapS just loves triaging bugs that are older than his children.19:48
kklimondaoh, I just made my life harder then it should be - I'm subscribed to ubuntu MLs from my @ubuntu address, but bug mails are sent to my main address. Because of that people CC the email which is not subscribed, and my response ends up in the moderation..19:52
micahgkklimonda: virtual identity or correct identity for Thunderbird can help with that19:54
kklimondathunderbird you say? :)19:54
kklimondaI guess it's time to give it another shot19:54
SpamapSEvolution seems to get the reply address mostly right, most of the time.19:56
=== zul_ is now known as zul
=== jam1 is now known as jam
=== dendrobates is now known as dendro-afk
=== dendro-afk is now known as dendrobates
ScottKWow.  A nice comment about Evolution and multiple hours of stunned silence ensue.22:11
macohaha, especially after that pc world article22:11
charlie-tcaamazing what a single good thing will do, huh?22:14
keesdoko: what're your thoughts on 71266222:34
dokobug #71266222:35
ubottuLaunchpad bug 712662 in bash (Ubuntu Karmic) "network redirection has been enabled" [High,Confirmed] https://launchpad.net/bugs/71266222:35
=== zyga is now known as zyga-afk
dokokees: would it be ok, if such packages use /bin/sh in there scripts only? and if a user is created for these packages, to set the login shell to /bin/sh ?22:38
keesdoko: hrm? the point is to keep any shell from having built-in network redirection22:39
dokokees: shell or interpreter?22:40
keesshell.22:40
keesscripting languages all have networking, even awk22:40
dokopeople did file bug reports to enable it22:40
keesbut shells doing networking is odd22:40
keesyeah.22:40
keesbut it's been off for so long; it's a security feature :)22:40
dokoI did enable it once dash was the default shell22:41
keestrue22:41
keesjdstrand: what do you think of making the distinction between dash and bash for this? I think it wouldn't work well.22:41
keesdoko: the problem is that most apps (say, firefox) when running subshells are using the users's defined login shell to do the work.22:41
keesso it's not so simple to separate dash and bash in this case22:42
dokokees: what would break if we disable the redirects?22:43
jdstrandkees: I'm not sure I understand the question. your last comment is the problem. eg, things that use /bin/sh get dash in Ubuntu and profiling is no problem. it is things that specifically use bash22:43
keesdoko: nothing I know depends on it22:43
dokojdstrand: bash is still essential, so it's difficult to determine what depends on bash22:44
jdstrandforgive me, I have no idea what I am being asked22:45
dokoask kees ;P22:45
keesjdstrand: heh, sorry.22:45
jdstrandI'm coming at it from an apparmor profiling angle22:45
jdstrandit is very easy to see when profiling an application which is used22:46
keesjdstrand: right, so how to the abstractions currently deal with dash vs bash?22:46
jdstrandthere is no dash abstraction22:47
jdstrandthings that use dash will use the bash abstraction22:47
jdstrandand ixr22:47
keesI'm just trying to use AppArmor as supporting evidence. I don't like shell redirection because it makes remote attacks much easier22:47
jdstrandthe bash abstraction isn't a problem22:47
jdstrandit is when you pull in networking, and have bash ixr22:48
jdstrandeg,22:48
jdstrand#include <abstractions/namneservice>22:48
jdstrand#include <abstractions/bash>22:48
jdstrand/bin/bash ixr,22:48
SpamapSslangasek: around? I think we may need to make a change to upstart-job's handling of the 'restart' command after discussing something w/ Keybuk last week.22:48
jdstrand^ with that, networking is implicitly allowed via the nameservice abstraction, and bash has network redireection, so you have a reverse shell22:49
jdstrandwhere one would not think one would22:49
dokokees, jdstrand: offline now, let's continue later this week, but not tomorrow. need to catch up on more things22:49
jdstrandif networking is not allowing in the profile, then no problem22:49
keesdoko: okay22:49
jdstrandif dash is used and not bash, then no problem22:50
keesjdstrand: right22:50
jdstrandit is the combination of bash, networking in the profile and network redirection22:50
jdstrandthen you have to go through ridiculous hoops to confine bash22:50
jdstrand(see the bug)22:50
jdstrandkees: cups suffers from this, as a specific example22:51
jdstrand./usr.sbin.cupsd:  #include <abstractions/bash>22:51
jdstrand./usr.sbin.cupsd:  /bin/bash ixr,22:51
=== dendrobates is now known as dendro-afk
bdrungzul: are you still progressing bug #719056?23:05
ubottuLaunchpad bug 719056 in sg3-utils (Ubuntu) "Sync sg3-utils 1.30-1 (main) from Debian unstable (main)" [Wishlist,New] https://launchpad.net/bugs/71905623:05
=== sconklin is now known as sconklin-gone
zulbdrung: hmm?23:12
bdrungzul: you gave your ACK, but ubuntu-sponsors is still subscribed, the status is still new, and ubuntu-archive isn't subscribed23:13
zulyeah i just stepped away for a momment23:13
zul@pilot out23:14
=== udevbot changed the topic of #ubuntu-devel to: Archive: open | Development of Ubuntu (not support, not app development) | #ubuntu for support and general discussion for dapper -> maverick | #ubuntu-app-devel for application development on Ubuntu | http://wiki.ubuntu.com/UbuntuDevelopment | See #ubuntu-bugs for http://wiki.ubuntu.com/HelpingWithBugs | Current Friendly Patch Pilots:
=== bjf is now known as bjf[afk]
bdrungzul: status -> confirmed23:18
=== dendro-afk is now known as dendrobates
=== spm` is now known as spm

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