X-Git-Url: http://git.pld-linux.org/?p=packages%2Frsyslog.git;a=blobdiff_plain;f=rsyslog.spec;h=0f7f069ec4000fa31b6f42e06682b25fc6dff51e;hp=2d378eaf13ffdc27f5b343eb1b640289cb47d4b8;hb=12da02b;hpb=c60135cd860d55a6f9b7d92330a198510ce89412 diff --git a/rsyslog.spec b/rsyslog.spec index 2d378ea..0f7f069 100644 --- a/rsyslog.spec +++ b/rsyslog.spec @@ -1,10 +1,13 @@ +# TODO +# - without gssapi still generates dep on heimdal-libs # # Conditional build: +%bcond_without dbi # database support via libdbi %bcond_without gssapi # GSSAPI Kerberos 5 support -%bcond_without mysql # MySQL database support +%bcond_without mysql # MySQL database support %bcond_without pgsql # PostgreSQL database support %bcond_without snmp # SNMP support -# + Summary: Linux system and kernel logger Summary(de.UTF-8): Linux-System- und Kerner-Logger Summary(es.UTF-8): Registrador de log del sistema linux @@ -13,20 +16,30 @@ Summary(pl.UTF-8): Programy logujące zdarzenia w systemie i jądrze Linuksa Summary(pt_BR.UTF-8): Registrador de log do sistema linux Summary(tr.UTF-8): Linux sistem ve çekirdek kayıt süreci Name: rsyslog -Version: 3.18.2 -Release: 1 -License: GPL v3 +Version: 8.26.0 +Release: 3 +License: GPL v3+ Group: Daemons -Source0: http://download.rsyslog.com/rsyslog/%{name}-%{version}.tar.gz -# Source0-md5: 34b371f304a8c3222f89c3d0af7a2489 +Source0: http://www.rsyslog.com/files/download/rsyslog/%{name}-%{version}.tar.gz +# Source0-md5: abe20d1621d1e73326c08b964a556ed7 Source1: %{name}.init Source2: %{name}.conf Source3: %{name}.sysconfig +Source4: %{name}.logrotate +Patch0: rsyslog-systemd.patch URL: http://www.rsyslog.com/ -%{?with_gssapi:BuildRequires: krb5-devel} +%{?with_gssapi:BuildRequires: heimdal-devel} +BuildRequires: libdbi-devel %{?with_mysql:BuildRequires: mysql-devel} %{?with_snmp:BuildRequires: net-snmp-devel} +BuildRequires: pkgconfig %{?with_pgsql:BuildRequires: postgresql-devel} +BuildRequires: libestr-devel >= 0.1.9 +BuildRequires: libfastjson-devel >= 0.99.3 +BuildRequires: liblogging-stdlog-devel >= 1.0.3 +BuildRequires: libnet-devel +BuildRequires: gnutls-devel +BuildRequires: rpmbuild(macros) >= 1.626 Requires(post): fileutils Requires(post,preun): /sbin/chkconfig Requires(post,preun): rc-scripts >= 0.2.0 @@ -38,18 +51,25 @@ Requires(pre): /usr/lib/rpm/user_group.sh Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd Requires(pre): /usr/sbin/usermod +Requires(post,preun,postun): systemd-units >= 38 Requires(triggerpostun): sed >= 4.0 # for vservers we don't need klogd and syslog works without klogd # (just it doesn't log kernel buffer into syslog) # Requires: klogd Requires: logrotate >= 3.2-3 Requires: psmisc >= 20.1 +Requires: systemd-units >= 38 Provides: group(syslog) +Provides: service(klogd) +Provides: service(syslog) Provides: syslogdaemon Provides: user(syslog) Obsoletes: msyslog +Obsoletes: rsyslog-systemd Obsoletes: sysklogd Obsoletes: syslog-ng +Conflicts: cronie < 1.5.0-3 +Conflicts: fcron < 3.1.2-5 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description @@ -71,33 +91,6 @@ odpowiednim do produkcyjnych, szyfrowanych łańcuchów przekazywania logów, a jednocześnie jest przy tym łatwy do skonfigurowania dla początkującego użytkownika. -%package klogd -Summary: Linux kernel logger -Summary(de.UTF-8): Linux-Kerner-Logger -Summary(pl.UTF-8): Program logujący zdarzenia w jądrze Linuksa -Group: Daemons -Requires(post,preun): /sbin/chkconfig -Requires(post,preun): rc-scripts >= 0.2.0 -Requires(postun): /usr/sbin/groupdel -Requires(postun): /usr/sbin/userdel -Requires(pre): /bin/id -Requires(pre): /usr/bin/getgid -Requires(pre): /usr/lib/rpm/user_group.sh -Requires(pre): /usr/sbin/groupadd -Requires(pre): /usr/sbin/useradd -Requires(pre): /usr/sbin/usermod -Provides: group(syslog) -Provides: user(syslog) -Obsoletes: sysklogd - -%description klogd -This is the Linux kernel logging program. It is run as a daemon -(background process) to log messages from kernel. - -%description klogd -l pl.UTF-8 -Pakiet ten zawiera program, który jest uruchamiany jako demon i służy -do logowania komunikatów jądra Linuksa. - %package mysql Summary: MySQL support for rsyslog Summary(pl.UTF-8): Obsługa MySQL-a do rsysloga @@ -142,27 +135,80 @@ Pakiet rsyslog-gssapi zawiera wtyczki rsysloga obsługujące uwierzytelnianie GSSAPI i bezpieczne połączenia. GSSAPI jest powszechnie używane do uwierzytelniania Kerberos. -%package devel -Summary: Header files for rsyslog -Summary(pl.UTF-8): Pliki nagłówkowe dla rsyslog -Group: Development/Libraries -Requires: %{name} = %{version}-%{release} +%package dbi +Summary: libdbi database support for rsyslog +Group: Daemons +Requires: %{name} = %{version}-%{release} + +%description dbi +This module supports a large number of database systems via +libdbi. Libdbi abstracts the database layer and provides drivers for +many systems. Drivers are available via the libdbi-drivers project. + +%package udpspoof +Summary: Provides the omudpspoof module +Group: Daemons +Requires: %{name} = %{version}-%{release} + +%description udpspoof +This module is similar to the regular UDP forwarder, but permits to +spoof the sender address. Also, it enables to circle through a number +of source ports. + +%package snmp +Summary: SNMP protocol support for rsyslog +Group: Daemons +Requires: %{name} = %{version}-%{release} + +%description snmp +The rsyslog-snmp package contains the rsyslog plugin that provides the +ability to send syslog messages as SNMPv1 and SNMPv2c traps. -%description devel -Header files for rsyslog. +%package gnutls +Summary: TLS protocol support for rsyslog +Group: Daemons +Requires: %{name} = %{version}-%{release} -%description devel -l pl.UTF-8 -Pliki nagłówkowe dla rsyslog. +%description gnutls +The rsyslog-gnutls package contains the rsyslog plugins that provide the +ability to receive syslog messages via upcoming syslog-transport-tls +IETF standard protocol. %prep %setup -q +%patch0 -p1 %build %configure \ + --disable-silent-rules \ + --enable-gnutls \ + --enable-imdiag \ + --enable-imfile \ + --enable-impstats \ + --enable-imptcp \ + --enable-imtemplate \ + --enable-mail \ + --enable-mmsnmptrapd \ + --enable-omdbalerting \ + --enable-omprog \ + --enable-omruleset \ + --enable-omstdout \ + --enable-omtemplate \ + --enable-omudpspoof \ + --enable-omuxsock \ + --enable-pmaixforwardedfrom \ + --enable-pmcisconames \ + --enable-pmlastmsg \ + --enable-pmrfc3164sd \ + --enable-pmsnare \ + --enable-smcustbindcdr \ + --enable-unlimited-select \ %{?with_gssapi:--enable-gssapi-krb5} \ %{?with_mysql:--enable-mysql} \ %{?with_pgsql:--enable-pgsql} \ - %{?with_snmp:--enable-snmp} + %{?with_snmp:--enable-snmp} \ + %{?with_dbi:--enable-libdbi} \ + --with-systemdsystemunitdir=/lib/systemd/system %{__make} @@ -175,16 +221,20 @@ install -d $RPM_BUILD_ROOT/etc/{sysconfig,rc.d/init.d,logrotate.d,rsyslog.d} \ %{__make} install \ DESTDIR=$RPM_BUILD_ROOT -install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyslog -install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rsyslog.d/rsyslog.conf -install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/rsyslog -install redhat/rsyslog.log $RPM_BUILD_ROOT/etc/logrotate.d/rsyslog +install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/rsyslog +cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/rsyslog.conf +cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/rsyslog +cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/rsyslog -for n in debug kernel maillog messages secure syslog user spooler lpr daemon -do +for n in cron daemon debug kernel lpr maillog messages secure spooler syslog user; do > $RPM_BUILD_ROOT/var/log/$n done +%{__rm} $RPM_BUILD_ROOT%{_libdir}/rsyslog/*.la + +%clean +rm -rf $RPM_BUILD_ROOT + %pre %groupadd -P syslog -g 18 syslog %useradd -P syslog -u 18 -g syslog -c "Syslog User" syslog @@ -193,52 +243,38 @@ done %post for n in /var/log/{cron,daemon,debug,kernel,lpr,maillog,messages,secure,spooler,syslog,user}; do if [ -f $n ]; then - chown syslog:syslog $n + chown root:logs $n continue else touch $n chmod 000 $n - chown syslog:syslog $n + chown root:logs $n chmod 640 $n fi done /sbin/chkconfig --add %{name} %service rsyslog restart "%{name} daemon" -%service -q %{name}-klogd restart + +%systemd_post rsyslog.service +ln -sf /lib/systemd/system/rsyslog.service /etc/systemd/system/syslog.service || : %preun if [ "$1" = "0" ]; then %service %{name} stop /sbin/chkconfig --del %{name} fi +%systemd_preun rsyslog.service %postun if [ "$1" = "0" ]; then %userremove syslog %groupremove syslog fi +%systemd_reload -%pre klogd -%groupadd -P klogd -g 18 syslog -%useradd -P klogd -u 18 -g syslog -c "Syslog User" syslog -%addusertogroup syslog logs - -%post klogd -/sbin/chkconfig --add %{name}-klogd -%service %{name}-klogd restart "kernel logger daemon" - -%preun klogd -if [ "$1" = "0" ]; then - %service %{name}-klogd stop - /sbin/chkconfig --del %{name}-klogd -fi - -%postun klogd -if [ "$1" = "0" ]; then - %userremove syslog - %groupremove syslog -fi +%triggerpostun -- %{name} < 5.8.6-4 +%systemd_trigger rsyslog.service %triggerpostun -- inetutils-syslogd /sbin/chkconfig --del syslog @@ -250,41 +286,51 @@ if [ -f /etc/syslog.conf.rpmsave ]; then echo "Original file from package is available as /etc/syslog.conf.rpmnew" fi -%clean -rm -rf $RPM_BUILD_ROOT - %files %defattr(644,root,root,755) %doc AUTHORS ChangeLog NEWS README %dir %{_sysconfdir}/rsyslog.d -%attr(640,root,syslog) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyslog.d/rsyslog.conf +%attr(640,root,syslog) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/rsyslog.conf %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rsyslog %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/rsyslog %attr(754,root,root) /etc/rc.d/init.d/rsyslog -%attr(640,root,root) %ghost /var/log/* +%attr(640,root,logs) %ghost /var/log/* +/lib/systemd/system/rsyslog.service %attr(755,root,root) %{_sbindir}/rsyslogd %dir %{_libdir}/rsyslog -%attr(755,root,root) %{_libdir}/rsyslog/omsnmp.so +%attr(755,root,root) %{_libdir}/rsyslog/imdiag.so +%attr(755,root,root) %{_libdir}/rsyslog/imfile.so %attr(755,root,root) %{_libdir}/rsyslog/imklog.so %attr(755,root,root) %{_libdir}/rsyslog/immark.so +%attr(755,root,root) %{_libdir}/rsyslog/impstats.so +%attr(755,root,root) %{_libdir}/rsyslog/imptcp.so %attr(755,root,root) %{_libdir}/rsyslog/imtcp.so %attr(755,root,root) %{_libdir}/rsyslog/imudp.so %attr(755,root,root) %{_libdir}/rsyslog/imuxsock.so -%attr(755,root,root) %{_libdir}/rsyslog/lmgssutil.so +%attr(755,root,root) %{_libdir}/rsyslog/lmcry_gcry.so %attr(755,root,root) %{_libdir}/rsyslog/lmnet.so +%attr(755,root,root) %{_libdir}/rsyslog/lmnetstrms.so +%attr(755,root,root) %{_libdir}/rsyslog/lmnsd_ptcp.so %attr(755,root,root) %{_libdir}/rsyslog/lmregexp.so +%attr(755,root,root) %{_libdir}/rsyslog/lmstrmsrv.so %attr(755,root,root) %{_libdir}/rsyslog/lmtcpclt.so %attr(755,root,root) %{_libdir}/rsyslog/lmtcpsrv.so +%attr(755,root,root) %{_libdir}/rsyslog/lmzlibw.so +%attr(755,root,root) %{_libdir}/rsyslog/mmexternal.so +%attr(755,root,root) %{_libdir}/rsyslog/mmsnmptrapd.so +%attr(755,root,root) %{_libdir}/rsyslog/ommail.so +%attr(755,root,root) %{_libdir}/rsyslog/omprog.so +%attr(755,root,root) %{_libdir}/rsyslog/omruleset.so +%attr(755,root,root) %{_libdir}/rsyslog/omstdout.so %attr(755,root,root) %{_libdir}/rsyslog/omtesting.so +%attr(755,root,root) %{_libdir}/rsyslog/omuxsock.so +%attr(755,root,root) %{_libdir}/rsyslog/pmaixforwardedfrom.so +%attr(755,root,root) %{_libdir}/rsyslog/pmcisconames.so +%attr(755,root,root) %{_libdir}/rsyslog/pmlastmsg.so +%attr(755,root,root) %{_libdir}/rsyslog/pmsnare.so %{_mandir}/man5/* %{_mandir}/man8/* -#%files klogd -#%defattr(644,root,root,755) -#%attr(754,root,root) /etc/rc.d/init.d/klogd -#%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/klogd -#%attr(755,root,root) %{_sbindir}/klogd - %if %{with mysql} %files mysql %defattr(644,root,root,755) @@ -303,9 +349,26 @@ rm -rf $RPM_BUILD_ROOT %files gssapi %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/rsyslog/imgssapi.so +%attr(755,root,root) %{_libdir}/rsyslog/lmgssutil.so %attr(755,root,root) %{_libdir}/rsyslog/omgssapi.so %endif -%files devel +%if %{with dbi} +%files dbi +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rsyslog/omlibdbi.so +%endif + +%files udpspoof +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rsyslog/omudpspoof.so + +%if %{with snmp} +%files snmp +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/rsyslog/omsnmp.so +%endif + +%files gnutls %defattr(644,root,root,755) -%{_libdir}/rsyslog/*.la +%attr(755,root,root) %{_libdir}/rsyslog/lmnsd_gtls.so