- rel 7; no /etc/crontab processing
[packages/cronie.git] / cronie.spec
CommitLineData
955f0d7d
ER
1# TODO
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)
9088c091
AM
4#
5# Conditional build:
946518b7 6%bcond_without inotify # without inotify support
0d2f2c46
ER
7%if "%{pld_release}" == "ac"
8%bcond_with selinux # without SELinux support
9%bcond_with audit # without audit support
10%else
11%bcond_without selinux # without SELinux support
828712ad 12%bcond_without audit # without audit support
0d2f2c46
ER
13%endif
14
9088c091
AM
15Summary: Cron daemon for executing programs at set times
16Name: cronie
17Version: 1.4.1
9c2aa177 18Release: 7
9088c091
AM
19License: MIT and BSD and GPLv2
20Group: Daemons
836fe967 21Source0: %{name}-%{version}.tar.gz
9088c091
AM
22# Source0-md5: 9c089d2035b9fa8263bc71da3eb31cdd
23Source1: %{name}.init
24Source2: cron.logrotate
25Source3: cron.sysconfig
26Source4: %{name}.crontab
27Source5: %{name}.pam
f440f0d0 28Patch0: inotify-nosys.patch
9c2aa177 29Patch1: %{name}-nosyscrontab.patch
9088c091 30URL: https://fedorahosted.org/cronie/
828712ad
ER
31%{?with_audit:BuildRequires: audit-libs-devel}
32BuildRequires: autoconf
33BuildRequires: automake
9088c091
AM
34%{?with_selinux:BuildRequires: libselinux-devel}
35BuildRequires: pam-devel
0d2f2c46 36BuildRequires: rpm >= 4.4.9-56
9088c091
AM
37BuildRequires: rpmbuild(macros) >= 1.268
38Requires(post): fileutils
39Requires(post,preun): /sbin/chkconfig
40Requires(post,preun): rc-scripts
41Requires(postun): /usr/sbin/groupdel
42Requires(pre): /usr/bin/getgid
43Requires(pre): /usr/sbin/groupadd
44Requires: /bin/run-parts
45Requires: /sbin/chkconfig
46Requires: psmisc >= 20.1
47Requires: rc-scripts
f440f0d0 48%{?with_inotify:Requires: uname(release) >= 2.6.13}
9088c091
AM
49Provides: crondaemon
50Provides: crontabs = 1.7
51Provides: group(crontab)
0d2f2c46 52%if "%{pld_release}" == "th"
84a870a4 53Provides: vixie-cron = 4:4.4
daf76cdc 54%endif
9088c091
AM
55Obsoletes: crondaemon
56Obsoletes: crontabs
0d2f2c46 57%if "%{pld_release}" == "th"
84a870a4 58Obsoletes: vixie-cron <= 4:4.3
daf76cdc 59%endif
9088c091
AM
60BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
61
62%description
84a870a4
AM
63Cronie contains the standard UNIX daemon crond that runs specified
64programs at scheduled times and related tools. It is based on the
65original cron and has security and configuration enhancements like the
66ability to use pam and SELinux.
9088c091
AM
67
68%package anacron
84a870a4
AM
69Summary: Utility for running regular jobs
70Group: Base
71Provides: anacron = 2.4
72Obsoletes: anacron <= 2.3
9088c091
AM
73
74%description anacron
84a870a4
AM
75Anacron becames part of cronie. Anacron is used only for running
76regular jobs. The default settings execute regular jobs by anacron,
77however this could be overloaded in settings.
9088c091
AM
78
79%prep
80%setup -q
f440f0d0 81%patch0 -p1
9c2aa177 82%patch1 -p1
9088c091
AM
83
84%build
828712ad
ER
85%{__aclocal}
86%{__autoconf}
87%{__autoheader}
88%{__automake}
9088c091 89%configure \
d39ca4fd 90 SYSCRONTAB=/etc/crontab \
695ed2ed 91 SYS_CROND_DIR=/etc/cron.d \
72768a3d 92 --sysconfdir=/etc/cron \
9088c091 93 --with-pam \
45b0067d 94 --with%{!?with_selinux:out}-selinux \
828712ad 95 --with%{!?with_audit:out}-audit \
946518b7 96 --with%{!?with_inotify:out}-inotify \
9088c091
AM
97 --enable-anacron
98
99%{__make}
100
101%install
102rm -rf $RPM_BUILD_ROOT
d07a95b8 103install -d $RPM_BUILD_ROOT{/var/{log,spool/{ana,}cron},%{_mandir}} \
9088c091
AM
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}
106
107%{__make} install \
0d2f2c46 108 pamdir=/etc/pam.d \
9088c091
AM
109 DESTDIR=$RPM_BUILD_ROOT
110
111install contrib/0anacron $RPM_BUILD_ROOT/etc/cron.hourly/0anacron
9088c091
AM
112install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/crond
113install %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/cron
114install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/cron
115install %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/crontab
116install %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/crond
117
118for 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
122 fi
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
126 fi
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
130 fi
131done
132
133touch $RPM_BUILD_ROOT/var/log/cron
134
135cat > $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
138root
139EOF
140
141cat > $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
144EOF
145
146%clean
147rm -rf $RPM_BUILD_ROOT
148
149%pre
150%groupadd -g 117 -r -f crontab
151
152%post
153/sbin/chkconfig --add crond
154umask 027
155touch /var/log/cron
156chgrp crontab /var/log/cron
157chmod 660 /var/log/cron
158%service crond restart "Cron Daemon"
159
160%preun
161if [ "$1" = "0" ]; then
162 %service crond stop
163 /sbin/chkconfig --del crond
164fi
165
166%postun
167if [ "$1" = "0" ]; then
168 %groupremove crontab
169fi
170
171%triggerpostun -- hc-cron
172# reinstall crond init.d links, which could be different
173/sbin/chkconfig --del crond
174/sbin/chkconfig --add crond
175
77af6cfd
AM
176%triggerun -- vixie-cron
177# Prevent preun from crond from working
178chmod a-x /etc/rc.d/init.d/crond
179
180%triggerpostun -- vixie-cron
181# Restore what triggerun removed
182chmod 754 /etc/rc.d/init.d/crond
183/sbin/chkconfig --add crond
184
9088c091
AM
185%files
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
198
199%{_mandir}/man8/crond.8*
200%{_mandir}/man8/cron.8*
201%{_mandir}/man5/crontab.5*
202%{_mandir}/man1/crontab.1*
203
204%attr(1730,root,crontab) /var/spool/cron
205%attr(660,root,crontab) %ghost /var/log/cron
206
207%files anacron
208%defattr(644,root,root,755)
209%attr(755,root,root) %{_sbindir}/anacron
84a870a4 210%attr(755,root,root) %{_sysconfdir}/cron.hourly/0anacron
9088c091
AM
211%{_mandir}/man5/anacrontab.5*
212%{_mandir}/man8/anacron.8*
d07a95b8
AM
213
214%attr(1730,root,crontab) /var/spool/anacron
This page took 0.124944 seconds and 4 git commands to generate.