diff mbox series

[meta-networking,1/2] conntrack-tools: add systemd unit file

Message ID 20230627055748.1327207-1-yi.zhao@windriver.com
State Under Review
Headers show
Series [meta-networking,1/2] conntrack-tools: add systemd unit file | expand

Commit Message

Yi Zhao June 27, 2023, 5:57 a.m. UTC
Refer to
https://salsa.debian.org/pkg-netfilter-team/pkg-conntrack-tools/-/blob/master/debian/conntrackd.service,
add systemd unit file conntrackd.service.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
---
 .../conntrack-tools/conntrack-tools_1.4.7.bb          | 10 ++++++++++
 .../conntrack-tools/files/conntrackd.service          | 11 +++++++++++
 2 files changed, 21 insertions(+)
 create mode 100644 meta-networking/recipes-filter/conntrack-tools/files/conntrackd.service
diff mbox series

Patch

diff --git a/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.7.bb b/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.7.bb
index 8b47ceb1c..0d1100ddd 100644
--- a/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.7.bb
+++ b/meta-networking/recipes-filter/conntrack-tools/conntrack-tools_1.4.7.bb
@@ -11,6 +11,7 @@  EXTRA_OECONF += "LIBS=-ltirpc CPPFLAGS=-I${STAGING_INCDIR}/tirpc"
 SRC_URI = "http://www.netfilter.org/projects/conntrack-tools/files/conntrack-tools-${PV}.tar.bz2 \
     file://conntrack-failover \
     file://init \
+    file://conntrackd.service \
 "
 SRC_URI[sha256sum] = "099debcf57e81690ced57f516b493588a73518f48c14d656f823b29b4fc24b5d"
 
@@ -25,6 +26,10 @@  PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
 
 INITSCRIPT_NAME = "conntrackd"
 
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_SERVICE:${PN} = "conntrackd.service"
+SYSTEMD_AUTO_ENABLE = "disable"
+
 do_install:append() {
 	install -d ${D}/${sysconfdir}/conntrackd
 	install -d ${D}/${sysconfdir}/init.d
@@ -37,6 +42,11 @@  do_install:append() {
 	sed -i 's!/etc/!${sysconfdir}/!g' ${D}/${sysconfdir}/init.d/conntrack-failover ${D}/${sysconfdir}/init.d/conntrackd
 	sed -i 's!/var/!${localstatedir}/!g' ${D}/${sysconfdir}/init.d/conntrack-failover ${D}/${sysconfdir}/init.d/conntrackd ${D}/${sysconfdir}/conntrackd/conntrackd.conf.sample
 	sed -i 's!^export PATH=.*!export PATH=${base_sbindir}:${base_bindir}:${sbindir}:${bindir}!' ${D}/${sysconfdir}/init.d/conntrackd
+
+	if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
+		install -d ${D}/${systemd_system_unitdir}
+		install -m 644 ${WORKDIR}/conntrackd.service ${D}/${systemd_system_unitdir}
+	fi
 }
 
 # fix error message: Do not forget that you need *root* or CAP_NET_ADMIN capabilities ;-)
diff --git a/meta-networking/recipes-filter/conntrack-tools/files/conntrackd.service b/meta-networking/recipes-filter/conntrack-tools/files/conntrackd.service
new file mode 100644
index 000000000..b3b0f1d21
--- /dev/null
+++ b/meta-networking/recipes-filter/conntrack-tools/files/conntrackd.service
@@ -0,0 +1,11 @@ 
+[Unit]
+Description=Conntrack Daemon
+Documentation=man:conntrackd(8) man:conntrackd.conf(5)
+
+[Service]
+Type=notify
+ExecStartPre=-/bin/rm -f /var/lock/conntrackd.lock
+ExecStart=/usr/sbin/conntrackd -C /etc/conntrackd/conntrackd.conf
+
+[Install]
+WantedBy=multi-user.target