On Monday 17 June 2013 07:43:26 Thomas Voß wrote: > thanks for bringing this up. Upstart user session will take care of > single application instances and integrates with AppArmor to implement > our confinement strategy (for >= saucy). The interesting feature from > my pov is the accelerated application startup. Is that relying on > preloading specific symbols?
Yes, Its preloading all the Qt and libmeegotouch stuff. Basically instead of launching your app normally, you give it as an argument to a the so called invoker (/usr/bin/invoker) which has all the common stuff already loaded and forks to your application. Additionally, they've introduced an own QApplication class with some better tuned caching. Instead of creating a QApplication like you would do with standard Qt, you use this QApplication *app = MDeclarativeCache::qApplication(argc, argv); to create a new QApplication. I don't exactly know the details what they do inside that MDeclarativeCache. I guess one thing is to monitor the state of the created QML view and make the splash screen go away when ready. Hope this helps, Michael > > I'm CC'ing Ted and Steve explicitly on this mail as they are most > familiar with upstart user session. > > Thanks, > > Thomas > > On Mon, Jun 17, 2013 at 7:33 AM, Alberto Mardegan > > <alberto.marde...@canonical.com> wrote: > > Hi all! > > > > I'm sending this message both to ubuntu-devel and ubuntu-phone, in the > > > > hope of reaching the widest interested audience as possible. However, > > please reply to ubuntu-devel only. > > > > I want to bring to your attention the existence of a project which IMHO > > would be very beneficial to Ubuntu (especially on embedded devices, but > > not > > only): the application launcher originally developed for Maemo/MeeGo. > > > > In short, the main features that applauncherd bring to the system are: > > * faster application startup > > * support for single instance applications > > * splash screen while the application is starting up > > > > The recommended readings are these: > > http://apidocs.meego.com/1.0/mtf/launcher.html > > http://goo.gl/DjGCV > > > > In order to be used in Ubuntu, the software itself needs some porting, to > > remove the dependencies to Qt4, X11, and the AEGIS security framework used > > in MeeGo. Luckily though, these changes have already been made by the Mer > > people, who ported the software to Qt5, removed the AEGIS stuff and also > > simplified a bit the architecture (there isn't an applauncherd daemon any > > more, but the invoked directly talks to the booster processes). They also > > wrote a booster for speeding up the startup of applications using QML > > components, and we could easily modify that to use our Ubuntu SDK > > components instead. > > > > Their code is here: > > https://github.com/nemomobile/mapplauncherd > > https://github.com/nemomobile/mapplauncherd-qt > > https://github.com/nemomobile/mapplauncherd-booster-qtcomponents > > > > Please let me know what you think of this. IMHO it's a simple and > > brilliant > > idea, it could be integrated with apparmor and also be used to provide > > sane > > default callbacks for handling the application lifetime state changes. > > > > I've never been directly involved in this project, but given how much I > > dislike NIH, I'd be happy to collaborate with whoever wants to bring this > > to Ubuntu. > > > > Ciao, > > > > Alberto > > > > -- > > Mailing list: https://launchpad.net/~ubuntu-phone > > Post to : ubuntu-phone@lists.launchpad.net > > Unsubscribe : https://launchpad.net/~ubuntu-phone > > More help : https://help.launchpad.net/ListHelp -- Mailing list: https://launchpad.net/~ubuntu-phone Post to : ubuntu-phone@lists.launchpad.net Unsubscribe : https://launchpad.net/~ubuntu-phone More help : https://help.launchpad.net/ListHelp