]> git.pld-linux.org Git - packages/rsyslog.git/blob - rsyslog.spec
- release 2
[packages/rsyslog.git] / rsyslog.spec
1 #
2 # Conditional build:
3 %bcond_without  gssapi          # GSSAPI Kerberos 5 support
4 %bcond_without  mysql           # MySQL database support 
5 %bcond_without  pgsql           # PostgreSQL database support
6 %bcond_without  snmp            # 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:        4.6.4
17 Release:        2
18 License:        GPL v3+
19 Group:          Daemons
20 Source0:        http://www.rsyslog.com/files/download/rsyslog/%{name}-%{version}.tar.gz
21 # Source0-md5:  9cd32eec1984a656ab879e89b57d8076
22 Source1:        %{name}.init
23 Source2:        %{name}.conf
24 Source3:        %{name}.sysconfig
25 Source4:        %{name}.logrotate
26 URL:            http://www.rsyslog.com/
27 %{?with_gssapi:BuildRequires:   heimdal-devel}
28 %{?with_mysql:BuildRequires:    mysql-devel}
29 %{?with_snmp:BuildRequires:     net-snmp-devel}
30 BuildRequires:  pkgconfig
31 %{?with_pgsql:BuildRequires:    postgresql-devel}
32 Requires(post): fileutils
33 Requires(post,preun):   /sbin/chkconfig
34 Requires(post,preun):   rc-scripts >= 0.2.0
35 Requires(postun):       /usr/sbin/groupdel
36 Requires(postun):       /usr/sbin/userdel
37 Requires(pre):  /bin/id
38 Requires(pre):  /usr/bin/getgid
39 Requires(pre):  /usr/lib/rpm/user_group.sh
40 Requires(pre):  /usr/sbin/groupadd
41 Requires(pre):  /usr/sbin/useradd
42 Requires(pre):  /usr/sbin/usermod
43 Requires(triggerpostun):        sed >= 4.0
44 # for vservers we don't need klogd and syslog works without klogd
45 # (just it doesn't log kernel buffer into syslog)
46 # Requires:     klogd
47 Requires:       logrotate >= 3.2-3
48 Requires:       psmisc >= 20.1
49 Provides:       group(syslog)
50 Provides:       syslogdaemon
51 Provides:       user(syslog)
52 Obsoletes:      msyslog
53 Obsoletes:      sysklogd
54 Obsoletes:      syslog-ng
55 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56
57 %description
58 Rsyslog is an enhanced multi-threaded syslogd supporting, among
59 others, MySQL, syslog/tcp, RFC 3195, permitted sender lists, filtering
60 on any message part, and fine grain output format control. It is quite
61 compatible to stock sysklogd and can be used as a drop-in replacement.
62 Its advanced features make it suitable for enterprise-class,
63 encryption protected syslog relay chains while at the same time being
64 very easy to setup for the novice user.
65
66 %description -l pl.UTF-8
67 rsyslog to zaawansowany, wielowątkowy syslogd obsługujący m.in.
68 MySQL-a, syslog/tcp, RFC 3195, listy dopuszczalnych nadawców,
69 filtrowanie po częściach komunikatów i szczegółową kontrolę formatu
70 wyjściowego. Jest w miarę kompatybilny ze zwykłym sysklogd i może być
71 używany jako jego zamiennik. Jego zaawansowane możliwości czynią go
72 odpowiednim do produkcyjnych, szyfrowanych łańcuchów przekazywania
73 logów, a jednocześnie jest przy tym łatwy do skonfigurowania dla
74 początkującego użytkownika.
75
76 %package klogd
77 Summary:        Linux kernel logger
78 Summary(de.UTF-8):      Linux-Kerner-Logger
79 Summary(pl.UTF-8):      Program logujący zdarzenia w jądrze Linuksa
80 Group:          Daemons
81 Requires(post,preun):   /sbin/chkconfig
82 Requires(post,preun):   rc-scripts >= 0.2.0
83 Requires(postun):       /usr/sbin/groupdel
84 Requires(postun):       /usr/sbin/userdel
85 Requires(pre):  /bin/id
86 Requires(pre):  /usr/bin/getgid
87 Requires(pre):  /usr/lib/rpm/user_group.sh
88 Requires(pre):  /usr/sbin/groupadd
89 Requires(pre):  /usr/sbin/useradd
90 Requires(pre):  /usr/sbin/usermod
91 Provides:       group(syslog)
92 Provides:       user(syslog)
93 Obsoletes:      sysklogd
94
95 %description klogd
96 This is the Linux kernel logging program. It is run as a daemon
97 (background process) to log messages from kernel.
98
99 %description klogd -l pl.UTF-8
100 Pakiet ten zawiera program, który jest uruchamiany jako demon i służy
101 do logowania komunikatów jądra Linuksa.
102
103 %package mysql
104 Summary:        MySQL support for rsyslog
105 Summary(pl.UTF-8):      Obsługa MySQL-a do rsysloga
106 Group:          Daemons
107 Requires:       %{name} = %{version}-%{release}
108
109 %description mysql
110 The rsyslog-mysql package contains a dynamic shared object that will
111 add MySQL database support to rsyslog.
112
113 %description mysql -l pl.UTF-8
114 Pakiet rsyslog-mysql zawiera moduł dynamiczny dodający obsługę bazy
115 danych MySQL do rsysloga.
116
117 %package pgsql
118 Summary:        PostgresSQL support for rsyslog
119 Summary(pl.UTF-8):      Obsługa PostgreSQL-a dla rsysloga
120 Group:          Daemons
121 Requires:       %{name} = %{version}-%{release}
122
123 %description pgsql
124 The rsyslog-pgsql package contains a dynamic shared object that will
125 add PostgreSQL database support to rsyslog.
126
127 %description pgsql -l pl.UTF-8
128 Pakiet rsyslog-pgsql zawiera moduł dynamiczny dodający obsługę bazy
129 danych PostgreSQL do rsysloga.
130
131 %package gssapi
132 Summary:        GSSAPI authentication and encryption support for rsyslog
133 Summary(pl.UTF-8):      Obsługa uwierzytelniania GSSAPI i szyfrowania dla rsysloga
134 Group:          Daemons
135 Requires:       %{name} = %{version}-%{release}
136
137 %description gssapi
138 The rsyslog-gssapi package contains the rsyslog plugins which support
139 GSSAPI authentication and secure connections. GSSAPI is commonly used
140 for Kerberos authentication.
141
142 %description gssapi -l pl.UTF-8
143 Pakiet rsyslog-gssapi zawiera wtyczki rsysloga obsługujące
144 uwierzytelnianie GSSAPI i bezpieczne połączenia. GSSAPI jest
145 powszechnie używane do uwierzytelniania Kerberos.
146
147 %prep
148 %setup -q
149
150 %build
151 %configure \
152         --enable-imfile \
153         %{?with_gssapi:--enable-gssapi-krb5} \
154         %{?with_mysql:--enable-mysql} \
155         %{?with_pgsql:--enable-pgsql} \
156         %{?with_snmp:--enable-snmp}
157
158 %{__make}
159
160 %install
161 rm -rf $RPM_BUILD_ROOT
162 install -d $RPM_BUILD_ROOT/etc/{sysconfig,rc.d/init.d,logrotate.d,rsyslog.d} \
163         $RPM_BUILD_ROOT{%{_sbindir},%{_mandir}/man{5,8},%{_bindir}} \
164         $RPM_BUILD_ROOT/{dev,var/log}
165
166 %{__make} install \
167         DESTDIR=$RPM_BUILD_ROOT
168
169 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyslog
170 install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rsyslog.conf
171 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/rsyslog
172 install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/rsyslog
173
174 for n in debug kernel maillog messages secure syslog user spooler lpr daemon
175 do
176         > $RPM_BUILD_ROOT/var/log/$n
177 done
178
179 %{__rm} $RPM_BUILD_ROOT%{_libdir}/rsyslog/*.la
180
181 %clean
182 rm -rf $RPM_BUILD_ROOT
183
184 %pre
185 %groupadd -P syslog -g 18 syslog
186 %useradd -P syslog -u 18 -g syslog -c "Syslog User" syslog
187 %addusertogroup syslog logs
188
189 %post
190 for n in /var/log/{cron,daemon,debug,kernel,lpr,maillog,messages,secure,spooler,syslog,user}; do
191         if [ -f $n ]; then
192                 chown root:logs $n
193                 continue
194         else
195                 touch $n
196                 chmod 000 $n
197                 chown root:logs $n
198                 chmod 640 $n
199         fi
200 done
201
202 /sbin/chkconfig --add %{name}
203 %service rsyslog restart "%{name} daemon"
204 %service -q %{name}-klogd restart
205
206 %preun
207 if [ "$1" = "0" ]; then
208         %service %{name} stop
209         /sbin/chkconfig --del %{name}
210 fi
211
212 %postun
213 if [ "$1" = "0" ]; then
214         %userremove syslog
215         %groupremove syslog
216 fi
217
218 %pre klogd
219 %groupadd -P klogd -g 18 syslog
220 %useradd -P klogd -u 18 -g syslog -c "Syslog User" syslog
221 %addusertogroup syslog logs
222
223 %post klogd
224 /sbin/chkconfig --add %{name}-klogd
225 %service %{name}-klogd restart "kernel logger daemon"
226
227 %preun klogd
228 if [ "$1" = "0" ]; then
229         %service %{name}-klogd stop
230         /sbin/chkconfig --del %{name}-klogd
231 fi
232
233 %postun klogd
234 if [ "$1" = "0" ]; then
235         %userremove syslog
236         %groupremove syslog
237 fi
238
239 %triggerpostun -- inetutils-syslogd
240 /sbin/chkconfig --del syslog
241 /sbin/chkconfig --add syslog
242 if [ -f /etc/syslog.conf.rpmsave ]; then
243         mv -f /etc/syslog.conf{,.rpmnew}
244         mv -f /etc/syslog.conf{.rpmsave,}
245         echo "Moved /etc/syslog.conf.rpmsave to /etc/syslog.conf"
246         echo "Original file from package is available as /etc/syslog.conf.rpmnew"
247 fi
248
249 %files
250 %defattr(644,root,root,755)
251 %doc AUTHORS ChangeLog NEWS README
252 %dir %{_sysconfdir}/rsyslog.d
253 %attr(640,root,syslog) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyslog.conf
254 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rsyslog
255 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyslog
256 %attr(754,root,root) /etc/rc.d/init.d/rsyslog
257 %attr(640,root,root) %ghost /var/log/*
258 %attr(755,root,root) %{_sbindir}/rsyslogd
259 %dir %{_libdir}/rsyslog
260 %attr(755,root,root) %{_libdir}/rsyslog/imfile.so
261 %attr(755,root,root) %{_libdir}/rsyslog/imklog.so
262 %attr(755,root,root) %{_libdir}/rsyslog/immark.so
263 %attr(755,root,root) %{_libdir}/rsyslog/imtcp.so
264 %attr(755,root,root) %{_libdir}/rsyslog/imudp.so
265 %attr(755,root,root) %{_libdir}/rsyslog/imuxsock.so
266 %attr(755,root,root) %{_libdir}/rsyslog/lmgssutil.so
267 %attr(755,root,root) %{_libdir}/rsyslog/lmnet.so
268 %attr(755,root,root) %{_libdir}/rsyslog/lmnetstrms.so
269 %attr(755,root,root) %{_libdir}/rsyslog/lmnsd_ptcp.so
270 %attr(755,root,root) %{_libdir}/rsyslog/lmregexp.so
271 %attr(755,root,root) %{_libdir}/rsyslog/lmstrmsrv.so
272 %attr(755,root,root) %{_libdir}/rsyslog/lmtcpclt.so
273 %attr(755,root,root) %{_libdir}/rsyslog/lmtcpsrv.so
274 %attr(755,root,root) %{_libdir}/rsyslog/lmzlibw.so
275 %attr(755,root,root) %{_libdir}/rsyslog/omsnmp.so
276 %attr(755,root,root) %{_libdir}/rsyslog/omtesting.so
277 %{_mandir}/man5/*
278 %{_mandir}/man8/*
279
280 #%files klogd
281 #%defattr(644,root,root,755)
282 #%attr(754,root,root) /etc/rc.d/init.d/klogd
283 #%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/klogd
284 #%attr(755,root,root) %{_sbindir}/klogd
285
286 %if %{with mysql}
287 %files mysql
288 %defattr(644,root,root,755)
289 %doc plugins/ommysql/createDB.sql
290 %attr(755,root,root) %{_libdir}/rsyslog/ommysql.so
291 %endif
292
293 %if %{with pgsql}
294 %files pgsql
295 %defattr(644,root,root,755)
296 %doc plugins/ompgsql/createDB.sql
297 %attr(755,root,root) %{_libdir}/rsyslog/ompgsql.so
298 %endif
299
300 %if %{with gssapi}
301 %files gssapi
302 %defattr(644,root,root,755)
303 %attr(755,root,root) %{_libdir}/rsyslog/imgssapi.so
304 %attr(755,root,root) %{_libdir}/rsyslog/omgssapi.so
305 %endif
This page took 0.084003 seconds and 4 git commands to generate.