Hi Lorenzo,

Thanks for opening up discussion to the list!

On Wed, Jun 10, 2026 at 01:27:12AM +0200, Lorenzo wrote:
> I'm attaching an updated version of the patches where
> stop actions are turned into no-op

I attach initscripts I am using with systemd-standalone-tmpfiles which I
would like to refine.  Following your lead I also dropped the 'stop'
action, although I am wondering if I should include the '0 6' stop
runlevels anyway, at the expense of shutdown log noise, because just
filling out the stop stub later is a lot easier than also changing the
configured runlevels on existing installations?

In this version, 'TYPE=oneshot' gives us a meaningful 'status' query at
the expense of needing to use 'restart' instead of 'start' to reapply
the operation.

One question for Mark in relation to init-d-script(5) is that by using
DAEMON=none, as required for this type of service, we lose the automatic
"this package is still installed" check - what is the idiomatic way to
reinstate that - would it be a 'start_pre' override to test for it?

Should we also put drop-ins to /etc/insserv.conf.d of the form:

  $x-tmpfiles: seedfiles

So that we can add an LSB dependency for scripts in packages which have
decided to rely on tmpfiles for essential content?

Thanks,

Andrew
#!/bin/sh /lib/init/init-d-script
### BEGIN INIT INFO
# Provides:          systemd-tmpfiles-setup
# Required-Start:    $remote_fs
# Required-Stop:     $remote_fs
# Should-Start:      systemd-tmpfiles-clean
# Should-Stop:       systemd-tmpfiles-clean
# Default-Start:     S
# Default-Stop:      
# X-Start-After:     udev
# Short-Description: Create system files and directories
# Description:       Invoke systemd-tmpfiles to create system files and
#                    directories according to configuration files whose
#                    location and format is defined in tmpfiles.d(5)
### END INIT INFO

DAEMON=none
NAME=systemd-tmpfiles-setup
DESC="create system files and directories"
TYPE=oneshot

do_start_cmd_override() {
  /usr/bin/systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev
}

do_stop_cmd_override() { :; }
#!/bin/sh /lib/init/init-d-script
### BEGIN INIT INFO
# Provides:          systemd-tmpfiles-clean
# Required-Start:    $remote_fs
# Required-Stop:     $remote_fs
# Default-Start:     S
# Default-Stop:      
# Short-Description: Clean up temporary system files and directories
# Description:       Invoke systemd-tmpfiles to clean up system files and
#                    directories according to configuration files whose
#                    location and format is defined in tmpfiles.d(5)
### END INIT INFO

DAEMON=none
NAME=systemd-tmpfiles-clean
DESC="clean up system files and directories"
TYPE=oneshot

do_start_cmd_override() {
  /usr/bin/systemd-tmpfiles --clean
}

do_stop_cmd_override() { :; }

Reply via email to