User:Eliasp/Drafts/Plasma Workspace as systemd user-session: Difference between revisions

    From KDE TechBase
    No edit summary
    Line 14: Line 14:
    === user-session units for Plasma Workspace ===
    === user-session units for Plasma Workspace ===
    I created some initial user-session units for Plasma Workspace which can be found on [https://github.com/eliasp/plasma-workspace-units/ GitHub].
    I created some initial user-session units for Plasma Workspace which can be found on [https://github.com/eliasp/plasma-workspace-units/ GitHub].
    == Unsorted items ==
    This is a collection of items, notes and other things which need to be taken care of. They need to be investigated and properly documented.
    === ksmserver ===
    ksmserver does a lot of ugly (from systemd's perspective) things which need to be evaluated:
    * tries to start a WM in [http://quickgit.kde.org/?p=plasma-workspace.git&a=blob&f=ksmserver%2Fstartup.cpp ksmserver/startup.cpp → launchWM] which should be left to systemd
    * doesn't register itself as session leader via systemd-logind which breaks a lot of session related functionality. Documented in [https://bugs.kde.org/show_bug.cgi?id=335390 bug#335390]

    Revision as of 18:25, 16 June 2014

    Plasma Workspace as systemd user-session

    Ultimate Goal

    The ultimate goal of this project is, to make use of systemd's support for user-sessions wherever possible for running a Plasma Workspace. This support is to be implemented in a way which doesn't get in the way of legacy/cross-platform support, so running a Plasma Workspace without a systemd user-session underneath will still be possible.

    What are the benefits?

    • Parallelized and faster startup of the Plasma Workspace after login
    • More finegrained control over running services
    • Increased stability by eliminating existing hacks in startkde, ksmserver, kdeinit, …
    • Cleaner definition of dependencies between Plasma Workspace components
    • Increased security

    Resources

    user-session units for Plasma Workspace

    I created some initial user-session units for Plasma Workspace which can be found on GitHub.

    Unsorted items

    This is a collection of items, notes and other things which need to be taken care of. They need to be investigated and properly documented.

    ksmserver

    ksmserver does a lot of ugly (from systemd's perspective) things which need to be evaluated:

    • tries to start a WM in ksmserver/startup.cpp → launchWM which should be left to systemd
    • doesn't register itself as session leader via systemd-logind which breaks a lot of session related functionality. Documented in bug#335390