On 10/02/2023 12.51, Mantas Mikulėnas wrote:

    Also systemd.special manual recommends putting display servers
    into session.slice. But in case of a wayland compositor it is
    impossible to separate it from the apps, because the compositor
    handles keyboard shortcuts (which launch apps or launchers which
    launch apps). Is this recommendation even feasible for wayland?

Yes; the compositor can use systemd D-Bus API to launch apps in their own .scopes underneath app.slice (or transient .services), as e.g. GNOME Shell already does.

(For a different use of the same API, see also how GNOME Terminal – or libvte, I guess – launches each terminal tab in its own .scope. You can forkbomb a single tab without significantly affecting the rest of the system.)

That would put unneeded work on compositors, some of which might never even care about systemd.

I wonder if there is a potential centralized solution on session manager side, like configuring a unit to automatically put any forked processes into scopes of chosen slice.

# inwayland-wm@.service:
...
[Service]
...
Slice=session.slice
# hypothetical new feature
ScopeForksTo=app.slice
...

Reply via email to