<div dir="ltr"><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Feb 12, 2023 at 9:27 AM Vladimir Kudrya <<a href="mailto:vladimir-csp@yandex.ru">vladimir-csp@yandex.ru</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
  
    
  
  <div>
    <div>On 10/02/2023 12.51, Mantas Mikulėnas
      wrote:<br>
    </div>
    <blockquote type="cite">
      <div dir="auto">
        <div dir="auto">
          <div class="gmail_quote">
            <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
              <div>
                <p>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?<br>
                </p>
              </div>
            </blockquote>
          </div>
        </div>
        <div dir="auto">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.</div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">(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.)</div>
      </div>
    </blockquote>
    If one does not want to mess with dbus, is prefixing app commands in
    compositor's configuration with `systemd-run --user --scope
    --slice=app.slice ...` a valid alternative?<br>
  </div>

</blockquote></div><div><br></div><div>That should work, although if you're already using systemd then I don't think D-Bus is that big of a step. (It would also let you create a .scope for an existing PID, which systemd-run currently doesn't have an option to.)</div><div><br></div><div>Looking at what <a href="https://sources.debian.org/src/gnome-desktop/43.1-1/libgnome-desktop/gnome-systemd.c/?hl=113#L113">libgnome-desktop</a> does, you probably also want to use -G (aka --collect, aka --property=CollectMode=inactive-or-failed).</div><br>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr">Mantas Mikulėnas</div></div></div>