/srv/irclogs.ubuntu.com/2017/04/10/#ubuntu-desktop.txt

=== JanC is now known as Guest16348
=== JanC_ is now known as JanC
hikikohi05:33
dufluMorning hikiko05:40
hikikohi duflu05:41
TheMusoHey hikiko.05:57
hikikohi TheMuso05:58
FJKonghi all06:32
allison[m]good morning06:55
allison[m]pindrop07:08
flocculant:)07:09
sil2100seb128: hey! Who's the langpack work going? I see some zesty-specific langpacks in the archive, so I guess it's all good? :)07:57
robert_ancellallison[m], do you know much about g_main_context_iteration?08:01
allison[m]a bit, yes :)08:14
robert_ancellallison[m], I use this in snapd-glib to do the sync calls, but for some reason it never returns when you using it in a thread.08:17
robert_ancellI can confirm the callback (a socket read) occurs, but g_main_context_iteration never exits so the sync call never completes even through it now has the result.08:18
allison[m]wait wat?08:19
jbichagood morning08:19
allison[m]i'm not sure what the problem is, but i'm pretty sure you're "doing it wrong" :)08:19
allison[m]first, you should never call that function from a thread, unless it's on a mainloop that you created directly for the purpose of that thread08:19
robert_ancellallison[m], I expected you'd say that, so I'm hoping you can tell me how to do it rigght08:20
allison[m]second, mainloops should not interact with sync calls at all, except through thread-emulation of async calls...08:20
allison[m]robert_ancell: can you back up a bit and tell me what you're trying to do first, then?08:20
robert_ancellallison[m], in snapd-glib you have a socket you send requests on / get responses. I have a bunch of methods that do sync and async calls on it. I want to be able to do multiple async calls and handle timeouts on it, which doesn't seem easily do-able with threads.08:22
robert_ancellAlso threads suck and this all should be possible without them just doing async calls08:22
allison[m]sure...08:22
allison[m]so what calls are you trying to do?08:23
allison[m]or are you implementing async calls?08:23
robert_ancellhttps://github.com/snapcore/snapd-glib/blob/master/snapd-glib/snapd-client.h08:23
robert_ancellallison[m], orinally I implemented the sync calls, which was easy (just block on the socket until get our reply). But that stops other callbacks you might have08:25
seb128hey allison[m] robert_ancell sil210008:25
robert_ancellseb128, hi08:25
seb128robert_ancell, staying late!08:26
robert_ancellseb128, wanted to check if any info regarding Canonical and I needed some allison[m] help08:26
seb128k08:26
allison[m]robert_ancell: API looks fine08:26
robert_ancellallison[m], yeah, I figured the API should survive a refactor behind the scenes to "do it right" (TM)08:27
allison[m]robert_ancell: so basically you will end up doing async socket calls inside of those async calls of your own08:27
allison[m]spin up a GTask in the _async start function, pass it in as the user_data to the subcall and from your own finish handler, use g_task_return()...08:28
allison[m]just one async call inside of another... no threads, etc.08:28
robert_ancellallison[m], aha, I was confused by GTask only having the _run_in_thread methods. I didn't consider you don't need them at all08:29
allison[m]they're useful if you need to emulate the operation in a thread...08:29
robert_ancellallison[m], yeah08:29
allison[m]but if you can chain other async ops (which is the correct thing to do in this case) then it's not necessary08:30
robert_ancellallison[m], so do I have to implement sync equivalents? There's some code I was hoping to de-duplicate08:30
allison[m]if your operation ends up being really complicated with a lot of talking back and forth then you might consider it08:30
Laneyhello08:30
Laney!!!08:30
allison[m]since implementing a 5-step handshake in async all the way is ... not awesome (unless you take the vala approach)08:30
allison[m]so sometimes people just punt over to sync land in that case08:30
sil2100Hi!08:30
allison[m]robert_ancell: so there is a "trick" for implementing sync versions of async calls08:31
robert_ancellit will be less readable than what I've got, but not out of control08:31
allison[m](1) create new mail context08:31
allison[m](2) set it as the thread local default08:31
allison[m](3) do the async call08:31
allison[m](4) iterate your new loop until the result handler comes08:31
allison[m](5) tear it all down again08:31
allison[m]this is how GDBus does its sync calls08:31
robert_ancellallison[m], right, so that's sort of what I had (I think I copied it from somewhere). But that didn't work in the threads (in gnome-software)08:31
allison[m]if you set the thread-default maincontext correctly, iterate the new context, and use GTask properly then it should "just work"08:32
allison[m]unless there is something in your async chain that pings back to the global default mainloop08:32
allison[m](ie: something that is implemented incorrectly)08:32
robert_ancellallison[m], thanks, I'll try some refactoring tomorrow08:33
sil2100seb128: just remember - if you need any help with the langpacks, give me a sign08:58
sil2100I guess it's still in progress as I don't see zesty in the crontab for l-o-m08:58
sil2100btw. did we get the zesty potemplate stats in the end from dpm?08:59
sil2100(or how those were generated)08:59
andyrockmorning all09:03
seb128sil2100, hey, sorry I was in an hangout earlier, do you need anything particular with langpacks?09:08
seb128sil2100, I did an update to zesty a week ago and I'm going to do another one now09:09
seb128sil2100, I didn't sort out the stats job yet, feel free to look at that if you want, for now I workarounded and use the xenial stats on zesty09:09
sil2100seb128: excellent, we're just going through the list of things for the release09:09
sil2100seb128: ok, will do09:10
seb128thanks09:10
seb128you are in London?09:10
sil2100Yes09:10
b4nTrevinho: hi!  regarding a11y shortcuts in Compiz: I've got roughly 1 week left at my job to work on that, and we'd love to get this to work by then.  What do you think would be the best approach to go ahead on that?  Also, could you give some hand/guidance on it?  Porting InputMonitor to Compiz was what we discussed last time, and although I'm not at all familiar enough with it yet to be sure on how it'd be used to solve the plugin 09:24
Trevinhob4n: mh, I guess it could be done yeah... the thing is that compiz is in final freeze now, so we can't merge things09:25
TrevinhoI can do that once A opens though09:25
b4nwhen would that be?09:25
Trevinhob4n: however, yeah.... Trying to have that input monitor at compiz level would be nice, I can try to have a look on that too09:25
b4nthat would be awesome :)09:25
Trevinhob4n: release is in 3 days, so.... after that09:26
b4nOK.  anything I could work on to get ahead of it?09:26
b4nI guess you'd have more ease to port the module as you probably already know it fairly well, but if there's anything I could do would be nice09:27
b4nfor example, maybe you have an idea how the monitor could be used to get actions triggered, like how i'd integrate09:28
b4nI could possibly research/test on that (not sure how easy that'd be without actually having the monitor in Compiz, but maybe)09:29
Trevinhob4n: speaking of the events... Is there a reson why you used raw events instead of normal one?09:31
TrevinhoI think you wrote that, but...09:31
b4nTrevinho: yeah, the reason was primarily not to block Core events09:32
b4nand I need to re-check (I did too many tests…), but I think some grabs also blocked XI2 non-raw events09:32
dufluTrevinho: Nice sunset? ;)09:33
Trevinhoduflu: yeah, it was awesome09:33
Laneyhey seb128 duflu allison[m] & Trevinho09:34
Trevinhohey Laney09:34
dufluMoring Laney09:34
dufluMorning even09:34
Laneyhow's it going?09:34
happyaronhey guys09:34
seb128Hey Laney, in London now?09:34
Laneyyep09:34
Laneyhey happyaron09:35
seb128had a good w.e and easy trip?09:35
Laneyseb128: was suuuuuuuuuuuuuuuuper sunny yesterday09:35
seb128hey happyaron09:35
Laneyyeah09:35
Laneyjust 1 train, is easy09:35
seb128same here09:35
seb128and it was a tennis day09:35
seb128that was grrrrrreat09:35
Laney\o/09:35
Laneyi did some walking around London09:35
Laneyhad a juice that cost £6.5009:36
Laneywhat a magical place09:36
TrevinhoLaney: I might have a neko++ version, is that too late? :-)09:36
Laneyyes09:36
Laneysorry09:36
seb128I hope it was good for this price!09:36
Trevinhook... fair enough... Sure, I knew it.09:36
Laneyit was okay09:36
seb128Trevinho can get food and drinks for a day for the price of that juice09:37
dufluAnd a massage09:37
TrevinhoYeah, thta0s sure09:37
Trevinhoyesterday's massage was awesome though09:37
b4nTrevinho: anyway, the main reason was I didn't wanted to have *all* actions ignore grabs, so I didn't want to forward *all* XI2 events as Core ones anyway09:40
b4nfor example I didn't want window sicther to work when locked or alike09:40
b4nswitcher*09:40
Trevinhob4n: sure, we can do tha too with the input manager09:41
Trevinholike enabling callbacks only if a such kind of customer is there09:41
b4nhum… yeah but the actions of e.g. the ezoom plugin should always work (e.g. ignore grabs)09:42
b4nand the plugin will be loaded all day long09:42
b4nyet it shouldn't affect how the other plugin work09:42
b4nand I'm not sure how we would do that with the event forwarding technique09:42
b4nunless tracking Core grabs and conditionally forwarding ourselves?09:43
willcookeDashView.cpp line 1438: <309:57
b4nTrevinho: BTW, I didn't test yet but the conflicts andyrock saw are possibly due to multiple XGetEventData() calls and the awful semantics of the return value of that function (e.g. no way to collaboratively use it from 2 sources)09:58
Laneyssssssshhhhhhhhhhhhhhhh09:59
Laneyhttps://www.youtube.com/watch?v=EHNL8iSh4pM10:01
willcooke:)10:02
ogra_hmm ... so i looked at ubuntu gnome 17.04 on the weekend ... and noticed that there is a gdm session idling after login that eats about 600MB ram ...10:04
ogra_do we plan to keep lightdm ?10:04
Laney#ubuntu-gnome10:04
ogra_Laney, well, that was more with a view on 18.0410:04
Laneyok, well it's extremely early for that kind of decision10:05
Laneyunknown :(10:05
Laneybut there will certainly be bugs to fix10:05
ogra_600MB for just doing nothing are quite hilarious10:05
jbichaogra_: did you install from the latest daily?10:07
ogra_jbicha, yeah10:07
jbichagnome-shell probably has several memory leaks :(10:07
ogra_in a kvm vm ... 4GB ram, 10GB disk10:07
ogra_jbicha, well, these 600M come from summing up RSS of all gdm owned processes in the ps output ... there is a gazillion settings-daemon bits each eating around 15-20MB ... it simply sums up10:08
jbichahttps://bugzilla.gnome.org/78055510:10
ubot5Gnome bug 780555 in plugins "reduce resident memory footprint of gsd plugins" [Enhancement,Resolved: fixed]10:10
Laneygdm's used for screen locking in shell afaik10:11
ogra_jbicha, well ... that affects everything ... but ... my point is that you essentially duplicating the complete session10:11
jbichaogra_: you could file a gdm bug to request that it not run as many g-s-d plugins10:11
Laneyso I think that it's likely to (1) be used, and (2) need to have a session open10:11
Laney(ICBW though)10:12
flexiondotorgMorning desktopers10:12
ogra_right after boot my desktop eats 1.1G ... 600 of that are gdm, the others are the user session10:12
jbichaogra_: yes, gdm needs to keep running; that's part of how it's designed10:12
darkxsthey desktopers10:12
darkxstogra_, are you using NVIDIA proprietry drivers?10:13
ogra_jbicha, right, but it could perhaps unload quite some bits if only handling locking, dunno10:13
ogra_darkxst, in that VM ? no10:13
ogra_(outside of it i do :) )10:13
jbichait also handles login on vt110:13
GunnarHjseb128: Hi Seb, are you about to upload fresh zesty langpacks?10:13
chrisccoulsonogra_, what we need is a display server that isn't so over-engineered. We're doing a full circle here ;)10:14
ogra_jbicha, well, perhaps a reduces session and less gsd plugins might make some sense there :)10:14
chrisccoulsonserver -> manager10:14
darkxstogra_, so one of the problems with the NVIDIA drivers is they end up putting their texture caches in the main process10:14
ogra_*reduced10:14
darkxstthat makes it look bad, but is not a real issue10:15
darkxstthat obviously shouldnt transfer across to a VM though10:15
ogra_darkxst, well, my point isnt the amount of ram but rather the fact that the ram use is permanently duplicated for something that mostly idles10:15
jbichain 3.24 g-s-d was split up into separate plugins which hopefully will make some things better in the future10:16
ogra_half of the used ram is used for gdm ... the sessions that run seem to be close to identical and i higly doubt thats required to just provide a login window and screen locking10:16
ogra_anyway ... just an observation :)10:16
darkxstjbicha,  that has nothing to do with the NVIDIA stuff10:17
darkxstogra_, but on NVIDIA its not a true reading of memory use since it includes caches that are on the GPU RAM10:18
ogra_darkxst, sure ... but even if gdm would only consume 100MB of a 200MB session i would find it weird ... it is the duplication of two running sessions, while only one is necessary that i dont like ... it makes the overall ram use (and thus the minimal reqs.) massively higher for no valid reason (IMHO)10:20
darkxstin a VM or say intel drivers it should never get anywhere near 600MB10:20
darkxstogra_, there are valid reasons to keep gdm running, security is one10:31
=== infinity1 is now known as infinity
Laneydarkxst: ??????????????????????????????????????????????????????????????????????????????????????????????10:31
ogra_darkxst, welll, why does it need to run a full gnome-session to show a password box and fullscreen picture :)10:32
ogra_(yes, i'm aware you want a11y and such but that doesn really not require a full gnome-shell session)10:32
darkxsthey Laney!10:33
ogra_especially regarding security that just adds additional attach vecrots10:33
Laneyhey10:33
Laneyhow's it going?10:33
ogra_*vectors10:33
darkxstLaney, still in the mountains, stuggling with internets, but getting ADSL soon10:33
Laneydo you have a massive zen beard?10:34
darkxstbeard yes, massive zen beard probably not10:35
Laney:)10:35
TheMusoc10:36
TheMusowhoops wrong window10:36
* TheMuso waves hello anyway.10:36
darkxsthey TheMuso10:36
TheMusoHey darkxst.10:36
darkxstogra_, all authentication is handled by gdm, including drawing the lock/login screens10:38
ogra_darkxst, yes ... but why does it noeed to run its own gnome-shell for that ?10:38
ogra_*need10:38
darkxstI'm not 100% sure on the reasons for the full session, but it was related to wayland10:39
ogra_all it does is show a login box on a fullscreen picture10:39
tjaaltonis there a way to avoid the annoying swipe on lock screen?10:39
darkxstit is not a full gnome-shell session10:40
ogra_so it could ship with a super minimal shell instead that does exactly that ... pls a few gsd plugins for things like a11y and kdb etc10:40
darkxstit is a majorly cut back gnome-shell session10:40
jbichatjaalton: you don't need to swipe, just start entering your password10:40
ogra_well, it uses the same amount of ram the user session uses ... (independent of how much that ram is, it isnt lees than the normal session ... thats my point)10:41
tjaaltonjbicha: ah, ok10:41
tjaaltonjbicha: yep, works10:42
jbichaogra_: my gdm3/zesty says it's using 1M memory, 292MB virtual mem, 7.4 MB resident mem, 6.4 MB shared mem10:44
ogra_jbicha, your gdm or all processes the gdm user owns ?10:44
jbichaI don't know, I opened System Monitor, right-clicked on gdm3 and selected Properties10:45
ogra_right10:45
ogra_ps aux| grep ^gdm ...10:45
jbichayou can also click the hamburger menu in System Monitor to see Dependencies10:45
jbichaand All Processes10:47
jbichaI don't know much about memory but isn't resident memory a better measure of what we should be looking at?10:49
ogra_yes10:54
ogra_http://paste.ubuntu.com/24353954/10:56
ogra_that sums up the RES field from ps10:56
jbichaok10:58
tjaaltonthe system monitor and ps show different results for memory consumption.. SM shows just 3,4MiB for gsd-xsettings for instance, ps shows ~2011:12
tjaaltonah, most of it is shared11:14
tjaaltonogra_: so you're result includes shared memory too ;)11:17
tjaaltonyour11:17
tjaaltonbah11:17
seb128Laney, seems fair to me to have GNOME/ubuntu-desktop here no? (/me is not on #ubuntu-gnome and not interested to move things to another channel if they impact us)11:35
Laneyseb128: It doesn't impact Ubuntu atm11:36
LaneyOnce it does, that's fine11:37
LaneyI don't really care though so whatever11:37
seb128right, I guess it makes sense for us to start being aware of things that might need some looking at11:38
seb128but yeah no big deal either way11:38
Laneycan haz langpacks please?11:39
Laneyto get on topic :-)11:39
seb128yeah, I was going to reply to GunnarHj about that11:39
Laneythx!11:39
seb128yw11:39
Laneywe're trying to get 'everything' (that we know about) in today11:39
seb128I started the job but it takes a bit of time11:40
seb128hope to have them in about an hour11:40
Laneycool11:40
GunnarHjseb128: Great!11:41
jbichaFirefox :(11:41
seb128what's the issue with firefox?11:41
Laneyarmhf build failure11:41
seb128oh11:41
LaneyI guess it'll just be able to go into security after though11:46
Laneyor maybe before11:46
ximionLaney: D's reference compiler is fully open source now: http://forum.dlang.org/thread/oc8acc$1ei9$1@digitalmars.com12:22
ximionall it took was Red Hat to accelerate the process12:22
ximionI'll run some tests later to see whether dmd makes asgen slower or whather the speed difference is small (probably the latter, since a lot of performance-sensitive code is in C anyway)12:24
ximion(using dmd reduces the frequency with which I encounter compiler bugs dramatically at least :P)12:24
Laneyximion: nice12:30
Laneydoes it have a different stdlib implementation?12:30
Laneyi thought ldc was alright12:30
ximionLDC and GDC both use a stdlib fork from dmd, so yes, we have another stdlib version :P12:31
ximionLDC is fine, but I am still hitting compiler bugs, including gems like https://github.com/ldc-developers/ldc/issues/2022 , while the reference compiler doesn't have those. Also, Red Hat told me they will use dmd12:32
ximionand I am currently thinking about what to do for Debian so we don't end up with something as bad as the OCaml or Haskell world :P12:33
ximion(which isn't bad per-se, but rather maintenance-intensive)12:33
ximionI asked the D guys for advice on the issues: http://forum.dlang.org/thread/hhefnnighbowonxsnbdy@forum.dlang.org12:33
ximionthe outcome could be that we will just stick with LDC as the best option and only use dmd occasionally12:34
ximionLaney: but from the looks of it it appears like Red Hat / GNOME is really giving D a shot as GNOME platform language, which is rather nice12:36
ximionat least a better choice than the "JavaScript is the language you shall write new GNOME apps in" :P12:37
ximion*idea from a few years ago12:37
qengho'Sup.12:53
Laneyximion: what are they using it for?13:09
ximionLaney: at time as something to recommend for newcomers besides C in case Vala doesn't cut it13:09
Laneydoes it have good bindings?13:10
ximionjup - the GTK+ D bindings are superb13:10
ximion(from a developer's viewpoint at least)13:10
ximioninitially I thought that this was just some random exploration, but it looks like some serious work was invested into getting Fedora & Co. support D nicely - with LDC at time, but soon with DMD, as far as I was told13:12
tsdgeoswas a pleasure working for Canonical! /me waves13:32
Laney:/13:33
Laneyximion: sounds like libraries in D is painful though13:35
Laneyfrom your thread13:35
ximionLaney: it's far better than Haskell and OCaml, but not as nice as C or C++13:39
ximionD fascinates me in that it always manages to do something really awesome and then screws it up with some stupid papercut13:40
ximion(e.g. the JSON interface in the standard library sucks, but the language itself is capable of doing Python-esque neat serialization from raw structs (https://dlang.org/phobos/std_json.html vs. http://vibed.org/api/vibe.data.json/))13:43
willcookeI'm going to start drinking.  o/17:16
seb128goo17:16
seb128doh, he did a didrocks again17:16
ogra_seems to be in fashion recently17:16
didrocksbut but, it's copyrighted17:17
seb128Laney, sil2100, GunnarHj, langpacks base refresh uploaded17:17
Laneyyou little beauty17:17
sil2100seb128: wooo hooo!17:17
* sil2100 hugs seb128 17:17
seb128:-)17:17
seb128they are still making they way to the queue so wait a few minutes17:18
seb128on that note I'm off to prepare diner, enjoy the evening desktopers17:18
kenvandinegood night seb12817:19
seb128night17:19
=== bregma__ is now known as bregma

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