rpcbind: use upstream systemd service

Use upstream systemd service files instead of our own service files.
This also makes sure that /run/rpcbind.sock is used which fixes the
following systemd warning:
  /usr/lib/systemd/system/rpcbind.socket:5: ListenStream= references a
  path below legacy directory /var/run/, updating /var/run/rpcbind.sock
  \xe2\x86\x92 /run/rpcbind.sock; please update the unit file accordingly.

(From OE-Core rev: ad08385393bb0d072f2f27f5a189041037e06195)

Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Stefan Agner
2019-11-22 16:24:41 +00:00
committed by Richard Purdie
parent e6254f385e
commit 63dd6190cb
5 changed files with 45 additions and 32 deletions

View File

@@ -0,0 +1,42 @@
From da528d5d60137f13202102b53cf178aba45849a5 Mon Sep 17 00:00:00 2001
From: Stefan Agner <stefan.agner@toradex.com>
Date: Sun, 6 Oct 2019 00:05:54 +0200
Subject: [PATCH] systemd: use EnvironmentFile
Use OE specific environment file.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
---
configure.ac | 2 ++
systemd/rpcbind.service.in | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 2dd9471..47a46c0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -69,5 +69,7 @@ AC_CHECK_HEADERS([nss.h rpcsvc/mount.h])
# 2 "evals" needed to expand variable names
AC_SUBST([_sbindir])
AC_CONFIG_COMMANDS_PRE([eval eval _sbindir=$sbindir])
+AC_SUBST([_sysconfdir])
+AC_CONFIG_COMMANDS_PRE([eval eval _sysconfdir=$sbindir])
AC_OUTPUT([Makefile systemd/rpcbind.service])
diff --git a/systemd/rpcbind.service.in b/systemd/rpcbind.service.in
index 7b1c74b..f45ee1e 100644
--- a/systemd/rpcbind.service.in
+++ b/systemd/rpcbind.service.in
@@ -11,7 +11,7 @@ Wants=rpcbind.target
[Service]
Type=notify
-# distro can provide a drop-in adding EnvironmentFile=-/??? if needed.
+EnvironmentFile=-@_sysconfdir@/rpcbind.conf
ExecStart=@_sbindir@/rpcbind $RPCBIND_OPTIONS -w -f
[Install]
--
2.23.0

View File

@@ -1,3 +1,3 @@
# Optional arguments passed to rpcbind.
#
RPCBIND_OPTS=""
RPCBIND_OPTIONS=""

View File

@@ -1,12 +0,0 @@
[Unit]
Description=RPC Bind Service
Requires=rpcbind.socket
[Service]
Type=forking
EnvironmentFile=-@SYSCONFDIR@/rpcbind.conf
ExecStart=@SBINDIR@/rpcbind $RPCBIND_OPTS
SuccessExitStatus=2
[Install]
Also=rpcbind.socket

View File

@@ -1,8 +0,0 @@
[Unit]
Description=RPCbind Server Activation Socket
[Socket]
ListenStream=/var/run/rpcbind.sock
[Install]
WantedBy=sockets.target

View File

@@ -13,9 +13,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b46486e4c4a416602693a711bb5bfa39 \
SRC_URI = "${SOURCEFORGE_MIRROR}/rpcbind/rpcbind-${PV}.tar.bz2 \
file://init.d \
file://rpcbind.conf \
file://rpcbind.socket \
file://rpcbind.service \
file://rpcbind_add_option_to_fix_port_number.patch \
file://0001-systemd-use-EnvironmentFile.patch \
"
SRC_URI[md5sum] = "ed46f09b9c0fa2d49015f6431bc5ea7b"
SRC_URI[sha256sum] = "2ce360683963b35c19c43f0ee2c7f18aa5b81ef41c3fdbd15ffcb00b8bffda7a"
@@ -28,7 +27,7 @@ PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers"
INITSCRIPT_NAME = "rpcbind"
INITSCRIPT_PARAMS = "start 12 2 3 4 5 . stop 60 0 1 6 ."
SYSTEMD_SERVICE_${PN} = "rpcbind.service"
SYSTEMD_SERVICE_${PN} = "rpcbind.service rpcbind.socket"
inherit useradd
@@ -50,12 +49,4 @@ do_install_append () {
-e 's,/sbin/,${sbindir}/,g' \
${WORKDIR}/init.d > ${D}${sysconfdir}/init.d/rpcbind
chmod 0755 ${D}${sysconfdir}/init.d/rpcbind
install -m 0755 ${WORKDIR}/rpcbind.conf ${D}${sysconfdir}
install -d ${D}${systemd_unitdir}/system
install -m 0644 ${WORKDIR}/rpcbind.socket ${D}${systemd_unitdir}/system
install -m 0644 ${WORKDIR}/rpcbind.service ${D}${systemd_unitdir}/system
sed -i -e 's,@SBINDIR@,${sbindir},g' \
-e 's,@SYSCONFDIR@,${sysconfdir},g' \
${D}${systemd_unitdir}/system/rpcbind.service
}