X-Git-Url: http://git.pld-linux.org/?p=packages%2Fcronie.git;a=blobdiff_plain;f=cronie.spec;h=f59eda879231750142c9a28e511c064e8e381e80;hp=4af4b6e9f71d171d7d00e20472986a230de9d506;hb=ab5bdbf049b27cadc3d4672388a0abd51dfc3c73;hpb=a081c7fed944c7c877574c6aec364ee7a94910d0 diff --git a/cronie.spec b/cronie.spec index 4af4b6e..f59eda8 100644 --- a/cronie.spec +++ b/cronie.spec @@ -7,8 +7,8 @@ # Conditional build: %bcond_without inotify # without inotify support %if "%{pld_release}" == "ac" -%bcond_with selinux # without SELinux support -%bcond_with audit # without audit support +%bcond_with selinux # with SELinux support +%bcond_with audit # with audit support %else %bcond_without selinux # without SELinux support %bcond_without audit # without audit support @@ -16,12 +16,12 @@ Summary: Cron daemon for executing programs at set times Name: cronie -Version: 1.4.8 -Release: 7 +Version: 1.4.12 +Release: 1 License: MIT and BSD and GPL v2 Group: Daemons Source0: https://fedorahosted.org/releases/c/r/cronie/%{name}-%{version}.tar.gz -# Source0-md5: 9b1d2ce6db8d1883e06635f437170657 +# Source0-md5: 199db91e514a4d75e3222d69874b132f Source1: %{name}.init Source2: cron.logrotate Source3: cron.sysconfig @@ -30,8 +30,7 @@ Source5: %{name}.pam Source6: %{name}.upstart Source7: crond.service Patch0: inotify-nosys.patch -Patch1: %{name}-nosyscrontab.patch -Patch2: sendmail-path.patch +Patch1: sendmail-path.patch URL: https://fedorahosted.org/cronie/ %{?with_audit:BuildRequires: audit-libs-devel} BuildRequires: autoconf @@ -39,7 +38,7 @@ BuildRequires: automake %{?with_selinux:BuildRequires: libselinux-devel} BuildRequires: pam-devel BuildRequires: rpm >= 4.4.9-56 -BuildRequires: rpmbuild(macros) >= 1.625 +BuildRequires: rpmbuild(macros) >= 1.647 Requires(post): fileutils Requires(post,preun): /sbin/chkconfig Requires(postun): /usr/sbin/groupdel @@ -48,6 +47,10 @@ Requires(pre): /usr/sbin/groupadd Requires: /bin/run-parts Requires: psmisc >= 20.1 Requires: rc-scripts >= 0.4.3.0 +%if "%{pld_release}" != "ac" +Requires(post,preun,postun): systemd-units >= 38 +Requires: systemd-units >= 38} +%endif %{?with_inotify:Requires: uname(release) >= 2.6.13} Provides: crondaemon Provides: crontabs = 1.7 @@ -56,6 +59,7 @@ Provides: group(crontab) Provides: vixie-cron = 4.3-1 %endif Obsoletes: crondaemon +Obsoletes: cronie-systemd Obsoletes: crontabs %if "%{pld_release}" == "th" Obsoletes: vixie-cron < 4.3-1 @@ -92,20 +96,10 @@ Upstart job description for Cronie. %description upstart -l pl.UTF-8 Opis zadania Upstart dla Cronie. -%package systemd -Summary: systemd units for cronie -Group: Base -Requires: %{name} = %{version}-%{release} -Requires: systemd-units >= 37-0.10 - -%description systemd -systemd units for cronie. - %prep %setup -q %patch0 -p1 %patch1 -p1 -%patch2 -p1 %build %{__aclocal} @@ -116,11 +110,15 @@ systemd units for cronie. SYSCRONTAB=/etc/crontab \ SYS_CROND_DIR=/etc/cron.d \ --sysconfdir=/etc/cron \ + --with-editor=/bin/vi \ --with-pam \ --with%{!?with_selinux:out}-selinux \ --with%{!?with_audit:out}-audit \ --with%{!?with_inotify:out}-inotify \ + --disable-syscrontab \ +%if "%{cc_version}" >= "3.4" --enable-pie \ +%endif --enable-relro \ --enable-anacron @@ -128,7 +126,7 @@ systemd units for cronie. %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{/var/{log,spool/{ana,}cron},%{_mandir},/lib/systemd/system}\ +install -d $RPM_BUILD_ROOT{/var/{log,spool/{ana,}cron},%{_mandir},%{systemdunitdir}}\ $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,sysconfig,init} \ $RPM_BUILD_ROOT%{_sysconfdir}/{cron,cron.{d,hourly,daily,weekly,monthly},pam.d} @@ -136,15 +134,21 @@ install -d $RPM_BUILD_ROOT{/var/{log,spool/{ana,}cron},%{_mandir},/lib/systemd/s pamdir=/etc/pam.d \ DESTDIR=$RPM_BUILD_ROOT +cp -p %{SOURCE5} crond.pam + +%if %{without audit} +# remove recording user's login uid to the process attribute +%{__sed} -i -e '/pam_loginuid.so/d' crond.pam +%endif + install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/crond cp -a contrib/0anacron $RPM_BUILD_ROOT/etc/cron.hourly/0anacron cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/cron cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/cron cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/crontab -cp -a %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/crond +cp -a crond.pam $RPM_BUILD_ROOT/etc/pam.d/crond cp -a %{SOURCE6} $RPM_BUILD_ROOT/etc/init/crond.conf -cp -a %{SOURCE7} $RPM_BUILD_ROOT%{systemdunitdir}/cronie.service -ln -s cronie.service $RPM_BUILD_ROOT%{systemdunitdir}/crond.service +cp -a %{SOURCE7} $RPM_BUILD_ROOT%{systemdunitdir}/crond.service touch $RPM_BUILD_ROOT/var/log/cron @@ -171,23 +175,41 @@ if [ ! -f /var/log/cron ]; then fi /sbin/chkconfig --add crond %service crond restart "Cron Daemon" +%systemd_post crond.service %preun if [ "$1" = "0" ]; then %service crond stop /sbin/chkconfig --del crond fi +%systemd_preun crond.service %postun if [ "$1" = "0" ]; then %groupremove crontab fi +%systemd_reload + +%triggerpostun -- cronie < 1.4.8-13 +if [ -f /etc/sysconfig/cron ]; then + . /etc/sysconfig/cron + __CROND_ARGS= + [ "$CROND_SYSLOG_RESULT" = "yes" ] && __CROND_ARGS="-s" + [ -n "$CROND_MAIL_PROG" ] && __CROND_ARGS="$__CROND_ARGS -m $CROND_MAIL_PROG" + if [ -n "$__CROND_ARGS" ]; then + %{__cp} -f /etc/sysconfig/cron{,.rpmsave} + echo >>/etc/sysconfig/cron + echo "# Added by rpm trigger" >>/etc/sysconfig/cron + echo "CROND_ARGS=\"$CROND_ARGS $__CROND_ARGS\"" >>/etc/sysconfig/cron + fi +fi +%systemd_trigger crond.service -%triggerun -- hc-cron,fcron,vixie-cron +%triggerun -- hc-cron,fcron,vixie-cron < 4.3-1 # Prevent preun from crond from working chmod a-x /etc/rc.d/init.d/crond -%triggerpostun -- hc-cron,fcron,vixie-cron +%triggerpostun -- hc-cron,fcron,vixie-cron < 4.3-1 # Restore what triggerun removed chmod 754 /etc/rc.d/init.d/crond # reinstall crond init.d links, which could be different @@ -200,16 +222,6 @@ chmod 754 /etc/rc.d/init.d/crond %postun upstart %upstart_postun crond -%post systemd -%systemd_post -%systemd_enable cronie.service - -%preun systemd -%systemd_preun cronie.service - -%postun systemd -%systemd_postun cronie.service - %files %defattr(644,root,root,755) %doc AUTHORS ChangeLog README @@ -221,6 +233,7 @@ chmod 754 /etc/rc.d/init.d/crond %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/crond %attr(754,root,root) /etc/rc.d/init.d/crond %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/cron +%{systemdunitdir}/crond.service %attr(755,root,root) %{_sbindir}/crond %attr(2755,root,crontab) %{_bindir}/crontab @@ -241,13 +254,8 @@ chmod 754 /etc/rc.d/init.d/crond %attr(1730,root,crontab) /var/spool/anacron -%if "%{pld_release}" != "ti" +%if "%{pld_release}" == "th" %files upstart %defattr(644,root,root,755) %config(noreplace) %verify(not md5 mtime size) /etc/init/crond.conf %endif - -%files systemd -%defattr(644,root,root,755) -%{systemdunitdir}/crond.service -%{systemdunitdir}/cronie.service