]> git.pld-linux.org Git - packages/rsyslog.git/blob - rsyslog.spec
- added dir
[packages/rsyslog.git] / rsyslog.spec
1 #
2 # Conditional build:
3 %bcond_without  gssapi          # Enable GSSAPI Kerberos 5 support
4 %bcond_without  mysql           # Enable MySql database support 
5 %bcond_without  pgsql           # Enable PostgreSQL database support
6 %bcond_without  snmp            # Enable SNMP support
7
8 Summary:        Linux system and kernel logger
9 Summary(de.UTF-8):      Linux-System- und Kerner-Logger
10 Summary(es.UTF-8):      Registrador de log del sistema linux
11 Summary(fr.UTF-8):      Le système Linux et le logger du noyau
12 Summary(pl.UTF-8):      Programy logujące zdarzenia w systemie i jądrze Linuksa
13 Summary(pt_BR.UTF-8):   Registrador de log do sistema linux
14 Summary(tr.UTF-8):      Linux sistem ve çekirdek kayıt süreci
15 Name:           rsyslog
16 Version:        3.16.2
17 Release:        0.1
18 License:        GPL v3
19 Group:          Daemons
20 Source0:        http://download.rsyslog.com/rsyslog/%{name}-%{version}.tar.gz
21 # Source0-md5:  568d0ad73a149974b9bcfcb9e64bfc0b
22 Source1:        %{name}.init
23 Source2:        %{name}.conf
24 Source3:        %{name}.sysconfig
25 URL:            http://www.rsyslog.com/
26 %{?with_gssapi:BuildRequires: krb5-devel}
27 %{?with_mysql:BuildRequires: mysql-devel}
28 %{?with_snmp:BuildRequires: net-snmp-devel}
29 %{?with_pgsql:BuildRequires: postgresql-devel}
30 Requires(post): fileutils
31 Requires(post,preun):   /sbin/chkconfig
32 Requires(post,preun):   rc-scripts >= 0.2.0
33 Requires(postun):       /usr/sbin/groupdel
34 Requires(postun):       /usr/sbin/userdel
35 Requires(pre):  /bin/id
36 Requires(pre):  /usr/bin/getgid
37 Requires(pre):  /usr/lib/rpm/user_group.sh
38 Requires(pre):  /usr/sbin/groupadd
39 Requires(pre):  /usr/sbin/useradd
40 Requires(pre):  /usr/sbin/usermod
41 Requires(triggerpostun):        sed >= 4.0
42 # for vservers we don't need klogd and syslog works without klogd
43 # (just it doesn't log kernel buffer into syslog)
44 # Requires:     klogd
45 Requires:       logrotate >= 3.2-3
46 Requires:       psmisc >= 20.1
47 Provides:       group(syslog)
48 Provides:       syslogdaemon
49 Provides:       user(syslog)
50 Obsoletes:      msyslog
51 Obsoletes:      sysklogd
52 Obsoletes:      syslog-ng
53 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54
55 %description
56 Rsyslog is an enhanced multi-threaded syslogd supporting, among
57 others, MySQL, syslog/tcp, RFC 3195, permitted sender lists, filtering
58 on any message part, and fine grain output format control. It is quite
59 compatible to stock sysklogd and can be used as a drop-in replacement.
60 Its advanced features make it suitable for enterprise-class,
61 encryption protected syslog relay chains while at the same time being
62 very easy to setup for the novice user.
63
64 %package klogd
65 Summary:        Linux kernel logger
66 Summary(de.UTF-8):      Linux-Kerner-Logger
67 Summary(pl.UTF-8):      Program logujący zdarzenia w jądrze Linuksa
68 Group:          Daemons
69 Requires(post,preun):   /sbin/chkconfig
70 Requires(post,preun):   rc-scripts >= 0.2.0
71 Requires(postun):       /usr/sbin/groupdel
72 Requires(postun):       /usr/sbin/userdel
73 Requires(pre):  /bin/id
74 Requires(pre):  /usr/bin/getgid
75 Requires(pre):  /usr/lib/rpm/user_group.sh
76 Requires(pre):  /usr/sbin/groupadd
77 Requires(pre):  /usr/sbin/useradd
78 Requires(pre):  /usr/sbin/usermod
79 Provides:       group(syslog)
80 Provides:       user(syslog)
81 Obsoletes:      sysklogd
82
83 %description klogd
84 This is the Linux kernel logging program. It is run as a daemon
85 (background process) to log messages from kernel.
86
87 %description -l pl.UTF-8
88 Pakiet ten zawiera program, który jest uruchamiany jako demon i służy
89 do logowania komunikatów jądra Linuksa.
90
91 %package mysql
92 Summary:        MySQL support for rsyslog
93 Group:          Daemons
94 Requires:       %{name} = %{version}-%{release}
95
96 %description mysql
97 The rsyslog-mysql package contains a dynamic shared object that will
98 add MySQL database support to rsyslog.
99
100 %package pgsql
101 Summary:        PostgresSQL support for rsyslog
102 Group:          Daemons
103 Requires:       %{name} = %{version}-%{release}
104
105 %description pgsql
106 The rsyslog-pgsql package contains a dynamic shared object that will
107 add PostgreSQL database support to rsyslog.
108
109 %package gssapi
110 Summary:        GSSAPI authentication and encryption support for rsyslog
111 Group:          Daemons
112 Requires:       %{name} = %{version}-%{release}
113
114 %description gssapi
115 The rsyslog-gssapi package contains the rsyslog plugins which support
116 GSSAPI authentication and secure connections. GSSAPI is commonly used
117 for Kerberos authentication.
118
119 %prep
120 %setup -q
121
122 %build
123 %configure \
124 %{?with_gssapi:--enable-gssapi-krb5} \
125 %{?with_mysql:--enable-mysql} \
126 %{?with_pgsql:--enable-pgsql} \
127 %{?with_snmp:--enable-snmp}
128
129 %{__make}
130
131 %install
132 rm -rf $RPM_BUILD_ROOT
133 install -d $RPM_BUILD_ROOT/etc/{sysconfig,rc.d/init.d,logrotate.d} \
134         $RPM_BUILD_ROOT{%{_sbindir},%{_mandir}/man{5,8},%{_bindir}} \
135         $RPM_BUILD_ROOT/{dev,var/log}
136
137 %{__make} install \
138         DESTDIR=$RPM_BUILD_ROOT
139
140 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyslog
141 install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rsyslog.conf
142 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/rsyslog
143 install redhat/rsyslog.log $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/rsyslog
144
145 for n in debug kernel maillog messages secure syslog user spooler lpr daemon
146 do
147         > $RPM_BUILD_ROOT/var/log/$n
148 done
149
150 %pre
151 %groupadd -P syslog -g 18 syslog
152 %useradd -P syslog -u 18 -g syslog -c "Syslog User" syslog
153 %addusertogroup syslog logs
154
155 %post
156 for n in /var/log/{cron,daemon,debug,kernel,lpr,maillog,messages,secure,spooler,syslog,user}; do
157         if [ -f $n ]; then
158                 chown syslog:syslog $n
159                 continue
160         else
161                 touch $n
162                 chmod 000 $n
163                 chown syslog:syslog $n
164                 chmod 640 $n
165         fi
166 done
167
168 /sbin/chkconfig --add %{name}
169 %service syslog restart "%{name} daemon"
170 %service -q %{name}-klogd restart
171
172 %preun
173 if [ "$1" = "0" ]; then
174         %service %{name} stop
175         /sbin/chkconfig --del %{name}
176 fi
177
178 %postun
179 if [ "$1" = "0" ]; then
180         %userremove syslog
181         %groupremove syslog
182 fi
183
184 %pre klogd
185 %groupadd -P klogd -g 18 syslog
186 %useradd -P klogd -u 18 -g syslog -c "Syslog User" syslog
187 %addusertogroup syslog logs
188
189 %post klogd
190 /sbin/chkconfig --add %{name}-klogd
191 %service %{name}-klogd restart "kernel logger daemon"
192
193 %preun klogd
194 if [ "$1" = "0" ]; then
195         %service %{name}-klogd stop
196         /sbin/chkconfig --del %{name}-klogd
197 fi
198
199 %postun klogd
200 if [ "$1" = "0" ]; then
201         %userremove syslog
202         %groupremove syslog
203 fi
204
205 %triggerpostun -- inetutils-syslogd
206 /sbin/chkconfig --del syslog
207 /sbin/chkconfig --add syslog
208 if [ -f /etc/syslog.conf.rpmsave ]; then
209         mv -f /etc/syslog.conf{,.rpmnew}
210         mv -f /etc/syslog.conf{.rpmsave,}
211         echo "Moved /etc/syslog.conf.rpmsave to /etc/syslog.conf"
212         echo "Original file from package is available as /etc/syslog.conf.rpmnew"
213 fi
214
215 %clean
216 rm -rf $RPM_BUILD_ROOT
217
218 %files
219 %defattr(644,root,root,755)
220 %doc AUTHORS ChangeLog NEWS README
221 %attr(640,root,syslog) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyslog.conf
222 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rsyslog
223 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyslog
224 %attr(754,root,root) /etc/rc.d/init.d/rsyslog
225 %attr(640,root,root) %ghost /var/log/*
226 %attr(755,root,root) %{_sbindir}/rsyslogd
227 %dir %{_libdir}/rsyslog
228 %{_libdir}/rsyslog/omsnmp.so
229 %{_libdir}/rsyslog/imklog.so
230 %{_libdir}/rsyslog/immark.so
231 %{_libdir}/rsyslog/imtcp.so
232 %{_libdir}/rsyslog/imudp.so
233 %{_libdir}/rsyslog/imuxsock.so
234 %{_libdir}/rsyslog/lmgssutil.so
235 %{_libdir}/rsyslog/lmnet.so
236 %{_libdir}/rsyslog/lmregexp.so
237 %{_libdir}/rsyslog/lmtcpclt.so
238 %{_libdir}/rsyslog/lmtcpsrv.so
239 %{_libdir}/rsyslog/omtesting.so
240 %{_mandir}/man5/*
241 %{_mandir}/man8/*
242
243 %files klogd
244 %defattr(644,root,root,755)
245 #%attr(754,root,root) /etc/rc.d/init.d/klogd
246 #%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/klogd
247 #%attr(755,root,root) %{_sbindir}/klogd
248
249 %if %{with mysql}
250 %files mysql
251 %defattr(644,root,root,755)
252 %doc plugins/ommysql/createDB.sql
253 %{_libdir}/rsyslog/ommysql.so
254 %endif
255
256 %if %{with pgsql}
257 %files pgsql
258 %defattr(644,root,root,755)
259 %doc plugins/ompgsql/createDB.sql
260 %{_libdir}/rsyslog/ompgsql.so
261 %endif
262
263 %if %{with gssapi}
264 %files gssapi
265 %defattr(644,root,root,755)
266 %{_libdir}/rsyslog/imgssapi.so
267 %{_libdir}/rsyslog/omgssapi.so
268 %endif
This page took 0.044151 seconds and 4 git commands to generate.