[irda-utils] migrate to systemd

Dmitry Butskoy buc at fedoraproject.org
Mon Jul 18 14:31:22 UTC 2011


commit dd367ec2c30a43d049a1d45f557c7369de499c70
Author: Dmitry Butskoy <Dmitry at Butskoy.name>
Date:   Mon Jul 18 18:30:51 2011 +0400

    migrate to systemd

 irda-utils.spec |   39 ++++++++++++++++++++++++++-------------
 irda.service    |   16 ++++++++++++++++
 irda.sysconfig  |    8 ++++++++
 3 files changed, 50 insertions(+), 13 deletions(-)
---
diff --git a/irda-utils.spec b/irda-utils.spec
index 089d59d..01f5b63 100644
--- a/irda-utils.spec
+++ b/irda-utils.spec
@@ -1,7 +1,7 @@
 Summary:         Utilities for infrared communication between devices
 Name:            irda-utils
 Version:         0.9.18
-Release:         12%{?dist}
+Release:         13%{?dist}
 Url:             http://irda.sourceforge.net
 License:         GPLv2+
 Group:           Applications/System
@@ -9,6 +9,8 @@ BuildRoot:       %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 ExcludeArch:     s390 s390x
 Source0: http://downloads.sourceforge.net/irda/%{name}/%{version}/%{name}-%{version}.tar.gz
 Source1: irda.init
+Source2: irda.service
+Source3: irda.sysconfig
 Patch1: irda-utils-0.9.17-rootonly.patch
 Patch2: irda-utils-0.9.15-rh1.patch
 Patch3: irda-utils-0.9.16-io.patch
@@ -16,11 +18,12 @@ Patch4: irda-utils-0.9.17-makefile.patch
 Patch5: irda-utils-0.9.18-smcdisable.patch
 Patch6: irda-utils-0.9.18-root.patch
 Patch7: irda-utils-0.9.18-man.patch
-BuildRequires:   glib2-devel
+BuildRequires: glib2-devel
+BuildRequires: systemd-units
 
-Requires(post): /sbin/chkconfig
-Requires(preun): /sbin/chkconfig, /sbin/service
-Requires(postun): /sbin/service
+Requires(post): systemd-units
+Requires(preun): systemd-units
+Requires(postun): systemd-units
 
 
 %description
@@ -62,15 +65,18 @@ make all RPM_OPT_FLAGS="$RPM_OPT_FLAGS" ROOT="$RPM_BUILD_ROOT" \
 %install
 rm -rf $RPM_BUILD_ROOT
 
-for dir in %{_sbindir} %{_bindir} %{_initddir} %{_sysconfdir}/sysconfig
+for dir in %{_sbindir} %{_bindir} %{_initrddir} %{_sysconfdir}/sysconfig
 do
     install -d $RPM_BUILD_ROOT$dir
 done
 
 make install  ROOT="$RPM_BUILD_ROOT" MANDIR="$RPM_BUILD_ROOT/%{_mandir}"
 
-install -p -m755 %{SOURCE1} $RPM_BUILD_ROOT/%{_initrddir}/irda
-chmod -x $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/irda
+#install -p -m755 %{SOURCE1} $RPM_BUILD_ROOT/%{_initrddir}/irda
+#chmod -x $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/irda
+install -d $RPM_BUILD_ROOT%{_unitdir}
+install -p -m644 %{SOURCE2} $RPM_BUILD_ROOT%{_unitdir}/irda.service
+install -p -m644 %{SOURCE3} $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/irda
 
 rm -f $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/network-scripts/ifcfg-irlan0
 
@@ -89,19 +95,22 @@ rm -rf $RPM_BUILD_ROOT
 
 
 %post
-/sbin/chkconfig --add irda
+if [ $1 = 1 ]; then
+    /bin/systemctl daemon-reload >/dev/null 2>&1 || :
+fi
 
 
 %preun
 if [ $1 = 0 ]; then
-   /sbin/service irda stop >/dev/null 2>&1
-   /sbin/chkconfig --del irda
+    /bin/systemctl --no-reload disable irda.service >/dev/null 2>&1 || :
+    /bin/systemctl stop irda.service >/dev/null 2>&1 || :
 fi
 
 
 %postun
+/bin/systemctl daemon-reload >/dev/null 2>&1 || :
 if [ $1 != 0 ]; then
-   /sbin/service irda condrestart >/dev/null 2>&1
+    /bin/systemctl try-restart irda.service >/dev/null 2>&1 || :
 fi
 
 
@@ -110,12 +119,16 @@ fi
 %{_sbindir}/*
 %{_bindir}/*
 %{_mandir}/*/*
-%{_initddir}/irda
+#%{_initrddir}/irda
+%{_unitdir}/*
 %config(noreplace) %{_sysconfdir}/sysconfig/irda
 %doc README* etc/ifcfg-irlan0 etc/modprobe.conf.irda
 
 
 %changelog
+* Mon Jul 18 2011 Dmitry Butskoy <Dmitry at Butskoy.name> - 0.9.18-13
+- migrate from SysV to Systemd init system (#694940)
+
 * Fri Jul 15 2011 Dmitry Butskoy <Dmitry at Butskoy.name> - 0.9.18-12
 - spec file cleanup
 - add own init script instead of huge patched original one
diff --git a/irda.service b/irda.service
new file mode 100644
index 0000000..ad48ef4
--- /dev/null
+++ b/irda.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Irda Support
+After=syslog.target
+
+[Service]
+Type=forking
+PIDFile=/var/run/irattach.pid
+EnvironmentFile=-/etc/sysconfig/irda
+ExecStartPre=-/sbin/modprobe -qab ircomm-tty irtty-sir irnet
+ExecStart=/usr/sbin/irattach ${DEVICE} ${OPTIONS}
+StandardOutput=syslog
+StandardError=syslog
+
+
+[Install]
+WantedBy=multi-user.target
diff --git a/irda.sysconfig b/irda.sysconfig
new file mode 100644
index 0000000..db86728
--- /dev/null
+++ b/irda.sysconfig
@@ -0,0 +1,8 @@
+# Either a tty name, or IrDA interface name, or FIR module name.
+# See irattach(8) for more info
+DEVICE=/dev/ttyS2
+
+# `-s' starts discovery of remote devices
+# `-d dongle' attaches an additional dongle driver `dobgle' to the IrDA port
+#OPTIONS="-s -d actisys+"
+OPTIONS="-s"


More information about the scm-commits mailing list