]> git.pld-linux.org Git - packages/nagios.git/blame - nagios.spec
- up to 3.2.0
[packages/nagios.git] / nagios.spec
CommitLineData
c2fe0fab 1#
b21411a3 2# Conditional build:
e1f9e4d5 3%bcond_without gd # without statusmap and trends, which require gd library
8c8f3904
AM
4# reeenable when http://tracker.nagios.org/view.php?id=51 is fixed
5%bcond_with tests
b21411a3 6#
1b3d1540 7Summary: Host/service/network monitoring program
a02dfee5
ER
8Summary(pl.UTF-8): Program do monitorowania serwerów/usług/sieci
9Summary(pt_BR.UTF-8): Programa para monitoração de máquinas e serviços
1b3d1540 10Name: nagios
b654dd87
AM
11Version: 3.2.0
12Release: 1
0cf1a114 13License: GPL v2
1b3d1540 14Group: Networking
98d19e90 15Source0: http://dl.sourceforge.net/nagios/%{name}-%{version}.tar.gz
b654dd87 16# Source0-md5: 3566167cc60ddeaad34e7d2e26ed4a58
1b3d1540
TO
17Source1: %{name}-apache.conf
18Source2: %{name}.init
156a07c5
ER
19Source3: %{name}.sysconfig
20Source4: http://www.nagios.org/images/favicon.ico
21# Source4-md5: 1c4201c7da53d6c7e48251d3a9680449
fdea6415
ER
22Source5: %{name}-config-20090803.tar.bz2
23# Source5-md5: e4c42ebadecef32cfe14cc3085f5bae4
e785f9d9 24Source6: %{name}-lighttpd.conf
b24b4667
ER
25Patch0: %{name}-resources.patch
26Patch1: %{name}-iconv-in-libc.patch
19670bc2 27Patch2: %{name}-webapps.patch
f29ace4f 28Patch3: %{name}-cgi-http_charset.patch
d39e610a 29Patch4: %{name}-cmd-typo.patch
4af19791 30Patch5: config.patch
1b3d1540 31URL: http://www.nagios.org/
14ddd08f
JB
32BuildRequires: autoconf
33BuildRequires: automake
86522331
AG
34%if %{with gd}
35BuildRequires: gd-devel
36BuildRequires: libjpeg-devel
37BuildRequires: libpng-devel
38%endif
d4363d96 39BuildRequires: rpmbuild(macros) >= 1.268
bc56720c 40BuildRequires: sed >= 4.0
3e125558 41BuildRequires: tar >= 1:1.15.1
8a91cf36 42Requires(post,preun): /sbin/chkconfig
bc56720c 43Requires: %{name}-common = %{version}-%{release}
f40d513a 44Requires: /bin/mail
c956dc9f 45Requires: nagios-notify >= 0.13
d4363d96
ER
46Requires: rc-scripts
47Requires: sh-utils
f0724323 48Provides: nagios-core
1b3d1540 49Obsoletes: netsaint
d4363d96 50Conflicts: iputils-ping < 1:ss020124
56d92939 51BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
1b3d1540 52
e1f9e4d5
JB
53%define _sysconfdir /etc/%{name}
54%define _bindir %{_prefix}/sbin
55%define _sbindir %{_libdir}/%{name}/cgi
56%define _datadir %{_prefix}/share/%{name}
57%define _localstatedir /var/lib/%{name}
31f3ed2f
ER
58%define _webapps /etc/webapps
59%define _webapp %{name}
a9824b3a 60
1b3d1540
TO
61%description
62Nagios is a program that will monitor hosts and services on your
63network. It has the ability to email or page you when a problem arises
0cf1a114
TO
64and when a problem is resolved. Nagios is written in C and is designed
65to run under Linux (and some other *NIX variants) as a background
66process, intermittently running checks on various services that you
67specify.
1b3d1540
TO
68
69The actual service checks are performed by separate "plugin" programs
70which return the status of the checks to Nagios. The plugins are
71available in nagios-plugins packages.
72
924840b9
TO
73Nagios is successor to NetSaint.
74
eb034f05
JR
75%description -l pl.UTF-8
76Nagios to program, który monitoruje serwery oraz usługi w naszej
77sieci. Posiada on możliwość wysyłania informacji o wystąpieniu oraz
78rozwiązaniu problemu. Nagios został napisany w C oraz jest
79zaprojektowany do pracy pod Linuksem (i niektórymi innymi uniksami)
80jako proces pracujący w tle i bezustannie wykonujący pewne operacje
81sprawdzające.
1b3d1540 82
eb034f05
JR
83Właściwe sprawdzanie jest wykonywane przez osobne programy
84("wtyczki"), które zwracają informacje o statusie do Nagiosa. Wtyczki
85są dostępne na stronie w pakietach nagios-plugins.
1b3d1540 86
eb034f05 87Nagios jest następcą NetSainta.
924840b9 88
eb034f05
JR
89%description -l pt_BR.UTF-8
90O Nagios é um programa que monitora máquinas e serviços na sua rede.
1b3d1540 91Ele pode enviar um email ou um aviso de pager para o administrador
eb034f05 92quando surgir um problema e quando ele for resolvido. Nagios é escrito
0cf1a114 93em C e foi desenvolvido para rodar em plataformas Linux (e algumas
eb034f05
JR
94variações de *NIX) como um processo em segundo plano, periodicamente
95executando checagens nos diversos serviços que forem especificados.
1b3d1540 96
901d97df
ER
97%package common
98Summary: Common files needed by both nagios and nrpe
a02dfee5 99Summary(pl.UTF-8): Wspólne pliki wymagane zarówno przez nagiosa jak i nrpe
901d97df 100Group: Networking
d4363d96
ER
101Requires(postun): /usr/sbin/groupdel
102Requires(postun): /usr/sbin/userdel
901d97df 103Requires(pre): /bin/id
d4363d96 104Requires(pre): /usr/bin/getgid
901d97df
ER
105Requires(pre): /usr/sbin/groupadd
106Requires(pre): /usr/sbin/groupmod
107Requires(pre): /usr/sbin/useradd
108Requires(pre): /usr/sbin/usermod
901d97df 109Provides: group(nagios)
7970ec44 110Provides: group(nagcmd)
d4363d96 111Provides: user(nagios)
901d97df
ER
112
113%description common
114Common files needed by both nagios and nrpe.
115
eb034f05
JR
116%description common -l pl.UTF-8
117Wspólne pliki wymagane zarówno przez nagiosa jak i nrpe.
bee7c8ea 118
1b3d1540
TO
119%package cgi
120Summary: CGI webinterface for Nagios
a02dfee5 121Summary(pl.UTF-8): Interfejs WWW/CGI dla Nagiosa
7c33b67a 122Group: Applications/WWW
31f3ed2f 123# for dirs... and accessing local logs.
4a3af0fb 124Requires: %{name} = %{version}-%{release}
1bbdd399 125Requires: %{name}-imagepaks
20145354 126Requires: %{name}-theme
156a07c5 127Requires: group(http)
d4363d96 128Requires: webapps
e785f9d9 129Requires: webserver
111ce231 130Requires: webserver(access)
e785f9d9
ER
131Requires: webserver(alias)
132Requires: webserver(auth)
133Requires: webserver(cgi)
134Requires: webserver(indexfile)
1b3d1540
TO
135
136%description cgi
0964d76f
JB
137CGI webinterface for Nagios.
138
eb034f05 139%description cgi -l pl.UTF-8
0964d76f 140Interfejs CGI dla Nagiosa.
1b3d1540 141
20145354
ER
142%package theme-default
143Summary: Default Nagios theme
a02dfee5 144Summary(pl.UTF-8): Domyślny motyw Nagiosa
7c33b67a 145Group: Applications/WWW
73072fcf 146Requires: nagios-cgi = %{version}-%{release}
fdea6415 147Requires: webserver(php)
60238ce7
JB
148Provides: nagios-theme
149Obsoletes: nagios-theme
20145354
ER
150
151%description theme-default
152Original theme from Nagios.
153
eb034f05 154%description theme-default -l pl.UTF-8
60238ce7
JB
155Oryginalny motyw z Nagiosa.
156
1b3d1540 157%package devel
e5fcc454 158Summary: Include files that Nagios-related applications may compile against
a02dfee5
ER
159Summary(pl.UTF-8): Pliki nagłówkowe, wykorzystywane przez aplikacje nagiosa
160Summary(pt_BR.UTF-8): Arquivos de cabeçalho necessários para desenvolvimento de aplicativos para o Nagios
1b3d1540 161Group: Development/Libraries
e1f9e4d5 162# doesn't require base
1b3d1540
TO
163
164%description devel
e5fcc454 165This package provides include files that Nagios-related applications
1b3d1540
TO
166may compile against.
167
eb034f05
JR
168%description devel -l pl.UTF-8
169Ten pakiet dostarcza pliki nagłówkowe, które mogą być wykorzystywane
170przez aplikacje związane z nagiosem podczas kompilacji.
1b3d1540 171
eb034f05
JR
172%description devel -l pt_BR.UTF-8
173Este pacote contém arquivos de cabeçalho usados no desenvolvimento de
1b3d1540
TO
174aplicativos para o Nagios.
175
176%prep
fdea6415 177%setup -q -a5
b24b4667
ER
178%patch0 -p0
179%patch1 -p1
4a3af0fb 180%patch2 -p1
f29ace4f 181%patch3 -p1
d39e610a 182%patch4 -p1
744a134f 183%patch5 -p1
156a07c5 184
fdea6415
ER
185find -name .cvsignore | xargs rm
186
187mv nagios-config-*/objects/*.cfg sample-config/template-object
188mv nagios-config-*/*.cfg sample-config
189
156a07c5
ER
190sed -i -e '
191 s,".*/var/rw/nagios.cmd,"%{_localstatedir}/rw/nagios.cmd,
192 s,".*/libexec/eventhandlers,"%{_libdir}/%{name}/eventhandlers,
193' $(find contrib/eventhandlers -type f)
1b3d1540 194
078e0b6e 195sed -e 's,%{_prefix}/lib/,%{_libdir}/,' %{SOURCE1} > apache.conf
e785f9d9 196sed -e 's,%{_prefix}/lib/,%{_libdir}/,' %{SOURCE6} > lighttpd.conf
078e0b6e 197
744a134f
ER
198# fixup cgi config
199%{__sed} -i -e '
200 # kill trailing spaces
201 s, \+$,,
202 # use real paths
203 s,/usr/local/nagios/share,@datadir@,g
204 # we want all authorized users have default access
205 s,=nagiosadmin,=*,g
4af19791 206' sample-config/*.cfg.in
744a134f 207
1b3d1540 208%build
156a07c5 209cp -f /usr/share/automake/config.sub .
a9824b3a
TO
210%{__aclocal}
211%{__autoconf}
212%configure \
b654dd87 213 CFLAGS="%{rpmcflags} %{rpmcppflags}" \
1b3d1540
TO
214 --with-nagios-user=%{name} \
215 --with-nagios-grp=%{name} \
156a07c5
ER
216 --with-command-user=%{name} \
217 --with-command-grp=%{name} \
218 --with-lockfile=%{_localstatedir}/%{name}.pid \
e56088ed 219 --with-checkresult-dir=%{_var}/spool/%{name}/checkresults \
0964d76f 220 --with-ping_command='/bin/ping -n %%s -c %%d' \
8c8f3904
AM
221 %{!?with_gd:--disable-statusmap --disable-trends} \
222 %{?with_tests:--enable-libtap} \
223 --enable-event-broker
1b3d1540
TO
224
225%{__make} all
226
8c8f3904
AM
227%{?with_tests:%{__make} test}
228
1b3d1540
TO
229%install
230rm -rf $RPM_BUILD_ROOT
4a5ea7ae
ER
231install -d $RPM_BUILD_ROOT{/etc/{sysconfig,rc.d/init.d},%{_webapps}/%{_webapp}} \
232 $RPM_BUILD_ROOT{%{_var}/log/%{name}/archives,%{_localstatedir}/rw} \
fdea6415 233 $RPM_BUILD_ROOT%{_sysconfdir}/{plugins,objects} \
4a5ea7ae
ER
234 $RPM_BUILD_ROOT%{_libdir}/%{name}/{eventhandlers,plugins} \
235%if "%{_lib}" != "lib"
236 $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/{eventhandlers,plugins} \
237%endif
1b3d1540 238
4a5ea7ae 239install -d $RPM_BUILD_ROOT%{_includedir}/%{name}
a937d63b 240install include/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}
1b3d1540 241
aca04140 242%{__make} install-unstripped \
1b3d1540
TO
243 DESTDIR=$RPM_BUILD_ROOT \
244 INSTALL_OPTS="" \
245 INIT_OPTS="" \
246 COMMAND_OPTS=""
247
3f16fe73 248install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
156a07c5
ER
249install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/%{name}
250install %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}
251
252# install templated configuration files
fdea6415
ER
253for a in nagios.cfg resource.cfg commands.cfg contactgroups.cfg contacts.cfg templates.cfg timeperiods.cfg; do
254 cp -a sample-config/$a $RPM_BUILD_ROOT%{_sysconfdir}
255done
c0350ebc 256
31f3ed2f 257# webserver files
078e0b6e
ER
258install apache.conf $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/apache.conf
259install apache.conf $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/httpd.conf
e785f9d9 260install lighttpd.conf $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/lighttpd.conf
744a134f 261cp -a sample-config/cgi.cfg $RPM_BUILD_ROOT%{_webapps}/%{_webapp}
31f3ed2f
ER
262> $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/passwd
263echo 'nagios:' > $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/group
156a07c5 264
fdea6415 265# install event handlers, sample config
4a5ea7ae 266install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
156a07c5 267cp -a contrib/eventhandlers $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
fdea6415
ER
268cp -a sample-config $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
269find $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} -name '*.in' | xargs rm
156a07c5
ER
270
271# Object data/cache files
19cc8e59 272for i in {objects.{cache,precache},{comments,downtime,retention,status}.dat,nagios.tmp}; do
156a07c5 273 > $RPM_BUILD_ROOT%{_localstatedir}/$i
b0a1a45f 274done
156a07c5 275> $RPM_BUILD_ROOT%{_localstatedir}/rw/nagios.cmd
e58661fb 276
1b3d1540
TO
277%clean
278rm -rf $RPM_BUILD_ROOT
279
1b3d1540 280%post
19cc8e59 281for i in %{_localstatedir}/{objects.{cache,precache},{comments,downtime,retention,status}.dat}; do
156a07c5
ER
282 [ ! -f $i ] && touch $i
283 chown root:nagios $i
284 chmod 664 $i
285done
286
fe2307cb 287/sbin/chkconfig --add %{name}
09b7a682 288%service %{name} restart "Nagios service"
fe2307cb 289
1b3d1540
TO
290%preun
291if [ "$1" = "0" ] ; then
fe2307cb 292 %service %{name} stop
1b3d1540
TO
293 /sbin/chkconfig --del %{name}
294fi
295
901d97df 296%pre common
7970ec44 297# rename group netsaint -> nagios
15281e6a 298if [ "`getgid netsaint 2>/dev/null`" = "72" ]; then
901d97df
ER
299 /usr/sbin/groupmod -n nagios netsaint
300fi
7970ec44
ER
301# rename group nagios-data -> nagcmd
302if [ "`getgid nagios-data 2>/dev/null`" = "147" ]; then
303 /usr/sbin/groupmod -n nagcmd nagios-data
304fi
901d97df 305%groupadd -g 72 nagios
7970ec44 306%groupadd -g 147 -f nagcmd
901d97df 307if [ -n "`id -u netsaint 2>/dev/null`" ] && [ "`id -u netsaint`" = "72" ]; then
7970ec44 308 /usr/sbin/usermod -d %{_libdir}/nagios -l nagios -c "Nagios Daemon" -G nagcmd netsaint
901d97df 309fi
7970ec44 310%useradd -u 72 -d %{_libdir}/nagios -s /bin/false -c "Nagios Daemon" -g nagios -G nagcmd nagios
901d97df
ER
311
312%postun common
4b3055f2 313if [ "$1" = "0" ]; then
56d92939 314 %userremove nagios
315 %groupremove nagios
7970ec44 316 %groupremove nagcmd
4b3055f2 317fi
318
7441a39b 319%post cgi
156a07c5
ER
320if [ "$1" = 1 ]; then
321%banner %{name} -e <<EOF
322NOTE:
31f3ed2f 323You need to add user to %{_webapps}/%{_webapp}/passwd and
fe2307cb 324%{_webapps}/%{_webapp}/group to access Nagios via web.
156a07c5
ER
325
326EOF
327fi
328
91b73a43 329%triggerin cgi -- apache1 < 1.3.37-3, apache1-base
7970ec44 330%addusertogroup http nagcmd
31f3ed2f 331%webapp_register apache %{_webapp}
26c807b6 332
91b73a43 333%triggerun cgi -- apache1 < 1.3.37-3, apache1-base
31f3ed2f 334%webapp_unregister apache %{_webapp}
26c807b6 335
44abff38 336%triggerin cgi -- apache < 2.2.0, apache-base
7970ec44 337%addusertogroup http nagcmd
31f3ed2f 338%webapp_register httpd %{_webapp}
26c807b6 339
44abff38 340%triggerun cgi -- apache < 2.2.0, apache-base
31f3ed2f 341%webapp_unregister httpd %{_webapp}
156a07c5 342
e785f9d9 343%triggerin cgi -- lighttpd
7970ec44 344%addusertogroup lighttpd nagcmd
e785f9d9
ER
345%webapp_register lighttpd %{_webapp}
346
347%triggerun cgi -- lighttpd
348%webapp_unregister lighttpd %{_webapp}
349
156a07c5
ER
350%triggerpostun -- nagios-cgi < 2.0-0.b3.21
351chown root:http %{_sysconfdir}/cgi.cfg
352
e56088ed 353%triggerpostun -- nagios < 3.1.2-4
fdea6415 354# restore lost files
53326298 355for a in dependencies.cfg services.cfg serviceextinfo.cfg hosts.cfg hostgroups.cfg hostextinfo.cfg escalations.cfg checkcommands.cfg misccommands.cfg; do
fdea6415
ER
356 if [ -f %{_sysconfdir}/$a.rpmsave -a ! -f %{_sysconfdir}/$a ]; then
357 mv -f %{_sysconfdir}/$a{.rpmsave,}
31f3ed2f
ER
358 fi
359done
e56088ed 360%{__sed} -i -e 's,^check_result_path=.*,check_result_path=%{_var}/spool/%{name}/checkresults,' %{_sysconfdir}/nagios.cfg
31f3ed2f 361
1b3d1540
TO
362%files
363%defattr(644,root,root,755)
156a07c5 364%doc Changelog README* UPGRADING INSTALLING LICENSE
7970ec44 365%attr(640,root,nagcmd) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/nagios.cfg
156a07c5 366%attr(640,root,nagios) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/[!n]*.cfg
156a07c5 367
3f16fe73 368%attr(754,root,root) /etc/rc.d/init.d/%{name}
156a07c5
ER
369%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/%{name}
370
e1f9e4d5 371%attr(755,root,root) %{_bindir}/%{name}
156a07c5
ER
372%attr(755,root,root) %{_bindir}/nagiostats
373
7970ec44
ER
374%attr(770,root,nagcmd) %dir %{_var}/log/%{name}
375%attr(770,root,nagcmd) %dir %{_var}/log/%{name}/archives
156a07c5 376
7970ec44
ER
377%attr(770,root,nagcmd) %dir %{_localstatedir}
378%attr(2770,root,nagcmd) %dir %{_localstatedir}/rw
379%attr(660,nagios,nagcmd) %ghost %{_localstatedir}/rw/nagios.cmd
3e125558 380%attr(664,root,nagios) %ghost %{_localstatedir}/objects.cache
19cc8e59 381%attr(664,root,nagios) %ghost %{_localstatedir}/objects.precache
3e125558
ER
382%attr(664,root,nagios) %ghost %{_localstatedir}/*.dat
383%attr(664,root,nagios) %ghost %{_localstatedir}/%{name}.tmp
156a07c5 384
3d336594 385%dir %{_var}/spool
f57d3787 386%attr(770,root,nagios) %dir %{_var}/spool/%{name}
e56088ed 387%attr(770,root,nagios) %dir %{_var}/spool/%{name}/checkresults
3d336594 388
156a07c5
ER
389%{_examplesdir}/%{name}-%{version}
390
901d97df
ER
391%files common
392%defattr(644,root,root,755)
7970ec44 393%attr(750,root,nagcmd) %dir %{_sysconfdir}
3e125558 394%attr(2750,root,nagios) %dir %{_sysconfdir}/plugins
fdea6415 395%attr(2750,root,nagios) %dir %{_sysconfdir}/objects
901d97df
ER
396%dir %{_libdir}/%{name}
397%dir %{_libdir}/%{name}/plugins
156a07c5 398%dir %{_libdir}/%{name}/eventhandlers
1b3d1540 399
4a5ea7ae
ER
400%if "%{_lib}" != "lib"
401%dir %{_prefix}/lib/%{name}
402%dir %{_prefix}/lib/%{name}/plugins
403%dir %{_prefix}/lib/%{name}/eventhandlers
404%endif
405
1b3d1540
TO
406%files cgi
407%defattr(644,root,root,755)
31f3ed2f
ER
408%dir %attr(750,root,http) %{_webapps}/%{_webapp}
409%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/apache.conf
410%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/httpd.conf
e785f9d9 411%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/lighttpd.conf
31f3ed2f
ER
412%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/cgi.cfg
413%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/passwd
414%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/group
156a07c5
ER
415%dir %{_sbindir}
416%attr(755,root,root) %{_sbindir}/*.cgi
20145354
ER
417
418%dir %{_datadir}
37af85b3 419%dir %{_datadir}/includes
73072fcf
ER
420%dir %{_datadir}/images
421%dir %{_datadir}/stylesheets
20145354
ER
422%{_datadir}/favicon.ico
423%{_datadir}/robots.txt
73072fcf
ER
424%{_datadir}/contexthelp
425%{_datadir}/docs
426%{_datadir}/media
427%{_datadir}/ssi
20145354
ER
428
429%files theme-default
430%defattr(644,root,root,755)
37af85b3
AM
431%{_datadir}/*.php
432%{_datadir}/includes/*
73072fcf
ER
433%{_datadir}/images/*
434%{_datadir}/stylesheets/*
1b3d1540
TO
435
436%files devel
437%defattr(644,root,root,755)
438%dir %{_includedir}/%{name}
439%{_includedir}/%{name}/*.h
This page took 0.362868 seconds and 4 git commands to generate.