sane-backends: add systemd support
PATCH v3 1/1 sane-backends: add systemd support
The content of the saned.socket and saned at .service files is based on the instructions of the sane-backends manual.
---
Changes v2 -> v3:
- Create the "target.wants" directories for the socket and the service and put symlinks in there pointing to the real files. (Suggested by Maxime Hadjinlian)
Changes v1 -> v2:
- Install the systemd files in /usr/lib/systemd/system. (Suggested by Maxime Hadjinlian)
- Create saned user and group (Highlighted by Maxime Hadjinlian)
- Amend the commit log since we are not using the location for the systemd files specified in the manual.
package/sane-backends/sane-backends.mk | 24 ++++++++++++++++++++++++ package/sane-backends/saned.socket | 10 ++++++++++ package/sane-backends/saned at .service | 18 ++++++++++++++++++ 3 files changed, 52 insertions(+), 0 deletions(-) create mode 100644 package/sane-backends/saned.socket create mode 100644 package/sane-backends/saned at .service
package/sane-backends/sane-backends.mk +24 -0
@@ -14,6 +14,13 @@ SANE_BACKENDS_INSTALL_STAGING = YES SANE_BACKENDS_CONF_OPTS = \ $(if $(BR2_TOOLCHAIN_HAS_THREADS),--enable-pthread,--disable-pthread) +ifeq ($(BR2_INIT_SYSTEMD),y) +SANE_BACKENDS_CONF_OPTS += --with-systemd +SANE_BACKENDS_DEPENDENCIES += systemd +else +SANE_BACKENDS_CONF_OPTS += --without-systemd +endif + ifeq ($(BR2_PACKAGE_LIBUSB),y) SANE_BACKENDS_DEPENDENCIES += libusb SANE_BACKENDS_CONF_OPTS += --enable-libusb_1_0
@@ -50,4 +57,21 @@ endef SANE_BACKENDS_POST_CONFIGURE_HOOKS += SANE_BACKENDS_DISABLE_DOCS +define SANE_BACKENDS_USERS + saned -1 saned -1 * /etc/sane.d - - Saned User +endef + +define SANE_BACKENDS_INSTALL_INIT_SYSTEMD + $(INSTALL) -m 0644 -D package/sane-backends/saned.socket \ + $(TARGET_DIR)/usr/lib/systemd/system/saned.socket + mkdir -p $(TARGET_DIR)/etc/systemd/system/socket.target.wants + ln -sf ../../../../usr/lib/systemd/system/saned.socket \ + $(TARGET_DIR)/etc/systemd/system/socket.target.wants/saned.socket + $(INSTALL) -m 0644 -D package/sane-backends/saned at .service \ + $(TARGET_DIR)/usr/lib/systemd/system/saned at .service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -sf ../../../../usr/lib/systemd/system/saned at .service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/saned at .service +endef + $(eval $(autotools-package))
package/sane-backends/saned.socket new file +10 -0
@@ -0,0 +1,10 @@ +[Unit] +Description=saned incoming socket + +[Socket] +ListenStream=6566 +Accept=yes +MaxConnections=1 + +[Install] +WantedBy=sockets.target
package/sane-backends/saned at .service new file +18 -0
@@ -0,0 +1,18 @@ +[Unit] +Description=Scanner Service +Requires=saned.socket + +[Service] +ExecStart=/usr/sbin/saned +User=saned +Group=saned +StandardInput=null +StandardOutput=syslog +StandardError=syslog +Environment=SANE_CONFIG_DIR=/etc/sane.d +# If you need to debug your configuration uncomment the next line and +# change it as appropriate to set the desired debug options +# Environment=SANE_DEBUG_DLL=255 SANE_DEBUG_BJNP=5 + +[Install] +Also=saned.socket
Signature · 1 line
1.7.1
PATCH v3 1/1 sane-backends: add systemd support
Adding Maxime's tags as he cannot find the original email to reply and add the tags by himself.
Quoted 4 lines · Vicente Olivert Riera
The content of the saned.socket and saned at .service files is based on the instructions of the sane-backends manual.
Signed-off-by Vicente Olivert Riera <[email protected]>
Reviewed-by "Maxime Hadjinlian" <[email protected]> Tested-by "Maxime Hadjinlian" <[email protected]>
PATCH v3 1/1 sane-backends: add systemd support
Quoted 11 lines · Vicente Olivert Riera
Adding Maxime's tags as he cannot find the original email to reply and add the tags by himself.
Quoted 4 lines · Vicente Olivert Riera
The content of the saned.socket and saned at .service files is based on the instructions of the sane-backends manual.
Signed-off-by Vicente Olivert Riera <[email protected]>Reviewed-by "Maxime Hadjinlian" <[email protected]> Tested-by "Maxime Hadjinlian" <[email protected]>
Here with the proper tag (missed the ':')
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20151023/4c7ec6e8/attachment.html>
Thomas Petazzoni
AppliedPATCH v3 1/1 sane-backends: add systemd support
In reply to Vicente Olivert RieraDear Vicente Olivert Riera,
Quoted 9 lines · Vicente Olivert Riera
The content of the saned.socket and saned at .service files is based on the instructions of the sane-backends manual.
Signed-off-by Vicente Olivert Riera <[email protected]>---
Changes v2 -> v3:
- Create the "target.wants" directories for the socket and the service and put symlinks in there pointing to the real files. (Suggested by Maxime Hadjinlian)
Applied, thanks.
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com