thomiI wonder if any of the mir developers are GLSL experts? I need to pick someone's brain on the subject at Oakland... maybe RAOF or kdub?00:07
* RAOF is in no way a GLSL expert00:15
* kdub knows how to write glsl00:16
thomikdub: you'll, do, I'll swap you some alcohol for advice :)00:17
thomirobert_ancell: hey - autolanding and ci for lp:lightdm/mir has been deployed - would be good to test it, if you have some code that needs merging01:27
dufluRAOF: What's the correct state for this bug? https://bugs.launchpad.net/mir/+bug/110276201:28
ubot5Launchpad bug 1102762 in Mir "Support nouveau drivers" [Medium,In progress]01:28
kgunnduflu: thanks for mp'ing your surface state work!02:01
duflukgunn: No problem. I have not got to looking at it or any MPs yet. But have allocated the rest of the day/week to it02:02
kgunnduflu: cool....felt good to see dma buff, in process egl & your stuff mp'd...02:03
duflukgunn: Yeah the number of line-items is significant :)02:04
robert_ancellthomi, do you know why Jenkins hasn't built https://code.launchpad.net/~andrzejtp2010/lightdm/lightdm-trunk-xephyr-multiseat/+merge/120286?02:50
thomirobert_ancell: let me see...02:51
robert_ancellthomi, also https://code.launchpad.net/~agateau/lightdm/move-to-sbin/+merge/8914602:51
thomirobert_ancell: yeah, for the first MP it's because the proposing user isn't a canonical employee. The CI server builds the proposed branches, so we have apolicy of not building branches from outside, since you can make debian/rules do anything you want, including evil things. However, this shouldn't be a concern any more, since we build inside chroots these days02:52
thomirobert_ancell: there's a way you can force it, I think, but I can't remember the details02:53
thomirobert_ancell: it may be that autolanding will still run, once you approve the MPs02:53
robert_ancellthomi, ah, that's an annoying limitation for lightdm as one of the devs is not a Canonical employee. It would be great if we could remove that limitation02:53
thomirobert_ancell: I'll send an email to the people who maintain the CI infrastructure and get back to you on that02:54
thomirobert_ancell: I think it's mostly a historical limitation from the days where we built things on the CI server itself :-/02:54
mardyhi all! Will Mir support embedding another process's window into one's own?05:49
=== tvoss|sick is now known as tvoss
tvossmardy, we haven't decided on that, yet.05:50
mardytvoss: OK, then the most important question is whether it's technically feasible or not (or just extremely difficult)05:50
tvossmardy, I think both holds true, and I think there are better approaches to include rendered content within an apps surface. I would think it depends on the actual use-case. So what are you trying to solve?05:51
mardytvoss: https://wiki.ubuntu.com/OnlineAccounts#phone-settings (see the bottom of the page, that "WebView" square comes from another process)05:52
mardytvoss: but the design is in its early stages, and we can affect it, I think05:52
tvossmardy, what's the technology we want to use for the webpage? is it webkit?05:53
mardytvoss: what about window reparenting (that is, making it look like a window is part of this process, while it comes from another one)?05:53
mardytvoss: yes, webkit05:53
tvossmardy, that's the same as embedding isn't it? @webkit: it's multi-process by default, isn't it?05:54
tvossmardy, so that being said: what would prevent us from just embedding a webview in process for your use-case?05:55
mardytvoss: no, maybe I didn't use the correct term; I mean, something like http://www.gtk.org/api/2.6/gtk/GtkWindow.html#gtk-window-set-transient-for05:55
mardytvoss: that is, the window is entirely drawn by the same process, but the WM places it on top of another process's window05:56
tvossmardy, it's not possible right now, and we have been talking about embedding/setting other applications transient multiple times. However, I wonder what prevents us from just using a browser component within the same process?05:58
mardytvoss: about webkit, the problem is that the flow is: client application -> signond (via D-Bus) -> signon-ui (host of the webkit)05:59
mardytvoss: I don't think it's impossible to embed webkit in the client, but it would be a lot of work, and I don't like it from a security and performance POV06:00
mardy(signon-ui exits after some seconds of inactivity, and in the future Mir could provide some special decorations to it to tell the user that it's a trusted window)06:01
tvossmardy, can you make sure that the requirement is noted down in the design spec?06:01
mardytvoss: you mean the wiki page I pointed you at, or some Mir document?06:02
tvossmardy, the wiki page first, it will bubble up from there :)06:02
mardytvoss: will do, thanks06:02
tvossmardy, cool, thanks06:03
RanomierIm done with mir everything will be supported by wayland, there is no reason to use mir. Kde, Gnome (and with it lxde xfce), Enlightenment, Android drivers, Qt, if nvidia and/or ati write their driver for wayland then ... xD07:43
RanomierThank u mir, for pushing wayland devs in their seats :D07:43
StskeepsRanomier: i wrote that blog post and it's not cool to troll other people's development channels.07:44
RanomierYeah u right, sry for that. My whole body want it to say that^^ I could not stop it.07:45
RAOFThat's not actually very surprising - Wayland on Android was first demoed quite some time ago :)07:48
tvossRAOF, yup :) however, good work :)07:49
RAOFIndeed. There's generally substantial work between "here's a demo of $X" and "and now $X works" :)07:50
tvossRAOF, agreed :)07:50
RanomierSo pleeease, canonical, work upstream with wayland and share your attained08:01
dufluOK, let the potential trolling end there. I think we would all like both Wayland (plus a real display server if not Weston) and Mir to succeed. Competition is a good thing08:01
Stskeepsindeed - people have different goals and methods08:01
dufluAnd having multiple options in the open source world is a very good thing08:02
dufluIt's only fragmentation if the parts began as a whole. I'm not so sure they really did. So don't call it fragmentation. Call it competition :)08:03
dufluMorning katie... Was there any movement on the "edge" discussion?08:07
RanomierI think it is very important to have a basis that all linux distros share, it is ok to make multible Desktop Environments and multible Programs that do the same, BUT it is not ok to touch that basics08:08
dufluRanomier: So you don't like Android because it is Linux with a very different DE?08:08
RanomierNo use it, but i think i dont like becouse it uses surfaceflinger and another c libary08:09
Ranomiersry *i use it   From freedesktop.org: "freedesktop.org is building a base platform for desktop software on Linux and UNIX"08:10
RanomierI want to start any graphical programm under linux, that is writen for linux08:11
katieHi duflu.. not after the email08:12
Ranomieri can install qt and gtk at the same time, but mir and wayland?08:12
Ranomierand use it at the same time08:12
dufluRanomier: Yes I think you will be able to have Mir and Wayland installed simultaneously. In fact Mesa will link dynamically to both. But only one can occupy the graphics hardware at a time08:13
RanomierYeah thats my problem08:13
Ranomieri cant start wayland and mir08:13
Ranomierit breaks that basis.08:13
RAOFIt's highly likely that you *will* be able to use a Wayland compositor inside Mir, and visa-versa.08:14
katieduflu, I shoud get to it today, and let you know when I change any docs08:14
dufluRAOF: Yeah I thought as much. Just possibly with performance for one being limited?08:14
RAOFduflu: No, not really, any more than running Mir under Mir-system-compositor hinders performance.08:15
tvossRAOF, Ranomier it's essentially a cascaded compositor approach, leaving aside how certain nodes in the tree are called, isn't it?08:15
RanomierSry, i dont understand this.08:16
duflukatie: Ta. Though I probably wouldn't implement anything till Monday. It's almost end of the week08:17
RanomierAt the moment, i can install awesome and then i start a kde programm, and then a qt only programm, then a gnome programm and then a enlightenment programm.08:18
Ranomiereverything ontop one basis.08:18
tvossRanomier, sure, which is X at the moment, isn't it?08:19
tvossRanomier, well, that is going to go away anyways, no matter which other competitive display server you are considering :)08:20
RanomierAnd that have to work later too! With android programm, with qt programms, with Unity programms usw08:20
RAOFAnd it's reasonably likely to work later (except without the awesome bit, because neither Mir nor Wayland support external window managers)08:21
RanomierAND it has to be performant and easy programable! Thats two reason why we dont want X. If we have wayland and mir and surfaceflinger, we have the old proplem we have to care for each of those and it has to be performant.08:23
RAOFBy and large you shouldn't. Unless you're writing a game and trying to wring the last 5% of performance out.08:24
dufluFunny thing about performance is that except for obvious visible bugs, people only care about performance if you give them numbers. Without numbers (and without bugs) most people are happy08:25
RanomierYeah the people that us it are happy but not the developer!08:26
Ranomierim learning coding from a friend, hand he is saying performance is importand, but if ur idee of the code and the code are not clean and clear u never get that performance and bugfree programm.08:29
RanomierDo it right from the beggining.08:30
Ranomieridea not idee*08:30
dufluSure, you need to keep performance in mind right from the design. You don't want to implement an algorithm that is slow by design. But a lot of performance improvement comes after the initial implementation08:31
* tvoss notes that premature optimization without hard numbers is the source of all evil08:31
RanomierYeah thats right! But i u have wayland AND mir there is no clear basis to optimize, there a two documentations there are two apis and and and08:32
Ranomieri = if08:33
duflutvoss: I mean err on the side of low complexity by big-Oh notation. That's something you do from the beginning08:33
tvossduflu, yup :) I was referring to the final 5% :)08:33
dufluBut don't waste time measuring performance early on08:33
tvossRanomier, in almost all cases, a developer will and should not know what display server technology to develop against. A developer either works in terms of a toolkit or in terms of egl/gl(es). And both Wayland and Mir provide client side egl integration as well as accelerated gl to clients/developers08:35
RanomierFrom ground up there have to be ONE well defined API for graphical Programms and DEs.08:35
RanomierIf i write a game i dont use a toolkit and our company have his own little toolkit.08:36
RanomierAnd the devoloper of the toolkit have that problem, it is no solution to say: u dant have care about the display server.08:38
tvossRanomier, cool, even better. If you are doing games, I'm assuming that you are doing egl/gl(es)?08:38
RanomierI dont know im learning programming, i dont now how to write a game, im a coding bigginner.08:39
tvossRanomier, perhaps you can find out, but I'm pretty sure that egl/gl(es) is what you are using. Any pointers to your company's website, or the abstraction layers they use? Are you using SDL (2.0)?08:40
RanomierNo im using nothing^^ Im learning coding at the moment with the basics libs of c++08:41
tvossRanomier, you might want to look into Mir's code then, it's using c++, too and it leverages/illustrates a lot of modern c++ techniques08:43
RanomierYeah i know buts wrong about c?08:49
Ranomierlinux is mostly written in c08:49
tvossRanomier, linux as in? what's wrong with c++? you are learning it yourself?08:50
Ranomierbecause wayland is written in c , nothing is wrong about c++ or c08:51
tvossRanomier, I think I don't understand your argument. Wayland is written in C, fine. Mir is written in C++. It's an implementation detail, nothing more08:52
Ranomiersry i missunderstood u08:52
RanomierOk i have to go to work now, i think it is not good to fragment the basics of linux. i think it is important to be compatible with one standart. See http://en.wikipedia.org/wiki/Freedesktop.org08:59
Ranomierafter X09:00
Ranomierbye for now09:00
katietvoss, duflu could we just have a quick hangout to discuss the edges. I think that'd be easier than me writing another email..09:08
katie(doesn't have to be now, could be on Monday morning)09:09
duflukatie: Yes, but no. May hangout the other day failed because my audio is totally broken. Let me see if it's fixed since upgrading/rebooting09:10
duflu-May +My09:10
duflukatie: On the other hand, I've already expressed my opinion (which is not changing). I'm happy to let you fight/discuss with tvoss :)09:11
tvosskatie, duflu I'm fine with Monday, too09:11
dufluIt's such a minor change to add another enum and test cases. We don't need to make an issue of it. Just let me know which way to implement it. And no rush09:12
tvossduflu, ack and thx :) you should be in the weekend now, shouldn't you?09:13
duflutvoss: Not quite yet. But I should start thinking about dinner soon09:13
katieduflu.. ok :)09:13
smspillazduflu: dinner? I only just had lunch :(09:14
duflusmspillaz: Enjoy student-hood. But I'll refrain from suggesting these are the best years of your life09:14
smspillazduflu: there is a certain number of times you hear the words "your research assignment is due"09:15
smspillazbefore it starts to take out on your social life09:15
smspillazand / or sanity09:15
katietvoss, do you have time for a quick catchup hangout?09:15
tvosskatie, is in 45 minutes fine for you? would like to finish a document and a mail09:20
katietvoss, sure09:21
tvosskatie, cool, thx :)09:21
mardytvoss: I edited the page (added one paragraph): https://wiki.ubuntu.com/OnlineAccounts#preview10:10
mardytvoss: please let me know if/how I should take this further10:10
tvossmardy, ack, let me take a look. I will make sure that kgunn knows about it, too10:11
katiehey tvoss, time for a chat now?10:33
tvosskatie, sure, let me grab headset10:34
ogra_tvoss, (you aret in -touch, so i'm pinging here)  ... seems the latest changes to platform-api break the android builds ... https://code.launchpad.net/~ogra/platform-api/fix-config-generation/+merge/158560 should fix that i think10:54
ogra_(you approved the breaking change apparently)10:54
tvossogra_, hmmm, as jenkins signalled all good :)10:54
tvossogra_, but thanks for pointing out10:54
ogra_yeah, its weird10:54
ogra_it made the andrpidn image builds fail which jenkins didnt catch either10:55
ogra_(todays touch image builds only consist of a rootfs and jenkins considered that a good build)10:55
tvossokay, that's a weird fix10:55
ogra_i'm not a cmale pro :) but all docs i find use it capitalized10:55
ogra_if you have a better idea why there is no config.h in the end, please apply that one instead :)10:56
ogra_we apparenlty end up without that file10:57
tvosslet me check again10:57
tvossogra_, ^10:57
tvosskgunn, ping11:02
kgunntvoss: pong11:03
tvosskgunn, good morning :) had a conversation with mardy earlier on about "embedding" surfaces, I asked him to note down the req. in https://wiki.ubuntu.com/OnlineAccounts11:04
kgunntvoss: good one....like embedded video in dash11:04
tvosskgunn, which could be solved differently. I'm not sure an embedded surface is the best way to model/implement htis11:06
kgunntvoss: guess it depends on what your definitions/assumptions about embedded surf is...what are you thinking? (or what's the concern?)11:09
tvosskgunn, for me, the dash reasoning in terms of a texture, that a video decoder streams to is a better abstraction.11:10
kgunntvoss: ok, you mean, dash is just a client app to the video engine? (vs dash actually interacting w video app)11:11
kgunntvoss: but then you might be duplicating effort for VCR controls, time bar...unless you have common widgets11:12
tvosskgunn, ack, the dash uses the decoding service, and receives a decoded image stream as a result11:12
tvosskgunn, agreed, but think about the user scrolling the dash while playing the video11:13
tvosskgunn, if the surface should really be embedded, the compositor would need to know about that11:14
kgunntvoss: mmm, don't see why that would be a problem? (unless you're pointing to compositing synch where you have the video window lagging)11:14
kgunntvoss: true11:14
tvosskgunn, which breaks encapsulation to a certain degree. A surface is atomic to the compositor11:15
kgunntvoss: right...back to orig ques, assumptions on "what means embedded"11:16
kgunntvoss: you could truly have a seperate surf...e.g. it just appears embedded11:16
tvosskgunn, right. if the preview is just an overlay, all good. If it should be seamlessly embedded into the dash, it is way more difficult11:16
kgunntvoss: and actually...that's when you see "weirdness" in video it when the fmwk is trying to "cut a hole" in the scene graph somehow to stream video in11:17
tvosskgunn, and as I see it on the wiki, we are talking about truly embedded for the use-case at hand11:17
tvosskgunn, exactly. If it is a texture, and dash composites its content, things are way easier11:18
kgunntvoss: ok, yeah....you have a +1 here for "embedded" just meaning another surface composited on top11:18
tvosskgunn, we should clarify with design, especially for the signon-ui use-case11:18
kgunntvoss: w/ eglimages (aka texture stream)....i think the perf will be high enough....11:18
kgunntvoss: in the past we always got into weird bypass mechanisms for video11:19
tvosskgunn, I would think so too, plus priv11:19
kgunntvoss: that never were quite right :)11:19
kgunntvoss: yes, another reason, drm11:20
tvosskgunn, exactly, and performance with the android approach of relying on http://www.khronos.org/registry/gles/extensions/OES/OES_EGL_image_external.txt is performing really well on Ubuntu Touch right now11:20
kgunntvoss: yep11:20
=== rsalveti is now known as Rsalveti_
=== Rsalveti_ is now known as rsalveti
alf_status: mostly reviewing15:07
kdubgood morning, status, mp'd my changes to the android display15:07
kdubthanks for the review alf_ :)15:08
alf_kdub: it's not done yet, but my mind has been fried today by too much reviewing :)15:14
kgunnkdub: ...that had to feel good to get that sucker in mp shape...nice job15:34
kdubthanks kgunn, it does feel good to give it some air15:38
alf_kdub: racarr: kgunn: btw, please try the VT switching (in trunk, don't forget to run it with root priveleges!), and let me know if you have any issues. I haven't had the chance to try it on many systems yet.15:39
kdubkgunn, should make our android display story much more flexible... we even have a primitive layer list for hwc now!15:45
tvosskdub, did you have a chance to measure performance, yet?15:47
kdubtvoss, not in a quantified way15:51
tvosskdub, and in a totally subjective way?15:56
kdubwell, for the qml demo yes, with the mir_egl* demo's they seem to run at vsync rate15:57
tvosskdub, okay16:02
kdubannoying how nicemocks don't work with noexcept very well16:25
alf_quick update on vt switching: The basic use case (running mir and switching from/to VT) works, as long as we don't have new clients trying to connect or requesting things from the server. We will need to block this at at the communicator level, that is, when we are paused we will need to accept but block all client requests.16:47
alf_kgunn: ^^16:47
racarrreading the C++14 papers is eird17:09
kgunnalf_: ack17:14
kgunnalf_: so basically don't be launching/closing apps in the midst of swithing17:15
racarrkdub: I feel like you and I love bzr commit the most17:25
racarrwhen I see things like rev 659 from jenkins17:25
racarrim like oh thats me or kdub17:25
kdubracarr, haha, indeed :)17:26
=== tvoss is now known as tvoss|test
=== tvoss|test is now known as tvoss
kgunnkdub: hey....we don't have bypass comp do we ?20:32
kdubkgunn, nope20:32
kdubthere's a blueprint entry for it though20:33
kgunnkdub: or...well...do we if we say "hey hwc1.1 here's 1 layer"....then it says "oh, i can do that"20:33
kgunnkdub: right...we don't have it for "gpu as fallback path"20:33
kdubkgunn, i don't see how all those comments relate :)20:34
kdubwe have the gpu fallback path (if the hwcomposer.<platform>.so is missing)20:34
kduband hwc at the moment just works on one layer20:36
kgunnkdub: right...i'm cheating20:39
kgunni just know that "most" platforms use HWC to be the bypass composition20:40
kgunnkdub: its kind of irrelevant....the gpu comp path is the one  that matters to me....20:40
kgunn....more planning :|~20:40
kdubif a bug on lp is a potential duplicate, what's the right state to put it in?20:54
kgunnkdub: isn't duplicate a potential state ?21:06
kgunnkdub: at least i always put a note in each w/ the respective dups' link in it....then pick one to work & mark the other dup21:07
kdubno, seems 'incomplete' with a comment about duplication is the way most people do it21:07
kgunnkdub: otherwise verbalize its a dup & state can be reject21:07
kgunnkdub: ah...there you go21:08
kgunnweird choice....but....a convention at least :)21:08

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