Systemd for the User Session
It's a little known secret that systemd is extremely capable of starting, controlling and regulating more than just system services, but can easily start an entire Desktop UI. Not many people have sat down and implemented and worked out the problems of starting an X service, a few UI components, the session bus and DBus services for normal users with the mechanisms that systemd provides.
The benefits are obvious: Systemd provides excellent service monitoring and restarting capabilities, provides socket and DBus activation for relevant services, and overall improves desktop startup by allowing user services to start well before core services like Xorg or wayland start. In effect, we're saying goodbye to XDG autostart entirely, and getting back reliability and scalability.
We converted several desktop environments including Tizen's Mobile UI, Xfce4, Enlightenment and more to systemd user sessions. We "pop the hood" and take a look at the implications for startup, what's possible to further improve on the session startup and where we can do better.
Topic Lead: Auke KokAuke Kok <email address hidden>
Auke is a software engineer at Intel's Open Source Technology center, and has been attempting to make Linux boot faster since 2007. In 2008, he co-presented the "5-second boot" with Arjan van de Ven at the first LPC. Since then, Auke has worked on further improving the Linux Core OS start sequence, first for Moblin and later with MeeGo, where we made the first switch to systemd. Auke now works on Tizen, which will heavily integrate systemd in the Core OS.
Blueprint information
- Status:
- Not started
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- None
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- New
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by