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)
6 %bcond_without inotify # without inotify support
7 %if "%{pld_release}" == "ac"
8 %bcond_with selinux # without SELinux support
9 %bcond_with audit # without audit support
11 %bcond_without selinux # without SELinux support
12 %bcond_without audit # without audit support
15 Summary: Cron daemon for executing programs at set times
19 License: MIT and BSD and GPLv2
21 Source0: %{name}-%{version}.tar.gz
22 # Source0-md5: 9c089d2035b9fa8263bc71da3eb31cdd
24 Source2: cron.logrotate
25 Source3: cron.sysconfig
26 Source4: %{name}.crontab
28 Patch0: inotify-nosys.patch
29 Patch1: %{name}-nosyscrontab.patch
30 URL: https://fedorahosted.org/cronie/
31 %{?with_audit:BuildRequires: audit-libs-devel}
32 BuildRequires: autoconf
33 BuildRequires: automake
34 %{?with_selinux:BuildRequires: libselinux-devel}
35 BuildRequires: pam-devel
36 BuildRequires: rpm >= 4.4.9-56
37 BuildRequires: rpmbuild(macros) >= 1.268
38 Requires(post): fileutils
39 Requires(post,preun): /sbin/chkconfig
40 Requires(post,preun): rc-scripts
41 Requires(postun): /usr/sbin/groupdel
42 Requires(pre): /usr/bin/getgid
43 Requires(pre): /usr/sbin/groupadd
44 Requires: /bin/run-parts
45 Requires: /sbin/chkconfig
46 Requires: psmisc >= 20.1
48 %{?with_inotify:Requires: uname(release) >= 2.6.13}
50 Provides: crontabs = 1.7
51 Provides: group(crontab)
52 %if "%{pld_release}" == "th"
53 Provides: vixie-cron = 4:4.4
57 %if "%{pld_release}" == "th"
58 Obsoletes: vixie-cron <= 4:4.3
60 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
63 Cronie contains the standard UNIX daemon crond that runs specified
64 programs at scheduled times and related tools. It is based on the
65 original cron and has security and configuration enhancements like the
66 ability to use pam and SELinux.
69 Summary: Utility for running regular jobs
71 Provides: anacron = 2.4
72 Obsoletes: anacron <= 2.3
75 Anacron becames part of cronie. Anacron is used only for running
76 regular jobs. The default settings execute regular jobs by anacron,
77 however this could be overloaded in settings.
90 SYSCRONTAB=/etc/crontab \
91 SYS_CROND_DIR=/etc/cron.d \
92 --sysconfdir=/etc/cron \
94 --with%{!?with_selinux:out}-selinux \
95 --with%{!?with_audit:out}-audit \
96 --with%{!?with_inotify:out}-inotify \
102 rm -rf $RPM_BUILD_ROOT
103 install -d $RPM_BUILD_ROOT{/var/{log,spool/{ana,}cron},%{_mandir}} \
104 $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,sysconfig} \
105 $RPM_BUILD_ROOT%{_sysconfdir}/{cron,cron.{d,hourly,daily,weekly,monthly},pam.d}
109 DESTDIR=$RPM_BUILD_ROOT
111 install contrib/0anacron $RPM_BUILD_ROOT/etc/cron.hourly/0anacron
112 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/crond
113 install %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/cron
114 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/cron
115 install %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/crontab
116 install %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/crond
118 for a in fi fr id ja ko pl; do
119 if test -f $a/man1/crontab.1; then
120 install -d $RPM_BUILD_ROOT%{_mandir}/$a/man1
121 install $a/man1/crontab.1 $RPM_BUILD_ROOT%{_mandir}/$a/man1
123 if test -f $a/man5/crontab.5; then
124 install -d $RPM_BUILD_ROOT%{_mandir}/$a/man5
125 install $a/man5/crontab.5 $RPM_BUILD_ROOT%{_mandir}/$a/man5
127 if test -f $a/man8/cron.8; then
128 install -d $RPM_BUILD_ROOT%{_mandir}/$a/man8
129 install $a/man8/cron.8 $RPM_BUILD_ROOT%{_mandir}/$a/man8
133 touch $RPM_BUILD_ROOT/var/log/cron
135 cat > $RPM_BUILD_ROOT%{_sysconfdir}/cron/cron.allow << 'EOF'
136 # cron.allow This file describes the names of the users which are
137 # allowed to use the local cron daemon
141 cat > $RPM_BUILD_ROOT%{_sysconfdir}/cron/cron.deny << 'EOF'
142 # cron.deny This file describes the names of the users which are
143 # NOT allowed to use the local cron daemon
147 rm -rf $RPM_BUILD_ROOT
150 %groupadd -g 117 -r -f crontab
153 /sbin/chkconfig --add crond
156 chgrp crontab /var/log/cron
157 chmod 660 /var/log/cron
158 %service crond restart "Cron Daemon"
161 if [ "$1" = "0" ]; then
163 /sbin/chkconfig --del crond
167 if [ "$1" = "0" ]; then
171 %triggerpostun -- hc-cron
172 # reinstall crond init.d links, which could be different
173 /sbin/chkconfig --del crond
174 /sbin/chkconfig --add crond
176 %triggerun -- vixie-cron
177 # Prevent preun from crond from working
178 chmod a-x /etc/rc.d/init.d/crond
180 %triggerpostun -- vixie-cron
181 # Restore what triggerun removed
182 chmod 754 /etc/rc.d/init.d/crond
183 /sbin/chkconfig --add crond
186 %defattr(644,root,root,755)
187 %doc AUTHORS ChangeLog README
188 %attr(750,root,crontab) %dir %{_sysconfdir}/cron*
189 %attr(640,root,crontab) %config(noreplace,missingok) /etc/cron.d/crontab
190 %attr(640,root,crontab) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/cron/cron.allow
191 %attr(640,root,crontab) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/cron/cron.deny
192 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cron
193 %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/crond
194 %attr(754,root,root) /etc/rc.d/init.d/crond
195 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/cron
196 %attr(755,root,root) %{_sbindir}/crond
197 %attr(2755,root,crontab) %{_bindir}/crontab
199 %{_mandir}/man8/crond.8*
200 %{_mandir}/man8/cron.8*
201 %{_mandir}/man5/crontab.5*
202 %{_mandir}/man1/crontab.1*
204 %attr(1730,root,crontab) /var/spool/cron
205 %attr(660,root,crontab) %ghost /var/log/cron
208 %defattr(644,root,root,755)
209 %attr(755,root,root) %{_sbindir}/anacron
210 %attr(755,root,root) %{_sysconfdir}/cron.hourly/0anacron
211 %{_mandir}/man5/anacrontab.5*
212 %{_mandir}/man8/anacron.8*
214 %attr(1730,root,crontab) /var/spool/anacron