[apt] convert to systemd
Tom Callaway
spot at fedoraproject.org
Fri Sep 9 15:05:12 UTC 2011
commit 5d0d77b69d8f79ee660f67e13ea19d524ab09f68
Author: Tom "spot" Callaway <tcallawa at redhat.com>
Date: Fri Sep 9 11:05:00 2011 -0400
convert to systemd
apt.service | 13 +++++++++++++
apt.spec | 50 +++++++++++++++++++++-----------------------------
2 files changed, 34 insertions(+), 29 deletions(-)
---
diff --git a/apt.service b/apt.service
new file mode 100644
index 0000000..c5d74bc
--- /dev/null
+++ b/apt.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=APT automatic updates.
+After=syslog.target
+
+[Service]
+Type=oneshot
+EnvironmentFile=-/etc/sysconfig/apt
+ExecStart=/bin/touch /var/lock/subsys/apt
+ExecStop=/bin/rm -f /var/lock/subsys/apt
+RemainAfterExit=yes
+
+[Install]
+WantedBy=multi-user.target
diff --git a/apt.spec b/apt.spec
index dcf5244..3b022ee 100644
--- a/apt.spec
+++ b/apt.spec
@@ -10,7 +10,7 @@
Summary: Debian's Advanced Packaging Tool with RPM support
Name: apt
Version: %{aptver}
-Release: 0.%{snapver}.1%{?dist}
+Release: 1.%{snapver}.1%{?dist}
Group: System Environment/Base
URL: http://apt-rpm.org/
# SourceLicense: GPLv2+ except lua/ which is MIT
@@ -37,13 +37,13 @@ Source52: gpg-check.lua
# "factory defaults"
Source150: default.conf
+Source200: apt.service
+
# Fix ppc mapping
Patch0: apt-0.5.15lorg3.2-ppc.patch
# band aid for mmap issues (#211254)
Patch1: apt-0.5.15lorg3.x-cache-corruption.patch
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
-
# TODO: verify the required minimum Python version
BuildRequires: python-devel >= 2.2
BuildRequires: swig
@@ -65,12 +65,11 @@ BuildRequires: %{comps}
# libxml2-devel, #183689
BuildRequires: pkgconfig
BuildRequires: lua-devel >= 5.1
+BuildRequires: systemd-units
Requires: gnupg
Requires: bzip2
Requires: system-release >= 4
-Requires(post): chkconfig
-Requires(post): ldconfig
-Requires(preun): chkconfig
+Requires(post): systemd-sysv
%if 0%{!?_with_groupinstall:1}
Obsoletes: %{name}-plugins-groupinstall < %{version}-%{release}
%endif
@@ -179,8 +178,6 @@ xsltproc -o rpmpriorities comps2prio.xsl %{comps}
%install
-rm -rf %{buildroot}
-
make install DESTDIR=%{buildroot} includedir=%{_includedir}/apt-pkg
%find_lang %{name}
@@ -217,7 +214,8 @@ install -pm 644 python/apt.py* %{buildroot}%{python_sitearch}/
touch %{buildroot}%{python_sitearch}/apt.pyo
# Nightly updater scripts & default config
-install -Dpm 755 contrib/apt-cron/apt.init %{buildroot}/%{_initrddir}/apt
+mkdir -p %{buildroot}%{_unitdir}
+install -Dpm 755 %{SOURCE200} %{buildroot}%{_unitdir}/apt.service
install -Dpm 755 contrib/apt-cron/apt.cron %{buildroot}/%{_sysconfdir}/cron.daily/apt.cron
install -Dpm 644 contrib/apt-cron/apt.sysconfig %{buildroot}/%{_sysconfdir}/sysconfig/apt
@@ -246,25 +244,21 @@ install -pm 644 contrib/log/log.conf %{buildroot}/%{_sysconfdir}/apt/apt.conf.d/
# nuke .la files
rm -f %{buildroot}%{_libdir}/*.la
-
-%clean
-rm -rf %{buildroot}
-
-%post
-/sbin/ldconfig
-/sbin/chkconfig --add apt
-
-%preun
-if [ $1 -eq 0 ] ; then
- %{_initrddir}/apt stop &>/dev/null || :
- /sbin/chkconfig --del apt
-fi
+%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
+%triggerun -- apt < 0.5.15lorg3.95-1.git522.1
+# Save the current service runlevel info
+# User must manually run systemd-sysv-convert --apply apt
+# to migrate them to systemd targets
+/usr/bin/systemd-sysv-convert --save apt >/dev/null 2>&1 ||:
+
+# Run these because the SysV package being removed won't do them
+/sbin/chkconfig --del apt >/dev/null 2>&1 || :
+/bin/systemctl try-restart apt.service >/dev/null 2>&1 || :
%files -f %{name}.lang
-%defattr(-, root, root)
%doc AUTHORS* COPYING* ABOUT* TODO comps2prio.xsl doc/examples/ contrib/
%doc ChangeLog
@@ -285,7 +279,7 @@ fi
%config(noreplace) %{_sysconfdir}/sysconfig/apt
%{_sysconfdir}/cron.daily/apt.cron
-%{_initrddir}/apt
+%{_unitdir}/apt.service
%{_bindir}/apt-cache
%{_bindir}/apt-cdrom
@@ -307,19 +301,16 @@ fi
%{_mandir}/man[58]/*.[58]*
%files devel
-%defattr(-,root,root,-)
%{_includedir}/apt-pkg/
%{_libdir}/libapt-pkg*.so
%{_libdir}/pkgconfig/libapt-pkg.pc
%files python
-%defattr(-,root,root,-)
%{python_sitearch}/_apt.so
%{python_sitearch}/apt.py*
%if 0%{?_with_groupinstall:1}
%files plugins-groupinstall
-%defattr(-,root,root,-)
# XXX not config?
%{_sysconfdir}/apt/apt.conf.d/apt-groupinstall.conf
%{_datadir}/apt/scripts/apt-groupinstall.lua
@@ -329,7 +320,6 @@ fi
%if 0%{!?_without_list:1}
%files plugins-list
-%defattr(-,root,root,-)
%config %{_sysconfdir}/apt/apt.conf.d/list-extras.conf
%config %{_sysconfdir}/apt/apt.conf.d/list-nodeps.conf
%{_datadir}/apt/scripts/list-extras.lua
@@ -338,13 +328,15 @@ fi
%if 0%{!?_without_log:1}
%files plugins-log
-%defattr(-,root,root,-)
%config %{_sysconfdir}/apt/apt.conf.d/log.conf
%{_datadir}/apt/scripts/log.lua
%endif
%changelog
+* Fri Sep 9 2011 Tom Callaway <spot at fedoraproject.org> - 0.5.15lorg3.95-1.git522.1
+- convert to systemd
+
* Wed Apr 13 2011 Panu Matilainen <pmatilai at redhat.com> - 0.5.15lorg3.95-0.git522.1
- new upstream snapshot that has an actual chance of working...
- drop now unnecessary pile of patches
More information about the scm-commits
mailing list