Re: s6-rc-repo and initializing compiled databases

From: Laurent Bercot <ska-skaware_at_skarnet.org>
Date: Thu, 23 Apr 2026 19:20:53 +0000

  Hi Kurt,

  I haven't focused on user services yet, so it's expected that you
are somewhat trailblazing (other people are using s6-rc to manage user
services already so they may be able to answer specific questions).

  There are roughly three ways of doing what you want:

1. Purely manually with s6-rc-init and and compiling and linking
your set database;
2. Using the "repo" set of commands, which you seem to be doing since
you mention s6-rc-set-install;
3. Using the s6-frontend package, which is essentially a wrapper around
the repo commands.

  For user services, I can recommend the third method, which should be
simpler, and I plan to add more support over time; and if something
doesn't work I absolutely want to know. 🙂

  So my advice would be:

  Before first use:
  - put all your user services into a store (you already have done that)
  - fill in a s6-frontend.conf file, probably in your XDG_CONFIG_HOME
  - Add S6_FRONTEND_CONF=/path/to/s6-frontend.conf to the list of
environment variables to load at session start time
  - run "s6 repo init"
  - edit your set with "s6 set" commands, then install it with
"s6 live install --init"

  and then, at startup:
  - run s6-svscan, and wait for it to be ready (I will add sugar for
s6-svscan readiness at some point)
  - run "s6 system boot", which will basically run "s6-rc-init" and
"s6-rc start default" for you.

  Here is the documentation for s6-frontend:
  https://skarnet.org/software/s6-frontend/

  It's yet in the early stages, but normally, if your configuration
file is correct, it should already take care of a lot of the boilerplate
and make things simpler for you. And please do not hesitate to report
if you have trouble.

  Good luck,

--
  Laurent
Received on Thu Apr 23 2026 - 21:20:53 CEST

This archive was generated by hypermail 2.4.0 : Thu Apr 23 2026 - 21:21:31 CEST