/srv/irclogs.ubuntu.com/2015/03/04/#ubuntu-desktop.txt

darkxstlarsu, https://code.launchpad.net/~darkxst/gnome-contacts/titlebar03:29
=== duflu_ is now known as duflu
pittiGood morning06:00
didrocksgood morning06:16
larsumorning!06:55
didrockshey larsu :)06:56
seb128good morning desktopers06:57
seb128hey didrocks larsu06:57
didrocksre seb12806:58
pittibonjour didrocks, seb128, et larsu !06:59
didrockshey pitti :)07:01
didrockschannel getting active suddenly07:01
larsubonjour pitti!07:02
seb128hey pitti07:05
seb128wie gehts?07:05
didrockspitti: thinking more about the emergency tmp thing… one solution would be to use something like that: http://paste.ubuntu.com/10523961/07:08
didrockspitti: that way /tmp being a tmpfs or not, if the system isn't ro and have less than 50, we do that remount + tag (but this adds another mount point if /tmp was already a tmpfs)07:09
didrocks50M*07:09
didrocksthe thing is that if /tmp is mounted as tmpfs already with less than 50M of free space, it will always have that remount on top of it (not sure if that's a valid case for us though)07:10
pittididrocks: well, if that happens (low-RAM systems), your new tmpfs isn't going to have more?07:15
didrockspitti: right, it's just that it will have this errornous mount07:17
didrocksor I need to detect that /tmp isn't a tmpfs already07:18
didrocksor I just Conflicts=tmp.mount07:18
didrockscan do this, anyway, we detected the remaining disk space on a tmpfs in that case, so the remount with "overflow" has no meaning07:19
pittididrocks: btw, can we avoid the subshells and awk?07:22
pitti$ for avail in $(df -BM --output=avail /tmp/); do true; done; echo ${avail%[^0-9]}07:22
pitti758907:22
pittithe for loop is ugly, but I don't know how to split on \n in POSIX07:22
pittiand no cookies for df to not have a --no-headers option :)07:23
didrockspitti: if you prefer the loop approach, sure07:23
pittididrocks: oh, wait07:24
larsuTrevinho: morning. I'm afraid to ask, but how is the gtkframeextents work coming along?07:24
pitti$ stat -f -c %f /tmp/07:24
pitti194271507:24
pitti?07:24
pittididrocks: ^07:24
didrockspitti: raw mode in hex ?07:26
pittididrocks: no, free blocks in the file system07:26
pittior, if you want the MB07:26
pitti$ echo $(($(stat -f -c '%S*%f/1000000' /tmp/)))07:26
pitti795707:27
pittithat's still just one stat call, the rest is pure shell07:27
didrockspitti: yeah, sounds good that way!07:27
pittididrocks: je suis désolé07:27
didrockspitti: however, there is still a race in the systemd mount…07:27
pittishow me a bit of expensive shell, and I can't resist optimizing away the execs..07:27
didrockspitti: heh, that's fine, and thanks for it :)07:28
pittiwhy would it be a race, with teh After=?07:28
didrockspitti: I don't know, it mounts even if not enabled the mount point…07:28
didrocksas if it was taking tmp.mount into consideration07:28
pittioh, the ConditionPathIsReadWrite=/tmp sounds like a race?07:28
didrockspitti: well, it shouldn't mount /tmp as tmpfs still07:29
pitticonditions are evalated as pretty much the first thing in systemd when building the transaction, way before actually running the unit, no?07:29
didrocksah, so this is another issue then :p07:29
didrockspitti: but even without that, there is no reason in my scenario to have /tmp mounted in tmpfs07:29
didrocksenough disk space07:30
didrockstmp.mount not enable07:30
didrocksand 50% of the boots, it's enabled07:30
pittioh, and the unit will fail if there's enough space07:30
pittididrocks: hm, I don't know why it would run then07:31
pittidebug log?07:31
didrockspitti: can try, but remember yesterday what happened…07:31
didrockspitti: so ConditionPathIsReadWrite=/tmp is making it mounting 50% of the time here07:34
didrockswith ExecStart=/bin/echo true07:34
didrocksso not the service mounting itself07:34
pittididrocks: that's without having /tmp/ in fstab and tmp.mount disabled? i. e. /tmp on the root partition?07:35
pittididrocks: then that sounds like it's racing with remount-root.service?07:35
didrockspitti: right, no /tmp in fstabe and tmp.mount disabled07:35
pittibut I'm not sure if ConditionPathIsMountPoint=!/tmp/ would actually help07:35
pittiI figure not07:36
pittiit's the early boot transaction, pretty much anything can happen07:36
pittiand mounts aren't set up yet07:36
didrocksso we need to test that in the shell?07:37
didrockshum07:37
didrocksI disbled it07:37
didrocksdisabled*07:37
didrocksand now, it's again mounted as tmpfs07:38
didrockswth?07:38
pittididrocks: so what's the problem now? you want your unit to *always* run, not just sometimes; so the ConditionPathIsReadWrite=/tmp needs to go07:38
pittiand then the shell tests if there's enough space on /, and mounts a tmpfs on it if not07:38
pittiand the After=tmp.mount will make sure that you don't do it if you enable tmp.mount07:39
pittithe remaining problem will be if you mount /tmp in fstab07:39
didrockspitti: no, the condition is not enough, if the image is ro, are we ensure we will mount /tmp as tmps?07:39
pittiah no, that'll generate a tmp.mount too07:39
pittididrocks: if the image is ro, it's not that unit's job to ensure that the system has a tmp07:40
pittithen we do need tmp.mount or fstab07:40
pittior initramfs, or wherever07:40
didrockspitti: ok, so we always consider that /tmp is rw after tmp.mount07:40
didrocksbut that doesn't fix the race anyway, I still get it even without ConditionPathIsReadWrite=/tmp or the symlink test07:41
didrocks(less often though)07:41
didrocksI wonder if it's not the After= or Conflicts=07:41
pittididrocks: how about After=systemd-remount-fs.service ?07:42
didrockspitti: why would that fix tmp mounted as tmpfs?07:42
didrocksso, it's either the Conflicts= or After=07:44
didrocksit seems to enable tmp.mount, where it shouldn't07:44
* didrocks tries with just one07:44
didrocksAfter= "enables it"07:45
didrockslet me try with Conflicts= only07:45
pittididrocks: I mean, we want this to run after root is r/w, but before local-fs.target07:46
pittididrocks: if it runs while root is still r/o, we know even less about the state of the system07:46
didrockspitti: yeah, but that's not related to the race/bug I'm seeing, right?07:46
didrockspitti: btw, tmp.mount should maybe has that After=systemd-remount-fs.service as well in that case07:47
pittididrocks: so with "After=systemd-remount-fs.service tmp.mount", we know that /tmp from tmp.mount or fstab already happened, and that we can check if /tmp is a mountpoint or if the root fs is r/o07:47
* didrocks is lost, seems like we are having 2 discussions…07:47
pittididrocks: yeah, I wonder if it implicitly has After=local-fs-pre.target, i. e. mounts are only done after that (but I'm not sure)07:48
didrocksI'm trying 30 boots first to isolate the current issue, where systemd mounts /tmp as tmpfs, where it shouldn't07:48
pittididrocks: I don't understand your race yet07:48
didrockspitti: tmp.mount disabled, no /tmp mount in fstab07:48
didrocksif I bring a dummy service which is enabled with ExecStart=/bin/echo True07:48
didrocksif it states After=tmp.mount07:48
didrocksthen, /tmp will sometimes be mounted as tmpfs07:49
didrocksand confirmed that I see the same with Conflicts=tmp.mount07:49
pittiok, I don't understand that for sure07:49
didrocksseems that then it evaluates and enable tmp.mount07:49
pittiAfter= shouldn't enable tmp.mount07:49
didrocksright07:49
didrocksretrying 10 boots without the After/Conflicts07:50
didrockspitti: yeah, so 10 boots out of 10 without /tmp being mounted as tmpfs without After/Conflicts07:52
didrocksso they are bringing/enabling tmp.mount for unknown reasons :/07:52
didrocksrebooting in debug mode with those 2 markers07:53
didrocksMar 04 08:54:37 autopkgtest systemd[1]: Deleting job tmp.mount/stop as dependency of job systemd-timesyncd.service/stop07:55
didrocksMar 04 08:54:37 autopkgtest systemd[1]: Deleting job emergency-tmpfs.service/start as dependency of job tmp.mount/stop07:55
didrocksMar 04 08:54:37 autopkgtest systemd[1]: Installed new job tmp.mount/start as 5007:55
didrockspitti: yeah, the journal clearly shows that tmp.mount is executed07:55
pittididrocks: hm, then I have no idea why :/ I see why this would happen if you call mount on /tmp/ manually, but you said you took that out07:56
didrocks   Loaded: loaded (/lib/systemd/system/tmp.mount; disabled; vendor preset: enabled)07:56
pittii. e. removed/disabled that Exec= line07:56
didrockspitti: yeah, my job is /bin/echo foo07:57
didrockssystemd bug it seems :/07:57
didrockspitti: seems like the most robust way was yesterday's extension with current systemd…07:58
didrocksbut it has the issue to mark as "overflow" ro system07:58
pittididrocks: which one was that? the .service? or the tmp.mount.d/ snippet?08:01
didrockspitti: tmp.mount.d snippet08:02
didrockswith the generator08:02
pittididrocks: ah, hmm; I still think generators run too early to be able to decide that08:06
didrockspitti: but we can't have any service using After=/Conflicts=tmp.mount due to this bug… seems like we are stuck then08:06
pittididrocks: yeah, I'd ask on the upstream ML about that, this seems ood08:06
pittiodd08:06
didrocksseems a not-fun-bug to go to the dependency hell08:06
didrockspitti: would be more confortable posting if anyone can reproduce that, but well, posting08:10
pittididrocks: I thought you had a simple dummy unit with After= and Exec=/bin/true?08:11
didrockspitti: yeah, that's what I have08:11
pittididrocks: I can try that here08:11
didrockspitti: that would be nice :)08:11
pittiargh, I lost my adt VM, using my pid1 one08:11
didrockshum08:11
didrocksnot nice for reboot testing…08:12
pittididrocks: reproduced with http://paste.ubuntu.com/10524411/08:14
didrockspitti: ok, I'm not that crazy then08:16
pittididrocks: lost because of bug 1427999 FYI :)08:17
ubot5bug 1427999 in cloud-init (Ubuntu) "cloud images don't boot with systemd" [Critical,New] https://launchpad.net/bugs/142799908:17
pittiapparently they got switched last night08:17
excalibrAny webapp team here? Any idea why clicking 'executing this code now' in this page does nothing?08:18
excalibrhttps://developer.ubuntu.com/api/devel/ubuntu-13.10/javascript/web-docs/index.html08:18
didrockspitti: argh :/ without warning you?08:18
didrocksexcalibr: I would try #ubuntu-touch rather08:18
pittididrocks: well, I don't mind the "not warning", just that they are broken now08:19
pittididrocks: trying to juggle the touch seeds now, I'll get to that later08:19
excalibrdidrocks, but that is desktop integration, no?08:19
didrocksexcalibr: yeah, but they are not on that channel, mostly the touch one08:20
didrockspitti: email sent, let's see08:21
Laneyhullo09:03
larsuhi Laney!09:04
didrockshey Laney09:05
Laneyhow's it going?09:06
pittihey Laney09:06
Laneyhi pitti09:06
larsudarkxst: nice! Only issue I can see is that the change addressbook dialog still uses a header bar09:07
larsuLaney: good good, thanks. Getting a new laptop today :)09:07
larsuLaney: you?09:07
Laneyoh, finally!09:07
pittilarsu: ah, nice! which one do you get?09:08
Laneydoing good, managed to get a dentist appointment today09:08
larsuLaney: ya, took them some time to deliver...09:08
Laneytoothache be gone09:08
larsupitti: the new x109:08
larsu(yes I know, with spyware - didn't know this when I ordered ;) )09:08
pittiLaney: ouch, time for dentist?09:09
Laneyyep09:09
larsuLaney: all the best!09:09
Laneythey gave me one the same day, quite impressed09:09
pittiLaney: *shrug* I'm root on your laptop either way :)09:09
pittierr, larsu ^09:09
pittiwell, it's equally true for Laney09:09
Laneyha09:09
Laneyyou can use your root here to give me a root canal ...09:09
larsupitti: haha09:10
larsuscary09:10
pittiLaney: "one" -> appointment?09:10
Laneyyes09:10
darkxstlarsu, change address dialog doesnt seem to set headers09:19
darkxstand it should be off by default for custom dialogs? right?09:19
larsudarkxst: it should look at Gtk/DialogsUseHeaders09:22
larsunot sure why it doesn't work in this case09:22
Laneylook for use-header-bar being set, or gtk_dialog_new_with_header09:23
Laneyyou have to fetch the value from gtksettings and pass it in yourself09:24
* larsu is annoyed that apps have to do that09:24
=== greyback_ is now known as greyback
flexiondotorgLaney, will you be packaging GTK 2.24.27 for 15.04 or backporting the recent commits?09:28
LaneyI already backported those commits09:32
darkxstlarsu ok, can override it easy enough, but all of the few dialog bugs I have seen have been because of hardcoded use-headers type things09:34
larsudarkxst: like what?09:36
darkxstlarsu, apps hardcoding use-header to true09:36
darkxstlarsu, admittedly I haven't fixed a huge number of dialogs though09:37
flexiondotorgLaney, great.09:38
larsudarkxst: it shouldn't hard-code to true...09:38
larsudarkxst: but find out which desktop its running on09:38
larsugtk dialogs do that, but apparently every app needs to do it itself09:39
darkxstlarsu, I mean apps hardcoding gtk dialogs to use headers09:39
darkxstlarsu, https://bug745566.bugzilla-attachments.gnome.org/attachment.cgi?id=29849409:41
larsudarkxst: ah, that's even more annoying09:42
larsuwhy can't GtkDialog just do the right thinG?09:42
* larsu had some patches for that at some point but forgot09:42
darkxstlarsu, it only does the right thing for built-in dialogs atm?09:43
larsuya09:43
darkxstdidrocks, re ping last night, I assume you were talking about grilo-plugins-extra? that indeed should stay in universe09:46
didrocksdarkxst: can you please answer it to doko? he seemed to have been puzzled about it09:47
didrocks(probably on -devel, where the ping was)09:47
=== MacSlow is now known as MacSlow|lunch
didrockspitti: the more I poke, the more it becomes interesting12:20
didrocks(see upstream ML)12:20
* didrocks goes for a run12:20
pittididrocks: urgh12:21
Laneydesrt: howdy, know anything about g_socket_send_messages being broken on sparc/linux? https://buildd.debian.org/status/fetch.php?pkg=glib2.0&arch=sparc&ver=2.43.91-1&stamp=142541420212:26
=== alan_g is now known as alan_g|lunch
=== MacSlow|lunch is now known as MacSlow
=== alan_g|lunch is now known as alan_g
larsugetting there: http://i.imgur.com/z3ZdNDZ.png14:15
seb128larsu, nice!14:15
larsuseb128: pure css (except the icon part itself)14:15
larsuseb128: turns out Radiance has totally different colors...14:16
larsubut meh, works in both now14:16
seb128great14:16
seb128larsu, speaking of which, the indicators selection dots are buggy since the GTK update under it14:17
seb128they are white on grey14:17
larsuseb128: which ones? I only see them in the session menu, and those are colored darkly for me14:18
seb128larsu, the messaging menu status14:20
larsuseb128: indeed!14:21
larsuweird, should be the same code14:21
larsuI'll look into it14:21
larsubut ups person was just here bringing me a laptop. So might take a bit ;)14:22
seb128larsu, have fun!14:24
didrockspitti: I'm a little bit more lost with Lennart's answer, though14:29
didrockson to why tmp.mount is pulled in sometimes then14:30
didrockspitti: from what he wrote about condition evaluation, there is no reason at all why systemd-timesyncd.service is sometimes started, sometimes not14:36
didrockspitti: I'm a little bit afraid about the answer on dependency14:37
flexiondotorgLaney, Do you have a sec to give me a nudge in the right direction?14:38
desrtLaney: i mean like, wtf?14:39
desrtno sendmmsg on solaris?14:40
desrterm.  sparc.14:40
* didrocks maintained some sparc machines at previous job14:40
desrtwas the kernel randomly missing features on them?14:41
didrocksI was more remember of a lot of common utility not behaving the same than other platforms14:41
didrockslike "killall" not taking arguments…14:41
desrtoh.  that sounds like solaris, rather :)14:41
didrocksyeah, sparc does this as well14:41
desrtlinux on sparc is still linux...14:42
desrtand GNU on sparc is still GNU....14:42
desrti can't imagine that userland is substantially different in any way...14:42
desrtLaney: any chance that the sparc builds are being done on a machine with an old kernel?14:42
didrocksdesrt: solaris running on sparc processors is still solaris :p (sparc doesn't imply linux)14:43
desrtwell, certainly not14:43
desrtbut you're complaining about sparc when you should be complaining about solaris14:43
didrocksindeed, sorry, but that was the naming convention (mostly by architecture) at the job, hence it's stuck on my brain14:44
desrtLaney: so linux on sparc gained support for the sendmmsg syscall particularly late.... early in the 3.x series... could be that the builder still has an older kernel than that?14:44
desrtwould be nice if the builder stuff put the uname in the log along with all of the other envvars and such14:46
pittididrocks: (sorry, too busy.. but maybe he's right, and we'll just enable tmp.mount on vivid+1, and be done with it..)14:56
didrockspitti: so, won't fix it for vivid?14:57
didrockspitti: still doesn't explain why the systemd-timesyncd.service is sometimes started, but well, I'll get that to "backlog" for now14:58
didrocksand do the workaroud for machin-commit-id on overlayfs14:58
pittididrocks: ah nice, did you find out something there?14:58
didrockspitti: overlayfs stat report different major block on file and folders14:59
didrocksso it's seen as a different mount point14:59
pittiWTH?14:59
didrocksdiscussed with apw, he can't think of a way to know if a file is a mountpoint with overlayfs14:59
didrocksso I can't fix that centrally in systemd is_mount_point() call14:59
pittididrocks: ok; well, not worth fixing then I guess, as it's just cosmetical?14:59
didrockswell, I can at least in machine-id-commit, add a distro patch (because I guess upstream will tell "fix overlayfs") that if you can't unmount /etc/machine-id, instead of exit(1) right away, I check if the file system is overlayfs15:00
didrocksin that case, I exit 015:00
Laneydesrt: not sure, one sec15:54
desrtLaney: assuming that this is caused by an old builder, i'm not really likely to want to fix it....15:55
Laneyoh yeah it totally is15:55
LaneyKernel: Linux 2.6.32-5-sparc64-smp sparc (sparc64)15:55
desrtya... so there's the issue15:56
desrti guess you could hack that test out if you're on sparc? :/15:56
desrtpresumably this is for sid... which would have a new enough kernel, for sure15:57
desrt*shrug* this is the price of having wildly mismatched libc and kernel versions15:58
LaneyI'm asking #debian-sparc to see what's up16:03
Laneyflexiondotorg: you rang?16:03
flexiondotorgLaney, Thanks for checking in. pitti steered me in thr right direction.16:04
Laney'kay16:04
flexiondotorgLaney, I've fixed up ubuntu-mate-settings, just doin gthe final testing now.16:04
flexiondotorgLaney, nothing in /etc/skel16:04
Laneyoh man, happy days16:04
flexiondotorgLaney, Everything MATE specific too.16:04
flexiondotorgLaney, I've pushed my changes. Would be interested to here your thoughts.16:35
flexiondotorghttp://bazaar.launchpad.net/~ubuntu-mate-dev/ubuntu-mate/ubuntu-mate-settings/files16:35
flexiondotorghttps://bugs.launchpad.net/ubuntu/+source/ubuntu-mate-settings/+bug/142718216:35
ubot5Ubuntu bug 1427182 in ubuntu-mate "ubuntu-mate-settings package needs updating" [Critical,New]16:36
Laneyok, will look when I get a chance16:38
=== dpm_ is now known as dpm
attente_seb128: can we top-approve and merge https://code.launchpad.net/~attente/maliit/1245925/+merge/250311?17:24
seb128attente_, sure, did you try to ask to one of the ubuntu-touch/ubuntu-keyboard guys to give it a try just to get an extra confirmation?17:25
attente_seb128: will do17:28
seb128attente_, thanks17:28
=== alan_g is now known as alan_g|EOD
tmpRAOFOK. What stupid piece of software has decided that it owns <ctrl>-<alt>-<space>?22:57

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