This page describes the current status of Debian systemd integration.

Goals

Status/TODO

Test reports

Please add your test report in the appropriate category and add a new category if necessary:

sysv-only

kanla 1.2

sysv+systemd with exact name match

pyroman 0.5.0~alpha1

all-knowing-dns 1.3

sysv+systemd without exact name match

override_dh_installinit:
       dh_installsystemd --assume-sysv-present --restart-after-upgrade
       dh_installinit --restart-after-upgrade

alsa-utils 1.0.27-2

sysv+systemd with special dh_installinit call

(e.g. --restart-after-upgrade)

rsyslog 5.8.11

dbus 1.6.8

nginx 1.4.1-1

systemd-only services

(e.g. dbus-activated ones)

udisks 1.0.4

irker 1.17

packages not using dh

systemd itself

systemd uses dh and ships a lot of unit files.

HOWTO rebuild a service

Make the updated debhelper in /var/cache/pbuilder/result available in pbuilder (as root):

echo 'deb file:///var/cache/pbuilder/result ./' >> /etc/pbuilder/apt.config/sources.list
echo 'BINDMOUNTS="/var/cache/pbuilder/result"' >> /etc/pbuilderrc
cd /var/cache/pbuilder/result
wget http://t.zekjur.net/debhelper_9.20130508_all.deb
apt-ftparchive packages debhelper_9.20130508_all.deb > Packages
pbuilder --update --override-config

Afterwards, just bump the debhelper dependency in build-depends to = 9.20130508, build a source package and use pbuilder on that.

installation/maintainer scripts

It's still open for discussion how much logic we move into update-rc.d / invoke-rc.d or if we let dh_installinit generate systemd specific code. Maybe a mix of both is needed. Also, do we want to add all functionality into dh_installinit or should we provide separate helper tools: dh_tmpfiles, dh_systemd or even split the latter for services and sockets?

dh_installinit

tmpfiles units

socket units

service units

tools

update-rc.d

invoke-rc.d

service

lsb init-hook