From 1d513e059b5955bb477efb100e1c9fc89e62aadc Mon Sep 17 00:00:00 2001 From: William Douglas Date: Thu, 21 Jun 2012 22:05:43 -0700 Subject: add systemd unit files Signed-off-by: William Douglas --- packaging/99-android-logger.rules | 3 +++ packaging/dlog-main.service | 11 ++++++++++ packaging/dlog-radio.service | 11 ++++++++++ packaging/dlog-system.service | 11 ++++++++++ packaging/dlog.changes | 2 ++ packaging/dlog.spec | 46 +++++++++++++++++++++++++++++++++++++-- 6 files changed, 82 insertions(+), 2 deletions(-) create mode 100644 packaging/99-android-logger.rules create mode 100644 packaging/dlog-main.service create mode 100644 packaging/dlog-radio.service create mode 100644 packaging/dlog-system.service create mode 100644 packaging/dlog.changes diff --git a/packaging/99-android-logger.rules b/packaging/99-android-logger.rules new file mode 100644 index 0000000..ef944c3 --- /dev/null +++ b/packaging/99-android-logger.rules @@ -0,0 +1,3 @@ +# set proper permissions on the android logger device nodes in +# /dev - make them writable by everyone, but not readable +KERNEL=="log_events|log_main|log_radio|log_system", GROUP="log", MODE="0642" \ No newline at end of file diff --git a/packaging/dlog-main.service b/packaging/dlog-main.service new file mode 100644 index 0000000..6233f2d --- /dev/null +++ b/packaging/dlog-main.service @@ -0,0 +1,11 @@ + +[Unit] +Description=Start the dlog service +DefaultDependencies=no + +[Service] +ExecStart=/usr/bin/dlogutil -v time *:W + +[Install] +WantedBy=multi-user.target + diff --git a/packaging/dlog-radio.service b/packaging/dlog-radio.service new file mode 100644 index 0000000..584760d --- /dev/null +++ b/packaging/dlog-radio.service @@ -0,0 +1,11 @@ + +[Unit] +Description=Start the dlog service +DefaultDependencies=no + +[Service] +ExecStart=/usr/bin/dlogutil -b radio -v time *:W + +[Install] +WantedBy=multi-user.target + diff --git a/packaging/dlog-system.service b/packaging/dlog-system.service new file mode 100644 index 0000000..6f63e42 --- /dev/null +++ b/packaging/dlog-system.service @@ -0,0 +1,11 @@ + +[Unit] +Description=Start the dlog service +DefaultDependencies=no + +[Service] +ExecStart=/usr/bin/dlogutil -b system -v time *:W + +[Install] +WantedBy=multi-user.target + diff --git a/packaging/dlog.changes b/packaging/dlog.changes new file mode 100644 index 0000000..18fe4ed --- /dev/null +++ b/packaging/dlog.changes @@ -0,0 +1,2 @@ +* Fri Jun 22 2012 William Douglas - 0.4.1 +- Add system unit files diff --git a/packaging/dlog.spec b/packaging/dlog.spec index 6609e38..8f3ca6a 100644 --- a/packaging/dlog.spec +++ b/packaging/dlog.spec @@ -5,10 +5,18 @@ Release: 5.1 Group: System/Main License: Apache-2.0 Source0: %{name}-%{version}.tar.gz +Source1: packaging/99-android-logger.rules +Source101: packaging/dlog-main.service +Source102: packaging/dlog-radio.service +Source103: packaging/dlog-system.service Source1001: packaging/dlog.manifest + Requires(post): /sbin/ldconfig +Requires(post): /usr/bin/systemctl +Requires(post): /usr/bin/vconftool Requires(postun): /sbin/ldconfig - +Requires(postun): /usr/bin/systemctl +Requires(preun): /usr/bin/systemctl %description dlog API library @@ -43,7 +51,6 @@ utilities for print log data %prep %setup -q - %build cp %{SOURCE1001} . %autogen @@ -61,8 +68,36 @@ rm -f %{buildroot}/%{_sysconfdir}/etc/rc.d/rc5.d/S05dlog ln -s ../etc/rc.d/init.d/dlog.sh %{buildroot}/%{_sysconfdir}/rc.d/rc3.d/S05dlog ln -s ../etc/rc.d/init.d/dlog.sh %{buildroot}/%{_sysconfdir}/rc.d/rc5.d/S05dlog +mkdir -p %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants +mkdir -p %{buildroot}%{_libdir}/udev/rules.d + +install -m 0644 %SOURCE101 %{buildroot}%{_libdir}/systemd/system/ +install -m 0644 %SOURCE102 %{buildroot}%{_libdir}/systemd/system/ +install -m 0644 %SOURCE103 %{buildroot}%{_libdir}/systemd/system/ +install -m 0644 %SOURCE1 %{buildroot}%{_libdir}/udev/rules.d/ + +ln -s ../dlog-main.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/dlog-main.service +ln -s ../dlog-radio.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/dlog-radio.service +ln -s ../dlog-system.service %{buildroot}%{_libdir}/systemd/system/multi-user.target.wants/dlog-system.service + + +%preun -n dlogutil +if [ $1 == 0 ]; then + systemctl stop dlog-main.service + systemctl stop dlog-radio.service + systemctl stop dlog-system.service +fi %post -n dlogutil +systemctl daemon-reload +if [ $1 == 1 ]; then + systemctl restart dlog-main.service + systemctl restart dlog-radio.service + systemctl restart dlog-system.service +fi + +%postun -n dlogutil +systemctl daemon-reload %post -n libdlog -p /sbin/ldconfig @@ -75,6 +110,13 @@ ln -s ../etc/rc.d/init.d/dlog.sh %{buildroot}/%{_sysconfdir}/rc.d/rc5.d/S05dlog %{_sysconfdir}/rc.d/init.d/dlog.sh %{_sysconfdir}/rc.d/rc3.d/S05dlog %{_sysconfdir}/rc.d/rc5.d/S05dlog +%{_libdir}/systemd/system/dlog-main.service +%{_libdir}/systemd/system/dlog-radio.service +%{_libdir}/systemd/system/dlog-system.service +%{_libdir}/systemd/system/multi-user.target.wants/dlog-main.service +%{_libdir}/systemd/system/multi-user.target.wants/dlog-radio.service +%{_libdir}/systemd/system/multi-user.target.wants/dlog-system.service +%{_libdir}/udev/rules.d/99-android-logger.rules %files -n libdlog %manifest dlog.manifest -- cgit v1.2.3