summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>2014-10-21 11:54:05 +0000
committermsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>2014-10-21 11:54:05 +0000
commit451d5797fae6b8c3182538012abeb77dc67545f6 (patch)
tree1d66f3e620a72462acad9397e62d861f7b4de1ea
parent241474b0d9e8cd99b440f38890bcb78eaac34b74 (diff)
downloadcups-451d5797fae6b8c3182538012abeb77dc67545f6.tar.gz
Add systemd support for cups-lpd (STR #4493)
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/trunk@12221 a1ca3aef-8c08-0410-bb20-df032aa958be
-rw-r--r--CHANGES-2.0.txt1
-rw-r--r--configure.ac1
-rw-r--r--packaging/cups.spec.in9
-rw-r--r--scheduler/Makefile7
-rw-r--r--scheduler/org.cups.cups-lpd.socket9
-rw-r--r--scheduler/org.cups.cups-lpdAT.service.in9
-rw-r--r--scheduler/org.cups.cupsd.service.in1
7 files changed, 33 insertions, 4 deletions
diff --git a/CHANGES-2.0.txt b/CHANGES-2.0.txt
index 721007b5e..157be2ae2 100644
--- a/CHANGES-2.0.txt
+++ b/CHANGES-2.0.txt
@@ -11,6 +11,7 @@ CHANGES IN CUPS V2.0.1
- The web interface now protects against frame "click-jacking" attacks
(STR #4492)
- Fixed a crash in ippAttributeString (<rdar://problem/17903871>)
+ - Added systemd support for cups-lpd (STR #4493)
- RPMs did not build (STR #4490)
diff --git a/configure.ac b/configure.ac
index 944a105ec..c0817b9c8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -81,6 +81,7 @@ AC_OUTPUT(Makedefs
scheduler/cups.sh
scheduler/cups.xml
scheduler/org.cups.cups-lpd.plist
+ scheduler/org.cups.cups-lpdAT.service
scheduler/org.cups.cupsd.path
scheduler/org.cups.cupsd.service
scheduler/org.cups.cupsd.socket
diff --git a/packaging/cups.spec.in b/packaging/cups.spec.in
index c4c547fc3..07d7f895a 100644
--- a/packaging/cups.spec.in
+++ b/packaging/cups.spec.in
@@ -180,7 +180,7 @@ rm -rf $RPM_BUILD_ROOT
%if %{?_with_systemd:1}%{!?_with_systemd:0}
# SystemD
-/usr/lib/systemd/system/*
+/usr/lib/systemd/system/org.cups.cupsd.*
%else
# Legacy init support on Linux
@@ -379,7 +379,14 @@ rm -rf $RPM_BUILD_ROOT
%files lpd
%defattr(-,root,root)
+%if %{?_with_systemd:1}%{!?_with_systemd:0}
+# SystemD
+/usr/lib/systemd/system/org.cups.cups-lpd*
+%else
+# Legacy xinetd
/etc/xinetd.d/cups-lpd
+%endif
+
%dir /usr/lib/cups
%dir /usr/lib/cups/daemon
/usr/lib/cups/daemon/cups-lpd
diff --git a/scheduler/Makefile b/scheduler/Makefile
index ce1606b1e..9086a3d40 100644
--- a/scheduler/Makefile
+++ b/scheduler/Makefile
@@ -3,7 +3,7 @@
#
# Scheduler Makefile for CUPS.
#
-# Copyright 2007-2013 by Apple Inc.
+# Copyright 2007-2014 by Apple Inc.
# Copyright 1997-2007 by Easy Software Products, all rights reserved.
#
# These coded instructions, statements, and computer programs are the
@@ -206,8 +206,9 @@ install-data:
$(INSTALL_DATA) org.cups.cupsd.path $(BUILDROOT)$(SYSTEMD_DIR); \
$(INSTALL_DATA) org.cups.cupsd.service $(BUILDROOT)$(SYSTEMD_DIR); \
$(INSTALL_DATA) org.cups.cupsd.socket $(BUILDROOT)$(SYSTEMD_DIR); \
- fi
- if test "x$(XINETD)" != x; then \
+ $(INSTALL_DATA) org.cups.cups-lpdAT.service $(BUILDROOT)$(SYSTEMD_DIR)/org.cups.cups-lpd@.service; \
+ $(INSTALL_DATA) org.cups.cups-lpd.socket $(BUILDROOT)$(SYSTEMD_DIR); \
+ elif test "x$(XINETD)" != x; then \
echo Installing xinetd configuration file for cups-lpd...; \
$(INSTALL_DIR) -m 755 $(BUILDROOT)$(XINETD); \
$(INSTALL_DATA) cups-lpd.xinetd $(BUILDROOT)$(XINETD)/cups-lpd; \
diff --git a/scheduler/org.cups.cups-lpd.socket b/scheduler/org.cups.cups-lpd.socket
new file mode 100644
index 000000000..dd5288c62
--- /dev/null
+++ b/scheduler/org.cups.cups-lpd.socket
@@ -0,0 +1,9 @@
+[Unit]
+Description=CUPS LPD Server Socket
+
+[Socket]
+ListenStream=515
+Accept=yes
+
+[Install]
+WantedBy=sockets.target
diff --git a/scheduler/org.cups.cups-lpdAT.service.in b/scheduler/org.cups.cups-lpdAT.service.in
new file mode 100644
index 000000000..5c7827340
--- /dev/null
+++ b/scheduler/org.cups.cups-lpdAT.service.in
@@ -0,0 +1,9 @@
+[Unit]
+Description=CUPS LPD server
+Documentation=man:cups-lpd(8)
+
+[Service]
+ExecStart=-@CUPS_SERVERBIN@/daemon/cups-lpd
+StandardInput=socket
+User=@CUPS_USER@
+
diff --git a/scheduler/org.cups.cupsd.service.in b/scheduler/org.cups.cupsd.service.in
index 43900167b..0a27c769f 100644
--- a/scheduler/org.cups.cupsd.service.in
+++ b/scheduler/org.cups.cupsd.service.in
@@ -1,5 +1,6 @@
[Unit]
Description=CUPS Scheduler
+Documentation=man:cupsd(8)
[Service]
ExecStart=@sbindir@/cupsd -l