Bug#1138547: debian-policy: Add openRC section to starting system services

Matthias Geiger <[email protected]> Wed, 03 Jun 2026 21:19:35 +0200
Newsgroups gmane.linux.debian.devel.policy
Message-ID <tg2mfi.ys22sdghsbmp__43128.0391801678$1780516639$gmane$org@riseup.net>
On Sun, 31 May 2026 20:22:24 +0200 Matthias Geiger <[email protected]> wrote:
> On Sun, 31 May 2026 20:18, Simon McVittie <[email protected]> wrote:
> >On Sun, 31 May 2026 at 18:36:10 +0200, Matthias Geiger wrote:
> >>After discussion with upstream I think it is best
> >>to install the service files to /etc/rc/init.d
> >...
> >>Another possibility would be for the services to live under /usr/, but 
> >>this would require coordination with upstream.
> >
> >I think putting the equivalents of init scripts and systemd services 
> >in /usr with a mechanism for overrides in /etc, similar to how 
> >systemd services were done, would be a good choice for new init 
> >systems.
> 
> Right, that makes sense. I have talked with upstream, and they would 
> also be willing to support /usr/ with overrides in /etc/. Since this is 
> still being worked on, for the time being I would leave this for now, 
> and revisit once that change has landed in unstable.
> 
So upstream already implemented this in 
https://github.com/OpenRC/openrc/pull/942.

Does the following change sound good?



========================================================================
diff --git a/policy/ch-opersys.rst b/policy/ch-opersys.rst
index 3928723..45ad4d0 100644
- --- a/policy/ch-opersys.rst
+++ b/policy/ch-opersys.rst
@@ -362,7 +362,13 @@ The ``sysv-rc`` runlevel system for ``sysvinit`` uses symlinks in
``/etc/rcn.d`` to decide which scripts to run and in which order at boot
time and when the init state (or "runlevel") is changed.  See the
``README.runlevels`` file shipped with ``sysv-rc`` for implementation
details.

[-Other alternatives might exist.-]{+``openrc`` can determine its own 
order of services to run and when to change+}
{+the init state. Since openrc uses ``/usr/libexec/rc/ìnit.d`` as 
service directory+}
{+but has its own service syntax divergent to ``sysvinit``, the following sections+}
{+about init scripts do not apply when using ``openrc-native``. Native openrc services+}
{+must be installed to ``/usr/libexec/rc/init.d``.+}

The sections below describe how to write those scripts and configure those
symlinks.

=========================================================================

Thoughts on this?

best,

werdahias