2 # - update paths in manuals (create .in files and send upstream)
3 # - make /etc/pam.d independant of sysconfdir (configure-able option and send upstream)
4 # - syslog output (-s) writes two bytes of garbage to syslog instead of actual data:
5 # Mar 3 09:30:01 ravenous CROND[2528]: 4ΓΏ
8 %bcond_without inotify # without inotify support
9 %if "%{pld_release}" == "ac"
10 %bcond_with selinux # without SELinux support
11 %bcond_with audit # without audit support
13 %bcond_without selinux # without SELinux support
14 %bcond_without audit # without audit support
17 Summary: Cron daemon for executing programs at set times
21 License: MIT and BSD and GPL v2
23 Source0: https://fedorahosted.org/releases/c/r/cronie/%{name}-%{version}.tar.gz
24 # Source0-md5: 9b1d2ce6db8d1883e06635f437170657
26 Source2: cron.logrotate
27 Source3: cron.sysconfig
28 Source4: %{name}.crontab
30 Source6: %{name}.upstart
31 Source7: crond.service
32 Patch0: inotify-nosys.patch
33 Patch1: %{name}-nosyscrontab.patch
34 Patch2: sendmail-path.patch
35 Patch3: cronie-1.4.8-inotify-fix.patch
36 URL: https://fedorahosted.org/cronie/
37 %{?with_audit:BuildRequires: audit-libs-devel}
38 BuildRequires: autoconf
39 BuildRequires: automake
40 %{?with_selinux:BuildRequires: libselinux-devel}
41 BuildRequires: pam-devel
42 BuildRequires: rpm >= 4.4.9-56
43 BuildRequires: rpmbuild(macros) >= 1.626
44 Requires(post): fileutils
45 Requires(post,preun): /sbin/chkconfig
46 Requires(postun): /usr/sbin/groupdel
47 Requires(pre): /usr/bin/getgid
48 Requires(pre): /usr/sbin/groupadd
49 Requires: /bin/run-parts
50 Requires: psmisc >= 20.1
51 Requires: rc-scripts >= 0.4.3.0
52 Requires: systemd-units >= 37-0.10
53 %{?with_inotify:Requires: uname(release) >= 2.6.13}
55 Provides: crontabs = 1.7
56 Provides: group(crontab)
57 %if "%{pld_release}" == "th"
58 Provides: vixie-cron = 4.3-1
61 Obsoletes: cronie-systemd
63 %if "%{pld_release}" == "th"
64 Obsoletes: vixie-cron < 4.3-1
66 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
69 Cronie contains the standard UNIX daemon crond that runs specified
70 programs at scheduled times and related tools. It is based on the
71 original cron and has security and configuration enhancements like the
72 ability to use pam and SELinux.
75 Summary: Utility for running regular jobs
77 Provides: anacron = 2.4
78 Obsoletes: anacron <= 2.3
81 Anacron becames part of cronie. Anacron is used only for running
82 regular jobs. The default settings execute regular jobs by anacron,
83 however this could be overloaded in settings.
86 Summary: Upstart job description for Cronie
87 Summary(pl.UTF-8): Opis zadania Upstart dla Cronie
89 Requires: %{name} = %{version}-%{release}
90 Requires: upstart >= 0.6
93 Upstart job description for Cronie.
95 %description upstart -l pl.UTF-8
96 Opis zadania Upstart dla Cronie.
111 SYSCRONTAB=/etc/crontab \
112 SYS_CROND_DIR=/etc/cron.d \
113 --sysconfdir=/etc/cron \
115 --with%{!?with_selinux:out}-selinux \
116 --with%{!?with_audit:out}-audit \
117 --with%{!?with_inotify:out}-inotify \
125 rm -rf $RPM_BUILD_ROOT
126 install -d $RPM_BUILD_ROOT{/var/{log,spool/{ana,}cron},%{_mandir},%{systemdunitdir}}\
127 $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,sysconfig,init} \
128 $RPM_BUILD_ROOT%{_sysconfdir}/{cron,cron.{d,hourly,daily,weekly,monthly},pam.d}
132 DESTDIR=$RPM_BUILD_ROOT
134 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/crond
135 cp -a contrib/0anacron $RPM_BUILD_ROOT/etc/cron.hourly/0anacron
136 cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/cron
137 cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/cron
138 cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/crontab
139 cp -a %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/crond
140 cp -a %{SOURCE6} $RPM_BUILD_ROOT/etc/init/crond.conf
141 cp -a %{SOURCE7} $RPM_BUILD_ROOT%{systemdunitdir}/crond.service
143 touch $RPM_BUILD_ROOT/var/log/cron
145 cat > $RPM_BUILD_ROOT%{_sysconfdir}/cron/cron.allow << 'EOF'
146 # cron.allow This file describes the names of the users which are
147 # allowed to use the local cron daemon
151 cat > $RPM_BUILD_ROOT%{_sysconfdir}/cron/cron.deny << 'EOF'
152 # cron.deny This file describes the names of the users which are
153 # NOT allowed to use the local cron daemon
157 rm -rf $RPM_BUILD_ROOT
160 %groupadd -g 117 -r -f crontab
163 if [ ! -f /var/log/cron ]; then
164 install -m 660 -g crontab /dev/null /var/log/cron
166 /sbin/chkconfig --add crond
167 %service crond restart "Cron Daemon"
168 %systemd_post crond.service
171 if [ "$1" = "0" ]; then
173 /sbin/chkconfig --del crond
175 %systemd_preun crond.service
178 if [ "$1" = "0" ]; then
183 %triggerpostun -- cronie < 1.4.8-13
184 if [ -f /etc/sysconfig/cron ]; then
185 . /etc/sysconfig/cron
187 [ "$CROND_SYSLOG_RESULT" = "yes" ] && __CROND_ARGS="-s"
188 [ -n "$CROND_MAIL_PROG" ] && __CROND_ARGS="$__CROND_ARGS -m $CROND_MAIL_PROG"
189 if [ -n "$__CROND_ARGS" ]; then
190 %{__cp} -f /etc/sysconfig/cron{,.rpmsave}
191 echo >>/etc/sysconfig/cron
192 echo "# Added by rpm trigger" >>/etc/sysconfig/cron
193 echo "CROND_ARGS=\"$CROND_ARGS $__CROND_ARGS\"" >>/etc/sysconfig/cron
196 %systemd_trigger crond.service
198 %triggerun -- hc-cron,fcron,vixie-cron
199 # Prevent preun from crond from working
200 chmod a-x /etc/rc.d/init.d/crond
202 %triggerpostun -- hc-cron,fcron,vixie-cron
203 # Restore what triggerun removed
204 chmod 754 /etc/rc.d/init.d/crond
205 # reinstall crond init.d links, which could be different
206 /sbin/chkconfig --del crond
207 /sbin/chkconfig --add crond
213 %upstart_postun crond
216 %defattr(644,root,root,755)
217 %doc AUTHORS ChangeLog README
218 %attr(750,root,crontab) %dir %{_sysconfdir}/cron*
219 %attr(640,root,crontab) %config(noreplace,missingok) /etc/cron.d/crontab
220 %attr(640,root,crontab) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/cron/cron.allow
221 %attr(640,root,crontab) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/cron/cron.deny
222 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cron
223 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/crond
224 %attr(754,root,root) /etc/rc.d/init.d/crond
225 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/cron
226 %{systemdunitdir}/crond.service
227 %attr(755,root,root) %{_sbindir}/crond
228 %attr(2755,root,crontab) %{_bindir}/crontab
230 %{_mandir}/man8/crond.8*
231 %{_mandir}/man8/cron.8*
232 %{_mandir}/man5/crontab.5*
233 %{_mandir}/man1/crontab.1*
235 %attr(1730,root,crontab) /var/spool/cron
236 %attr(660,root,crontab) %ghost /var/log/cron
239 %defattr(644,root,root,755)
240 %attr(755,root,root) %{_sbindir}/anacron
241 %attr(755,root,root) %{_sysconfdir}/cron.hourly/0anacron
242 %{_mandir}/man5/anacrontab.5*
243 %{_mandir}/man8/anacron.8*
245 %attr(1730,root,crontab) /var/spool/anacron
247 %if "%{pld_release}" != "ti"
249 %defattr(644,root,root,755)
250 %config(noreplace) %verify(not md5 mtime size) /etc/init/crond.conf