[15:57] <bschaefer> hello, so im running into an interesting issue.
[15:58] <bschaefer> on a barebone system, i've set up a lightdm session that runs unity-system-compositor, the mir server starts up just fine
[15:58] <bschaefer> but when i attempt to run a demo on it by (export MIR_SOCKET=/run/lightdm-mir-0) it only renders the first frame
[15:58] <bschaefer> then goes black
[15:59] <bschaefer> soo things that take a second to swap buffers last longer such as the eglflash
[15:59] <bschaefer> so after the first swap buffers nothing else renders
[16:30] <alan_g> bschaefer: a Mir server connects to USC and a client to that server? Or you're connecting the client direct to USC?
[16:31] <bschaefer> alan_g, hmm im connecting directly the socket that was produced by USC
[16:31] <bschaefer> /usr/sbin/unity-system-compositor.sleep --file '/run/lightdm-mir-0' --from-dm-fd 12 --to-dm-fd 15 --vt 7 --enable-hardware-cursor=true
[16:32] <alan_g> bschaefer: I can't remember the details but USC gets instructions what to display over dbus
[16:32] <bschaefer> alan_g, i suppose i dont see a mir server it self running processes wise, but i kind of though USC was a server? (Since it had a cursor)
[16:32] <alan_g> bschaefer: it is
[16:32] <bschaefer> alan_g, o .. hmm who would be good to poke about that?
[16:33] <bschaefer> As it would be nice to connect directly, but if i need to go through dbus
[16:34] <alan_g> bschaefer: on recent versions of USC you can "bypass" the dbuss stuff with --debug-without-dm & --debug-active-session-name <name client connects with>
[16:35] <alan_g> But that's not intended for production scenarios
[16:35] <bschaefer> alan_g, name client connects with being the username?
[16:35] <bschaefer> alan_g, well shots, as this would be for a kiosk type system
[16:35] <bschaefer> where we have no unity8
[16:35] <alan_g> bschaefer: No, the name it gives in the connection call
[16:36] <bschaefer> o i see, i can give that a try to figure out if thats the issue
[16:36] <bschaefer> thanks!
[16:39] <AlbertA> vogons: I think we'll have to merge this one manually: https://code.launchpad.net/~michael.nelson/mir/snappy-packaging-fix-makefile/+merge/262415
[16:40] <alan_g> AlbertA: +1
[16:41] <camako> AlbertA, because the dest (sanppy-packaging branch) is not configured for autolanding? Makes sense.
[16:43] <bschaefer> alan_g, USC doesn't seem to know those args
[16:44] <alan_g> bschaefer: I guess they haven't hit archive yet
[16:44] <bschaefer> alan_g, yeah thats what i was thinking shoot
[16:44] <bschaefer> yeah im running 15.04
[16:44] <bschaefer> (in the VM)
[16:44] <bschaefer> alan_g, i just find it strange i get 1 frame (which would be a poor security authenticator)
[16:44] <bschaefer> if 1 frame keeps leaking
[16:45] <alan_g> Yes, that would be a bug
[16:45] <alan_g> Could you use mir_demo_server instead of USC? (Although the 0.14 series would be more useful)
[16:46] <alan_g> Or do you need e.g. the display manager support
[16:46] <alan_g> ?
[16:46] <bschaefer> alan_g, i need the ... upstart session
[16:46] <bschaefer> from lightd
[16:47] <bschaefer> lightdm ---> usc
[16:47] <bschaefer> IIRC
[16:47] <bschaefer> as i need the dbus session for the ubuntu SDK
[16:49] <alan_g> In that case you need to get the display manager to tell USC to show your client.
[16:50] <bschaefer> alan_g, how does one do that? dbus?
[16:50] <alan_g> AlbertA: have you looked at how that^ happens?
[16:50] <bregma> what is the difference between the display manager and USC?
[16:51] <bschaefer> AlbertA, i have an entire ubuntu 15.04 image with the issue on it :) (reproducible)
[16:51] <alan_g> bregma: I think that's what the --from-dm-fd  --to-dm-fd sockets given to USC connect to
[16:52] <bschaefer> what is the display manager then? Do i even have one?
[16:52] <bschaefer> or the USC is doing that, and passes that to the mir server?
[16:52] <bregma> LightDM is the display manager
[16:52]  * alan_g thinks it is intended (by someone long ago) behaviour
[16:52] <bschaefer> i see
[16:52] <bregma> LightDM == "light display manager"
[16:52] <bschaefer> duh
[16:53] <bregma> but all LightDM should do is fork off USC and pass its socket name into the session
[16:53] <bregma> USC should be the display server
[16:53] <bschaefer> right, but something has to be *actively* causing the demos to render black (or render over the client)
[16:54]  * bschaefer assumes the background could be rendering over the client
[16:54] <bregma> but if it's been too intimate with its first cousin Unity8 there may be a problem
[16:54] <bschaefer> yeah
[16:54]  * bregma cues up some banjo music
[16:54] <bschaefer> haha
[16:54] <bschaefer> bregma, maybe theres some argument i can add to lightdm
[16:54] <alan_g> So USC gets told (over dbus I think) "active-session-name='something'" and then 'something' is allowed to show
[16:54] <bschaefer> to idk...something
[16:55] <bschaefer> alan_g, i see
[16:55] <bschaefer> i could attempt to figure out how to send dbus message to USC
[16:55] <alan_g> But I've only seen the USC end of the code
[16:55] <alan_g> (And stubbed it out for debugging)
[16:56] <bschaefer> alan_g, would that be RAOF department? I could always poke him later today
[16:56] <AlbertA> alan_g: I don't remember at the moment....
[16:56] <AlbertA> bschaefer: yeah he'll most likely point you in the right direction :)
[16:57] <alan_g> I'm not sure. I know alf_ reworked some of the dbus internals and AlbertA looked at some related parts of the stack.
[16:57] <bschaefer> AlbertA, cool thanks!
[16:57] <bschaefer> yeah... ill try to send some dbus stuff through to test around
[16:57] <AlbertA> bschaefer: or mterry may also know
[16:57] <bschaefer> alan_g, were those args you gave before for dbus or the command line args when starting the server
[16:58] <bschaefer> i think seb was also working with lightdm/unity-next stuff
[16:58] <alan_g> They're USC command line (to bypass all the dbus stuff so I could run the damn thing as  Mir server)
[16:58] <bschaefer> alan_g, yeah they must not be in main yet :(
[16:58] <bschaefer> thanks again!
[16:58] <alan_g> yw
[17:00] <AlbertA> bschaefer: well in touch - it is whoever calls usc-wrapper in /usr/share/ubuntu-touch-session....
[17:00] <bschaefer> AlbertA, for .. the dbus stuff?
[17:00] <bschaefer> AlbertA, i wont have that though since im not using unity8
[17:00] <AlbertA> bschaefer: no I mean the --from-dm-fd --to-dm-fd options
[17:00] <bregma> or ubuntu-touch
[17:01] <bschaefer> i think at this point i just need to figure out ... what unity8 is doing
[17:01] <bschaefer> that it no longer is doing that is required for rendering
[17:01] <bschaefer> as i need to fill in those roles if needed
[17:01] <bregma> does USC only work if it's hosting a nested Mir server maybe?
[17:01] <bschaefer> AlbertA, bregma those folders dont exists on my VM
[17:01] <bschaefer> bregma, maybe i need to start a "session" server?
[17:02] <bschaefer> ie. nested...
[17:02] <alan_g> bregma: it works as long as something supplied  "active-session-name='something'" and it gets a session called 'something'
[17:02] <bschaefer> the session is named session-0
[17:02] <bschaefer> i get that from logs
[17:02] <bregma> too much mystery here
[17:02] <bschaefer> maybe the active session isn't being set
[17:02] <bschaefer> haha yeah...
[17:03] <AlbertA> bschaefer: maybe you can reverse engineer from here :)
[17:03] <AlbertA> http://bazaar.launchpad.net/~phablet-team/ubuntu-touch-session/trunk/files
[17:04] <bschaefer> AlbertA, ill see what i can find! Thanks!
[17:04] <bschaefer> http://bazaar.launchpad.net/~phablet-team/ubuntu-touch-session/trunk/view/head:/52-ubuntu-touch.conf
[17:04] <bschaefer> looks like thats doing something lightdm related
[17:04] <bschaefer> seb128, heeey, soo did you have any issues with lightdm/USC and rending?
[17:04] <bschaefer> rendering*
[17:05] <seb128> bschaefer, ECONTEXT
[17:05] <seb128> when?
[17:05] <bschaefer> seb128, :), soo
[17:05] <seb128> using what?
[17:05] <bschaefer> right, let me fill you in
[17:05] <seb128> :-)
[17:05] <bschaefer> so, i've a 15.04 system. I've install lightdm/USC and configured it such that USC is running on boot (and auto logins)
[17:05] <bschaefer> i see the hardware cursor
[17:06] <bschaefer> seb128, from there when i run a demo client i only see 1 frame rendered before it goes black
[17:06] <bschaefer> seb128, my guess is you didnt run into this since you're using unity8 which fills in those holes
[17:06] <seb128> right
[17:06] <bschaefer> but wanted to double check :)
[17:06] <bschaefer> cool, soo it has to be something unity8 is doing
[17:06] <bschaefer> ill dig through what AlbertA gave me
[17:30] <bschaefer> AlbertA, so interestingly if i set the spinner to a mir demo client it renders fine
[17:30] <bschaefer> soo im assuming the USC is rendering its own surface that is being forced to the top
[17:30] <bschaefer> drawing over the demos when they are first asked to render on the USC
[17:30] <AlbertA> bschaefer: yeah USC has logic to either show "the spinner" when there's no session active
[17:30] <AlbertA> or hide it
[17:30] <AlbertA> once a session name arrives and its activated
[17:31] <bschaefer> AlbertA, soo i think thats the issue then... how do we "start the session"
[17:31] <bschaefer> alan_g|EOD, was talking about it
[17:31] <AlbertA> bschaefer: that's the part I'm not familiar with...it's a message that arrives through that dm socket
[17:31] <AlbertA> specified when usc is started....
[17:32] <AlbertA> but I'm not sure who sends it
[17:32] <bschaefer> AlbertA, cool, thanks! (slowly making progress haha)
[17:43] <AlbertA> bschaefer: so examining processes in ubuntu-touch phone device
[17:43] <AlbertA> it's a pipe,
[17:44] <AlbertA> with lightdmroot at one end
[17:44] <AlbertA> lightdm...sorry
[17:44] <AlbertA> not sure if that helps :)
[17:44] <bschaefer> AlbertA, all info is helpful :)
[17:44] <bschaefer> soo a pipe from lightdm ... so bregma was thinking it was a rasied signal
[17:45] <bschaefer> that USC was waiting for
[17:45] <bschaefer> that unity8 usually does when its up and running
[17:48] <AlbertA> bschaefer: no a message containing the expected session name is received..
[17:48] <AlbertA> and the session name is "session-0"
[17:49] <AlbertA> through that pipe...
[17:49] <bschaefer> hmm bregma is talking about logind now
[17:49] <bschaefer> which would
[17:49] <bschaefer> write to that FD
[17:50] <bregma> bschaefer, it's LightDM that writes the sessionId
[17:51] <bregma> I dunno where LightDM gets it from yet, but I'm assuming it;s related to logind or similar
[17:52] <bschaefer> well i have:
[17:52] <bschaefer> [+0.14s] DEBUG: Session pid=803: Started with service 'lightdm-autologin', username 'ubuntu'
[17:52] <bschaefer> [+0.17s] DEBUG: Seat seat0: Session authenticated, running command
[17:52] <bschaefer> [+0.17s] DEBUG: Registering session with bus path /org/freedesktop/DisplayManager/Session0
[17:52] <bschaefer> things like that
[17:52] <bschaefer> im not sure if...
[17:53] <bschaefer> the session starting from lightdm "means" the session we want
[17:53] <bregma> bschaefer, is that from /var/log/lightdm?
[17:54] <bschaefer> bregma, yeah
[17:54]  * bschaefer pastes the whole log
[17:55] <bschaefer> http://paste.ubuntu.com/11758128/
[17:57] <bregma> bschaefer, what does /usr/bin/mir-barebone-session do?
[17:58] <bschaefer> bregma, simple: http://paste.ubuntu.com/11744099/
[17:58] <bschaefer> starts upstart
[17:58] <bschaefer> and set a couple ENV vars
[17:58] <bregma> the log in the pastebin shows LightDM activates session c1, which means it sends the required stuff to USC over the aforementioned socket of love
[17:58] <bschaefer> http://bazaar.launchpad.net/~phablet-team/ubuntu-touch-session/trunk/view/head:/ubuntu-touch-session
[17:59] <bschaefer> which does a few more things but nothing i saw we needed needed
[18:02] <bschaefer> bregma, this is the USC log: http://paste.ubuntu.com/11758157/
[18:02] <bschaefer> the biggest thing i see is: set_active_session 'session-0'
[18:02] <bschaefer> which means ... i seems to be getting set the active session
[18:02] <bschaefer> AlbertA, ^
[18:03] <bschaefer> it seems*
[18:03] <bschaefer> which means the spinner should stop but hmm
[18:03] <bschaefer> maybe something else is missing
[18:03] <bregma> I'm wondering if something needs to tell USC to switch to the next session, since the spinner is the first session?
[18:04] <bschaefer> that makes sense
[18:04]  * bschaefer looks at unity8
[18:04] <AlbertA> bschaefer: right, so once the mir client connects...it checks if the name matches the given session name...and shows that....
[18:04] <AlbertA> hides the spinner...
[18:04] <bschaefer> AlbertA, this would be done in lp:unity8? most likely?
[18:04]  * bschaefer hopes
[18:04] <AlbertA> bschaefer: probably qtmir
[18:04] <bschaefer> it could be done when it creates its nested server...
[18:05] <bschaefer> AlbertA, o right, cool thanks ill look through there
[18:05] <AlbertA> probably names it session-0
[18:05]  * bschaefer hopes it gets grepped
[18:06] <bregma> the term 'session' seems to be woefully overloaded here
[18:06] <bschaefer> AlbertA, no hard coded "session-0"
[18:06] <bschaefer> very
[18:06] <bregma> we should call everything a 'thing'
[18:06] <bregma> Thing 1 and Thing 2
[18:06] <bschaefer> that would make more sense, since thing doesnt mean anything explicitly...
[18:07] <bregma> neither does 'session' at this point
[18:07] <bschaefer> yeah
[18:07] <ogra_> bregma, that has a nice ring to it ! i'm all for it ... espectially shine everything will then have an internet too :)
[18:07] <ogra_> *since
[18:08] <AlbertA> bschaefer: so probably an upstart configuration?
[18:08] <bschaefer> 1188 results found for session
[18:08] <bschaefer> AlbertA, oo good idea, i can check around
[18:08] <bregma> http://www.cliparthut.com/clip-arts/350/thing-1-2-350883.jpg
[18:08] <ogra_> haha
[18:08] <bschaefer> haha
[18:08] <AlbertA> hehe...
[18:09] <ogra_> though i think we should namespace them "that thing", "other thing" ... istead of just numbering ... thats so unpersonal
[18:09] <davmor2> bregma: there are always 2 things
[18:11] <bschaefer>         gdbus call --session --dest org.freedesktop.DBus --object-path /org/freedesktop/DBus --method org.freedesktop.DBus.UpdateActivationEnvironment "@a{ss} {'MIR_SOCKET': '$MIR_SERVER_FILE'}"
[18:11] <bschaefer> looks somewhat ...
[18:11] <bschaefer> o nm
[18:11] <bschaefer> thats to point to a different mir socket
[18:12] <davmor2> bregma: https://www.youtube.com/watch?v=biW9BbWJtQU
[18:14]  * bregma raised a passel of kids and is only too familiar with the trouble caused by Things
[18:16] <bschaefer> bregma, if you look at /usr/share/upstart/unity8.conf
[18:16] <bschaefer> we might need something like this
[18:17] <bschaefer> it raises the signal
[18:17] <bschaefer> im not 100% sure if that dbus signal is needed
[18:17] <bschaefer> USC could wait for that dbus call
[18:17] <bschaefer> for all we know :(
[18:18] <bschaefer> bregma, i could try to ... make a eglplasma upstart conf
[18:18] <bschaefer> where it exec a mir demo instead of unity8 and see what happens...
[18:18] <bschaefer> (hopefully it'll stop the demo)
[18:19] <bregma> I see no signal in that file?
[18:20] <bschaefer> bregma, o duh i mean:
[18:20] <bschaefer>     # Tell unity-mir to raise SIGSTOP after we start
[18:20] <bschaefer>     initctl set-env UNITY_MIR_EMITS_SIGSTOP=1
[18:20] <bschaefer> soo we'll have to create a program that
[18:20] <bschaefer> does that...
[18:21] <bregma> bschaefer, you can try sending a SIGSTOP from the command line, but I suspect that whole SIGSTOP thing is at a higher level than running a Mir demo on USC
[18:21] <bschaefer> if its even needed... i suppose i should look at USC
[18:21] <bschaefer> bregma, possibly
[18:22] <bschaefer> never hurts to try...
[18:22] <bschaefer> bregma, you send the signal at USC right?
[18:22] <bregma> bschaefer, I do no such thing
[18:22] <bschaefer> bregma, haha...
[18:23] <bschaefer> i mean the signal needs to be sent to USC?
[18:23] <bregma> I do not believe so
[18:23] <bregma> I see nothing in the code that catches SIGSTOP
[18:24] <bregma> I think the whole SIGSTOP thing is a u-a-l thing
[18:24] <bregma> we're trying to avoid that level
[18:24] <bschaefer> yeah
[18:24] <bschaefer> and sending a sigstop at UCS... (i cant believe it does this) but stops the spinner anything else trying to render :(
[18:25]  * bschaefer inserts sarcasm above
[18:25] <bschaefer> bregma, im just going to look at USC to see if see a wait
[18:25] <bschaefer> or see something talks to it to ... idk stop the spinner stuff
[18:25] <bschaefer> onces the spinner hides everything shuld work
[18:28] <AlbertA> bschaefer: USC receives a session name, stores it internally
[18:28] <AlbertA> then when somebody connects to USC (i.e. mir_connect(...) )
[18:28] <AlbertA> that connection api takes a name...
[18:29] <AlbertA> when it makes it to the server...USC checks if that session name is the active session or not...
[18:29] <AlbertA> if it's not then it's not shown
[18:29] <bschaefer> AlbertA, shouldnt i be getting a denied somewhere then?
[18:29] <bschaefer> it continues to run that app just fine
[18:29] <AlbertA> bschaefer: it probably should be denied...but it's just simply not shown
[18:30] <bschaefer> yeah
[18:30] <AlbertA> http://bazaar.launchpad.net/~unity-system-compositor-team/unity-system-compositor/trunk/view/head:/src/session_switcher.cpp
[18:30] <AlbertA> http://bazaar.launchpad.net/~unity-system-compositor-team/unity-system-compositor/trunk/view/head:/src/session_switcher.cpp#L95
[18:30] <bschaefer> AlbertA, i was just looking through that file
[18:31] <bschaefer> i just dont know how to "add" a sesssion to it
[18:31] <bschaefer> AlbertA, and it looks like session-0 is being added (which could just be the spinner it self)
[18:32]  * bschaefer tracks down how something would actually add
[18:32] <AlbertA> bschaefer: right so that part is ok...
[18:33] <AlbertA> the part that you will be missing is when your client connects to usc...
[18:33] <AlbertA> that session name
[18:33] <AlbertA> should match the session name given by lightdm
[18:33] <bschaefer> AlbertA, is there something you can add to clients like --session-name? haha
[18:33] <bschaefer> AlbertA, so if i run a client on the command line, what session name would it have?
[18:34]  * bschaefer assumes undefined i suppose
[18:34] <AlbertA> bschaefer: right...currently
[18:34] <AlbertA> it's mir_connect(..., app_name)
[18:34] <AlbertA> app_name = "egldemo"
[18:34] <bschaefer> and the ... is the socket path
[18:34] <bschaefer> but theres no session name
[18:34] <AlbertA> so you should probably be able to see that in the unity system-compositor log
[18:35] <bschaefer> ooo
[18:35] <bschaefer> AlbertA, that makes sense: Opening session egldemo
[18:35] <bschaefer> i've been seeing that
[18:35] <bschaefer> soo i need to add egldemo to the session list
[18:35] <bschaefer> (somehow)
[18:35] <AlbertA> either that...or change the name in the examples.... :)
[18:35] <bschaefer> haha true :)
[18:36] <bschaefer> AlbertA, but ideally, there would be some sort of dispatcher that would run any client and add each session name
[18:36] <bschaefer> to the USC session list
[18:36] <bschaefer> ./launcher_app <mir_client>
[18:36] <bschaefer> but then...
[18:36] <bschaefer> thats pretty much what unity8 does with UAP
[18:36] <AlbertA> bschaefer: yeah...just don't know what that is....
[18:36] <AlbertA> :)
[18:36] <bschaefer> IIRC
[18:37] <bschaefer> AlbertA, cool, thanks for the help!
[18:38] <AlbertA> bschaefer: np
[18:40] <AlbertA> bschaefer: oh BTW...the name used for nested...is configurable through --name or I suppose also MIR_NAME
[18:40] <AlbertA> so somewhere, there should be a MIR_NAME=session-0
[18:41] <bschaefer> AlbertA, but we dont have a nested server atm... do we NEED a nested server?
[18:41] <AlbertA> the nested configuration will use that to specify the connection name to the host server
[18:41] <AlbertA> bschaefer: no...just in case you want to figure who is setting that connection name in the case of unity8
[18:41] <bschaefer> AlbertA, oo right, thanks!
[18:42]  * AlbertA heads out to late lunch
[19:31] <bschaefer> AlbertA, after further looking into things... we are just going to use the mir_demo_server for the server (for now)
[19:32] <bschaefer> until we look at re-making the USC (as we need a super basic server)
[19:32] <bschaefer> the only issue i can see is the mir socket needs permissions for a user to run a demo on it
[19:32] <bschaefer> (ie. i need to do chmod 777 /run/mir_socket)
[22:33] <bschaefer> robert_ancell, hey, i've got a lightdm question. Try to create a bar minimal mir server (right now just attempting with the mir_demo_server). The only
[22:34] <bschaefer> issue is its not getting to the session part, where upstart get started
[22:34] <robert_ancell> bschaefer, what does lightdm.log say?
[22:34] <bschaefer> if i use a config to start USC its fine and the session script starts
[22:34] <bschaefer> robert_ancell, its loads the mir server fine
[22:34]  * bschaefer looks again
[22:34] <bschaefer> just not the session script
[22:35] <robert_ancell> bschaefer, what is the contents of the session .desktop file?
[22:35] <robert_ancell> And using autologin?
[22:35] <bschaefer> robert_ancell, http://paste.ubuntu.com/11744105/
[22:35] <bschaefer> robert_ancell, yup autologin
[22:36] <robert_ancell> That looks good
[22:36] <bschaefer> robert_ancell, http://paste.ubuntu.com/11759515/
[22:36] <bschaefer> robert_ancell, nothing to crazy, and the mir server did start
[22:36] <bschaefer> the only difference is i skip the $@ arguments when i run the mir_server
[22:37] <bschaefer> vs USC
[22:37]  * bschaefer pastebins the lightdm conf
[22:37] <bschaefer> robert_ancell, http://paste.ubuntu.com/11759518/
[22:37] <bschaefer> if i do the run-mir-* it does no run the session script
[22:37] <bschaefer> if i run the USC wrapper the session script runs
[22:38] <bschaefer> (big issue being that upstart doesnt start)
[22:38] <robert_ancell> bschaefer, oh, you don't want to run a compositor at all, i.e. just a single Mir server?
[22:38] <bschaefer> robert_ancell, yup!
[22:39] <robert_ancell> bschaefer, have you set up permissions so a user can run mir_demo_server fine?
[22:39] <bschaefer> robert_ancell, thats an issue, and we were thinking of creating a small USC type program
[22:39] <bschaefer> that will manually 777 the socket (like USC does)
[22:39] <bschaefer> robert_ancell, is that the issue?
[22:40] <robert_ancell> bschaefer, the main issue is getting access to /dev/input
[22:40] <bschaefer> robert_ancell, the server works besides the mir socket it self needing 777 manually
[22:40] <bschaefer> cursor input (this is in a VM as well)
[22:40] <robert_ancell> ok, should be all set up then I guess
[22:40] <bschaefer> robert_ancell, the only issue is i cant get upstart --user to run
[22:41] <robert_ancell> bschaefer, why do you need upstart?
[22:41] <bschaefer> since the session script doesn't work with i just run my mir demo (which upstart is needed for the dbus session for the ubuntu SDK)
[22:41] <robert_ancell> ah
[22:41] <bschaefer> fun stuff going against everything mir is atm :)
[22:41] <bschaefer> USC depends on unity8 to do stuff soo figured it might be easier to do a simple server
[22:42] <bschaefer> but now ... im not 100% sure why the session script ie. mir-barebone-session doesn't run
[22:42] <bschaefer> if and only if i run the mir-demo-server, if i run USC the session script runs fine
[22:42] <robert_ancell> bschaefer, it might be easiest to make a simple compositor (i.e. mir-barebone-compositor)
[22:42] <bschaefer> robert_ancell, well what does lightdm need? The umm
[22:42] <robert_ancell> It wouldn't have to do much, just take USC and gut out everything
[22:43] <bschaefer> --from-dm-fd 12 --to-dm-fd 15
[22:43] <robert_ancell> bschaefer, LightDM just needs to be able to tell the compositor which session to set as active
[22:43] <robert_ancell> yeah, and theres a small binary protocol that runs over that
[22:43] <bschaefer> robert_ancell, hmm i see, and with out that, it wouldn't know that the session is set as active?
[22:43] <bschaefer> meaning it never runs the session script?
[22:43] <bschaefer> (since its not active?)
[22:43]  * robert_ancell looks
[22:44] <robert_ancell> but yes, there is some signalling across that
[22:44] <bschaefer> robert_ancell, what would be required for a barebone compositor?
[22:44] <bschaefer> err rather what library/dbus interface do i need to hook up with
[22:44]  * bschaefer guess USC has all that is needed
[22:45] <robert_ancell> ah, yes. LightDM waits for the compositor to say it is "ready"
[22:45] <bschaefer> robert_ancell, i see, thats all i really need?
[22:45] <bschaefer> to get the session to be active?
[22:46] <robert_ancell> bschaefer, The compositor has two messages to send to LightDM - READY (i.e. started) and SESSION_CONNECTED (i.e. the child Mir server has connected to the compositor)
[22:46]  * bschaefer is trying to avoid the whole USC session list/accept stuff
[22:46] <bschaefer> robert_ancell, hmm so if i only use 1 mir server.. i suppose once lightdm starts up the mir server i can just send both
[22:46] <bschaefer> since i dont need a nested server
[22:46] <robert_ancell> A barebone compositor would just have to accept all connections, make their surfaces fullscreen and switch between them on request of LightDM
[22:47] <robert_ancell> Yes, you could just fake it and LightDM would be fairly happy
[22:47] <bschaefer> robert_ancell, cool thanks ill look into making that :)
[22:47] <bschaefer> robert_ancell, i mean ... i dont think i need i need a nest server?
[22:47]  * bschaefer doesn't 100% understand why i would need one
[22:48] <bschaefer> robert_ancell, mainly my goal is to create a snappy image such that a bare bone mir server is running
[22:48] <bschaefer> and the ubuntu SDK works on it
[22:48] <robert_ancell> You can use one server in theory, but that requires LightDM to be more aware of how that would work.
[22:48] <bschaefer> allowing for a kiosk type system to be set up
[22:48] <robert_ancell> Sure
[22:48] <bschaefer> robert_ancell, as long as i can fake it atm
[22:48] <bschaefer> i think that'll be good
[22:48] <bschaefer> just need to send the right signals off
[22:48] <robert_ancell> My guess is based on the current setup a simplistic compositor will be the easiest path
[22:49] <bschaefer> robert_ancell, yeah sounds reasonable, it would start the mir server it self?
[22:49] <bschaefer> vs the mir_demo_server
[22:49] <bschaefer> just like USC?
[22:49]  * bschaefer would prefer that anyway
[22:49] <bschaefer> so i can change the socket to 777
[22:49] <robert_ancell> The sockets would all be set up correctly so you wouldn't have to do any hacks there
[22:50] <bschaefer> robert_ancell, USC set the socket to 777 it self :)
[22:50] <robert_ancell> Yes, there's an open bug about doing it properly :)
[22:50] <bschaefer>  system_compositor.cpp:111:            if (server->public_socket() && chmod(server->get_socket_file().c_str(), 0777) == -1)
[22:50] <bschaefer> :)
[22:50] <bschaefer> robert_ancell, but cool i can dig through that and rip out everything that is not needed
[22:50] <bschaefer> thanks!
[22:50] <robert_ancell> np, let me know how you go
[22:51] <bschaefer> will do, ill most likely get stuck somewhere along the way