On ti, joulu 6 2022 at 20.25.45 +00:00:00, Alyssa Ross wrote: > On Tue, Dec 06, 2022 at 10:12:49PM +0200, Vadim Likholetov wrote: >> I’ll try to explain — running as user is not just dropping the >> priviledges, it is about preparing the environment - making home >> directory, fixing permissions, allocating pty-s in case of >> interactive sessions, setting environment variables. >> Many system daemons like dbus, pipewire , etc has their >> system-level and user-level parts and we should manage this >> separately — and it is our nearest future if we want some complex >> user environments to run on Spectrum, and possibly the packages for >> this daemons will extend this environment transparent to the user. >> >> So it’s s another form of encapsulation like we discussed about >> making a separate layer for wayland. > > Ah, thanks for the explanation. I understand now! > > You're quite right about running user daemons like PipeWire. > I think to manage those, we'd want to run a user-level s6(-rc) > instance, > so that the services are supervised, and can therefore be restarted if > they crash, and dependencies can be taken care of, and logs can be > managed however that should work. > > Let's try adding PipeWire, D-Bus etc. daemons straight to the img/app > image? It's intended to be the default image for running > applications, > so anything that an application is likely to expect to be running > should > be provided by that image by default. And then later on, when it > comes > up, we can figure out how to support adding extra services, or whether > we should support removing default services from the image, etc. How > does that sound? Sounds good if we add both user and system parts of dbus or pipewire subsystem -- the system part when the system starts and the user part when the user "logs in". Adding it only to system part doesn't make sense IMO. I can try to prototype it on the basis of s6 features if we agree about architecure :) -- vadik likholetov