Hello, The foundations team has been working on Upstart User Sessions for a good part of this cycle. An early preview is now available for testing.
Upstart user sessions basically mean that instead of having lightdm spawn Xsession which in turn spawn gnome-session, upstart is now inserted between Xsession and gnome-session. This means that bits of gnome-session can now be turned into user jobs, can react on any event coming from the system wide upstart daemon and can be monitored/respawned just like system jobs are. The idea behind this work is to allow for fewer long lasting processes on the Ubuntu desktop by having more event driven short lasting processes. It should also help with the perceived stability of the desktop thanks to upstart's respawn feature. Details can be found at: https://wiki.ubuntu.com/FoundationsTeam/Specs/RaringUpstartUserSessions The test PPA is at: https://launchpad.net/~stgraber/+archive/foundation-build This PPA contains a build of upstart trunk that's been tested for the past week by members of the Foundations team and Desktop team. So we're reasonably sure that it's stable. We however recommend that you keep a working upstart package around just in case we missed something and you need to do emergency revert of usptart on your system. What that package does is install a new version of upstart containing all our user session changes. It also ships with a custom Xsession hook and a new X session called ubuntu-upstart. Once you have that package install, you'll notice a new session in lightdm called "Ubuntu (upstart)". Selecting this session will start a standard Ubuntu Unity session that'll be running inside an upstart user session. After using this for the past few days, I haven't noticed any side effect. On the upside, you can now dump extra jobs in ~/.init, list running user jobs with "initctl list", start/stop them with "initctl start/stop" and do pretty much anything you'd expect from standard upstart jobs. As an example, write the following to ~/.init/mumble.conf: """ start on started pulseaudio and :sys:sound-device-added stop on :sys:sound-device-removed exec mumble """ Then plug a USB headset and you'll see mumble pop up on your desktop. The system wide jobs can be found under /usr/share/upstart/sessions/ Those are examples that I wrote last week. I expect a final version of those to end up in the individual source packages. Log output from the jobs can be found under ~/.cache/upstart/ As it's today, we only support a standard Unity session, however adding support for any other session based on gnome-session should be trivial. I plan on spending a bit of time looking at whether we can get the system generic enough to apply to any Xsession but I think we'll want to keep this opt-in for the moment and not force everything to run on top of upstart (thinking of the flavours that ship their own desktop environment). As far as the actual release is concerned, we are two branches away from having everything that's in my PPA merged upstream, so we're well on track to have a new upstream release before FeatureFreeze so we can have this landed and integrated by then. I also have a branch with an experimental dconf bridge which lets you react to keys being set/modified/removed. It still needs a bit of cleanup though and it's not clear whether we'll want that running by default or not. Feedback, suggestions, bug reports would be much appreciated. We're available in #upstart (on freenode) and can be contacted on [email protected] (Cced). -- Stéphane Graber Ubuntu developer http://www.ubuntu.com
signature.asc
Description: OpenPGP digital signature
-- upstart-devel mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/upstart-devel
