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 Patch0: inotify-nosys.patch
32 Patch1: %{name}-nosyscrontab.patch
33 Patch2: sendmail-path.patch
34 URL: https://fedorahosted.org/cronie/
35 %{?with_audit:BuildRequires: audit-libs-devel}
36 BuildRequires: autoconf
37 BuildRequires: automake
38 %{?with_selinux:BuildRequires: libselinux-devel}
39 BuildRequires: pam-devel
40 BuildRequires: rpm >= 4.4.9-56
41 BuildRequires: rpmbuild(macros) >= 1.561
42 Requires(post): fileutils
43 Requires(post,preun): /sbin/chkconfig
44 Requires(postun): /usr/sbin/groupdel
45 Requires(pre): /usr/bin/getgid
46 Requires(pre): /usr/sbin/groupadd
47 Requires: /bin/run-parts
48 Requires: psmisc >= 20.1
49 Requires: rc-scripts >= 0.4.3.0
50 %{?with_inotify:Requires: uname(release) >= 2.6.13}
52 Provides: crontabs = 1.7
53 Provides: group(crontab)
54 %if "%{pld_release}" == "th"
55 Provides: vixie-cron = 4.4-1
59 %if "%{pld_release}" == "th"
60 Obsoletes: vixie-cron < 4.4-1
62 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
65 Cronie contains the standard UNIX daemon crond that runs specified
66 programs at scheduled times and related tools. It is based on the
67 original cron and has security and configuration enhancements like the
68 ability to use pam and SELinux.
71 Summary: Utility for running regular jobs
73 Provides: anacron = 2.4
74 Obsoletes: anacron <= 2.3
77 Anacron becames part of cronie. Anacron is used only for running
78 regular jobs. The default settings execute regular jobs by anacron,
79 however this could be overloaded in settings.
82 Summary: Upstart job description for Cronie
83 Summary(pl.UTF-8): Opis zadania Upstart dla Cronie
85 Requires: %{name} = %{version}-%{release}
86 Requires: upstart >= 0.6
89 Upstart job description for Cronie.
91 %description upstart -l pl.UTF-8
92 Opis zadania Upstart dla Cronie.
106 SYSCRONTAB=/etc/crontab \
107 SYS_CROND_DIR=/etc/cron.d \
108 --sysconfdir=/etc/cron \
110 --with%{!?with_selinux:out}-selinux \
111 --with%{!?with_audit:out}-audit \
112 --with%{!?with_inotify:out}-inotify \
120 rm -rf $RPM_BUILD_ROOT
121 install -d $RPM_BUILD_ROOT{/var/{log,spool/{ana,}cron},%{_mandir}} \
122 $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,sysconfig,init} \
123 $RPM_BUILD_ROOT%{_sysconfdir}/{cron,cron.{d,hourly,daily,weekly,monthly},pam.d}
127 DESTDIR=$RPM_BUILD_ROOT
129 install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/crond
130 cp -a contrib/0anacron $RPM_BUILD_ROOT/etc/cron.hourly/0anacron
131 cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/cron
132 cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/cron
133 cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/crontab
134 cp -a %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/crond
135 cp -a %{SOURCE6} $RPM_BUILD_ROOT/etc/init/crond.conf
137 touch $RPM_BUILD_ROOT/var/log/cron
139 cat > $RPM_BUILD_ROOT%{_sysconfdir}/cron/cron.allow << 'EOF'
140 # cron.allow This file describes the names of the users which are
141 # allowed to use the local cron daemon
145 cat > $RPM_BUILD_ROOT%{_sysconfdir}/cron/cron.deny << 'EOF'
146 # cron.deny This file describes the names of the users which are
147 # NOT allowed to use the local cron daemon
151 rm -rf $RPM_BUILD_ROOT
154 %groupadd -g 117 -r -f crontab
157 if [ ! -f /var/log/cron ]; then
158 install -m 660 -g crontab /dev/null /var/log/cron
160 /sbin/chkconfig --add crond
161 %service crond restart "Cron Daemon"
164 if [ "$1" = "0" ]; then
166 /sbin/chkconfig --del crond
170 if [ "$1" = "0" ]; then
174 %triggerun -- hc-cron,fcron,vixie-cron
175 # Prevent preun from crond from working
176 chmod a-x /etc/rc.d/init.d/crond
178 %triggerpostun -- hc-cron,fcron,vixie-cron
179 # Restore what triggerun removed
180 chmod 754 /etc/rc.d/init.d/crond
181 # reinstall crond init.d links, which could be different
182 /sbin/chkconfig --del crond
183 /sbin/chkconfig --add crond
189 %upstart_postun crond
192 %defattr(644,root,root,755)
193 %doc AUTHORS ChangeLog README
194 %attr(750,root,crontab) %dir %{_sysconfdir}/cron*
195 %attr(640,root,crontab) %config(noreplace,missingok) /etc/cron.d/crontab
196 %attr(640,root,crontab) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/cron/cron.allow
197 %attr(640,root,crontab) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/cron/cron.deny
198 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cron
199 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/crond
200 %attr(754,root,root) /etc/rc.d/init.d/crond
201 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/cron
202 %attr(755,root,root) %{_sbindir}/crond
203 %attr(2755,root,crontab) %{_bindir}/crontab
205 %{_mandir}/man8/crond.8*
206 %{_mandir}/man8/cron.8*
207 %{_mandir}/man5/crontab.5*
208 %{_mandir}/man1/crontab.1*
210 %attr(1730,root,crontab) /var/spool/cron
211 %attr(660,root,crontab) %ghost /var/log/cron
214 %defattr(644,root,root,755)
215 %attr(755,root,root) %{_sbindir}/anacron
216 %attr(755,root,root) %{_sysconfdir}/cron.hourly/0anacron
217 %{_mandir}/man5/anacrontab.5*
218 %{_mandir}/man8/anacron.8*
220 %attr(1730,root,crontab) /var/spool/anacron
222 %if "%{pld_release}" != "ti"
224 %defattr(644,root,root,755)
225 %config(noreplace) %verify(not md5 mtime size) /etc/init/crond.conf