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