]> git.pld-linux.org Git - packages/cronie.git/blame_incremental - cronie.spec
- status --pidfile dep in initscript
[packages/cronie.git] / cronie.spec
... / ...
CommitLineData
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)
4# - https://fedorahosted.org/cronie/changeset/272c4a5c417bfa6e04148fc35a4fe4c6956b17e1
5# should we follow it too? our pam contains cron.{allow,deny} listfile rules,
6# cronie itself checks these files so safe to drop?
7#
8# Conditional build:
9%bcond_without inotify # without inotify support
10%if "%{pld_release}" == "ac"
11%bcond_with selinux # without SELinux support
12%bcond_with audit # without audit support
13%else
14%bcond_without selinux # without SELinux support
15%bcond_without audit # without audit support
16%endif
17
18Summary: Cron daemon for executing programs at set times
19Name: cronie
20Version: 1.4.3
21Release: 1
22License: MIT and BSD and GPL v2
23Group: Daemons
24Source0: https://fedorahosted.org/releases/c/r/cronie/%{name}-%{version}.tar.gz
25# Source0-md5: 2393b3e5828fc09d9acf04dfd7796ab9
26Source1: %{name}.init
27Source2: cron.logrotate
28Source3: cron.sysconfig
29Source4: %{name}.crontab
30Source5: %{name}.pam
31Patch0: inotify-nosys.patch
32Patch1: %{name}-nosyscrontab.patch
33Patch2: sendmail-path.patch
34URL: https://fedorahosted.org/cronie/
35%{?with_audit:BuildRequires: audit-libs-devel}
36BuildRequires: autoconf
37BuildRequires: automake
38%{?with_selinux:BuildRequires: libselinux-devel}
39BuildRequires: pam-devel
40BuildRequires: rpm >= 4.4.9-56
41BuildRequires: rpmbuild(macros) >= 1.268
42Requires(post): fileutils
43Requires(post,preun): /sbin/chkconfig
44Requires(postun): /usr/sbin/groupdel
45Requires(pre): /usr/bin/getgid
46Requires(pre): /usr/sbin/groupadd
47Requires: /bin/run-parts
48Requires: /sbin/chkconfig
49Requires: psmisc >= 20.1
50Requires: rc-scripts >= 0.4.0.19
51%{?with_inotify:Requires: uname(release) >= 2.6.13}
52Provides: crondaemon
53Provides: crontabs = 1.7
54Provides: group(crontab)
55%if "%{pld_release}" == "th"
56Provides: vixie-cron = 4:4.4
57%endif
58Obsoletes: crondaemon
59Obsoletes: crontabs
60%if "%{pld_release}" == "th"
61Obsoletes: vixie-cron <= 4:4.3
62%endif
63BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
64
65%description
66Cronie contains the standard UNIX daemon crond that runs specified
67programs at scheduled times and related tools. It is based on the
68original cron and has security and configuration enhancements like the
69ability to use pam and SELinux.
70
71%package anacron
72Summary: Utility for running regular jobs
73Group: Base
74Provides: anacron = 2.4
75Obsoletes: anacron <= 2.3
76
77%description anacron
78Anacron becames part of cronie. Anacron is used only for running
79regular jobs. The default settings execute regular jobs by anacron,
80however this could be overloaded in settings.
81
82%prep
83%setup -q
84%patch0 -p1
85%patch1 -p1
86%patch2 -p1
87
88%build
89%{__aclocal}
90%{__autoconf}
91%{__autoheader}
92%{__automake}
93%configure \
94 SYSCRONTAB=/etc/crontab \
95 SYS_CROND_DIR=/etc/cron.d \
96 --sysconfdir=/etc/cron \
97 --with-pam \
98 --with%{!?with_selinux:out}-selinux \
99 --with%{!?with_audit:out}-audit \
100 --with%{!?with_inotify:out}-inotify \
101 --enable-anacron
102
103%{__make}
104
105%install
106rm -rf $RPM_BUILD_ROOT
107install -d $RPM_BUILD_ROOT{/var/{log,spool/{ana,}cron},%{_mandir}} \
108 $RPM_BUILD_ROOT/etc/{rc.d/init.d,logrotate.d,sysconfig} \
109 $RPM_BUILD_ROOT%{_sysconfdir}/{cron,cron.{d,hourly,daily,weekly,monthly},pam.d}
110
111%{__make} install \
112 pamdir=/etc/pam.d \
113 DESTDIR=$RPM_BUILD_ROOT
114
115install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/crond
116cp -a contrib/0anacron $RPM_BUILD_ROOT/etc/cron.hourly/0anacron
117cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/cron
118cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/cron
119cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/crontab
120cp -a %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/crond
121
122touch $RPM_BUILD_ROOT/var/log/cron
123
124cat > $RPM_BUILD_ROOT%{_sysconfdir}/cron/cron.allow << 'EOF'
125# cron.allow This file describes the names of the users which are
126# allowed to use the local cron daemon
127root
128EOF
129
130cat > $RPM_BUILD_ROOT%{_sysconfdir}/cron/cron.deny << 'EOF'
131# cron.deny This file describes the names of the users which are
132# NOT allowed to use the local cron daemon
133EOF
134
135%clean
136rm -rf $RPM_BUILD_ROOT
137
138%pre
139%groupadd -g 117 -r -f crontab
140
141%post
142if [ ! -f /var/log/cron ]; then
143 umask 027
144 touch /var/log/cron
145 chgrp crontab /var/log/cron
146 chmod 660 /var/log/cron
147fi
148/sbin/chkconfig --add crond
149%service crond restart "Cron Daemon"
150
151%preun
152if [ "$1" = "0" ]; then
153 %service crond stop
154 /sbin/chkconfig --del crond
155fi
156
157%postun
158if [ "$1" = "0" ]; then
159 %groupremove crontab
160fi
161
162%triggerpostun -- hc-cron
163# reinstall crond init.d links, which could be different
164/sbin/chkconfig --del crond
165/sbin/chkconfig --add crond
166
167%triggerun -- vixie-cron
168# Prevent preun from crond from working
169chmod a-x /etc/rc.d/init.d/crond
170
171%triggerpostun -- vixie-cron
172# Restore what triggerun removed
173chmod 754 /etc/rc.d/init.d/crond
174/sbin/chkconfig --add crond
175
176%files
177%defattr(644,root,root,755)
178%doc AUTHORS ChangeLog README
179%attr(750,root,crontab) %dir %{_sysconfdir}/cron*
180%attr(640,root,crontab) %config(noreplace,missingok) /etc/cron.d/crontab
181%attr(640,root,crontab) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/cron/cron.allow
182%attr(640,root,crontab) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/cron/cron.deny
183%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cron
184%config(noreplace) %verify(not md5 mtime size) /etc/pam.d/crond
185%attr(754,root,root) /etc/rc.d/init.d/crond
186%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/cron
187%attr(755,root,root) %{_sbindir}/crond
188%attr(2755,root,crontab) %{_bindir}/crontab
189
190%{_mandir}/man8/crond.8*
191%{_mandir}/man8/cron.8*
192%{_mandir}/man5/crontab.5*
193%{_mandir}/man1/crontab.1*
194
195%attr(1730,root,crontab) /var/spool/cron
196%attr(660,root,crontab) %ghost /var/log/cron
197
198%files anacron
199%defattr(644,root,root,755)
200%attr(755,root,root) %{_sbindir}/anacron
201%attr(755,root,root) %{_sysconfdir}/cron.hourly/0anacron
202%{_mandir}/man5/anacrontab.5*
203%{_mandir}/man8/anacron.8*
204
205%attr(1730,root,crontab) /var/spool/anacron
This page took 0.035604 seconds and 4 git commands to generate.