Re: s6-rc-repo and initializing compiled databases

From: kurth4cker <kurth4cker_at_gmail.com>
Date: Sat, 25 Apr 2026 12:34:03 +0300

On Fri, Apr 24, 2026 at 04:43:09PM -0300, Guillermo wrote:
> And "user login" does not happen at the same time as starting River
> (like with a Wayland session-capable display manager)? If no, how is
> tmux started then if there's no supervision tree created by River's
> startup scripts yet?
Currently a supervision tree is created at login by a login tracker
service called turnstile:
https://docs.voidlinux.org/config/services/user-services.html
So user supervision tree and each of river's supervision trees are
separate now. My goal is migrate to s6-rc. And seems like s6-rc-init is
capable of different sets of services run in a single supervision tree.

> The other message shows a tmux process in the
> same supervision tree as those that need a Wayland display socket, so
> it must have been started by River even if it does not use its
> socket...
Nope. They don't need. I didn't setup yet, but I'm planning to setup
river init script so it saves environment to an envdir and scripts are
start actual programs with this envdir. So they can run correctly even
if they don't get environment from river directly.

Probably with s6-rc, supervision tree will be started at user login or
at bootup. Then, whenever river starts, it will add it's own services to
this user specific supervision tree with s6-rc-init and/or s6-rc-set-install.
They will have a session specific prefix, so they will not collide with
other instances of same services.
- river.wayland-0:beansprout
- river.wayland-1:beansprout
etc.


> Also, not related to service management itself, but you also described
> in another message starting two instances of River, how does that
> work? Isn't only one single compositor driving the display at any
> time? What do you use the other instance for? (I don't have Wayland
> setups myself.. yet).
wayland compositors and also X server can run more than one instance at
the same time. In different ttys. Switch to tty5 and try to start
another display server. It will probably work. Also note that lots of
wayland compositors can run within another wayland compositor. So I can
start river within river and it will open a new window with it's own
display. This is probably designed this way so developers can test them
without needing to switch tty and setup everything again. They will just
launch development version of their compositor within a desktop
environment and it will just work.


> And, out of curiosity, may I ask what operating system are you testing
> all of this on :) ?
void linux: https://voidlinux.org
Currently it uses runit for supervision and there is no real service
management. I ported lots of runit scripts to s6, I'm running s6-svscan
as a runit service. Then s6 supervision tree handles rest of them. I'm
too afraid to try s6-rc and s6-linux-init system wide. So I'm starting
with user services.

Note that turnstile also starts user service tree as a runit service
tree. I'm, again, spawning s6-svscan as a runit service. Probably I
should write a s6 and s6-rc backend for turnstile.

>
> G.
Received on Sat Apr 25 2026 - 11:34:03 CEST

This archive was generated by hypermail 2.4.0 : Sat Apr 25 2026 - 11:34:44 CEST