]> git.pld-linux.org Git - SPECS.git/blob - mrtg.spec
SPECS updated Wed 28 Jul 14:48:01 CEST 2021
[SPECS.git] / mrtg.spec
1 # TODO:
2 # - update _htmldir (/usr/share for static data, /var/lib for generated)
3 # - accept multiple config definition in /etc/sysconfig/mrtg by cron-started
4 #   mrtg. Thats why sysconfig file is in main package.
5 # - start mrtg cronjob as non-root user (configurable in sysconfig file, because
6 #   root is required for some sort of stats)
7
8 Summary:        Multi Router Traffic Grapher
9 Summary(es.UTF-8):      Herramienta para hacer gráficos de empleo en la red
10 Summary(pl.UTF-8):      MRTG - generator obrazów obciążenia łącz
11 Summary(pt_BR.UTF-8):   Ferramenta para fazer gráficos do uso da rede
12 Summary(ru.UTF-8):      MRTG - программа изображения граффиков, изображающих траффик на множестве роутеров
13 Name:           mrtg
14 Version:        2.17.7
15 Release:        1
16 License:        GPL
17 Group:          Applications/Networking
18 Source0:        http://oss.oetiker.ch/mrtg/pub/%{name}-%{version}.tar.gz
19 # Source0-md5:  eada3870c0419e425299401486600d95
20 Source1:        %{name}.cfg
21 Source2:        %{name}.init
22 Source3:        %{name}.sysconfig
23 Source4:        %{name}.logrotate
24 Source5:        %{name}.cron
25 Source6:        %{name}-indexmaker.cron
26 Source7:        %{name}.tmpfiles
27 Patch0:         %{name}.path.patch
28 Patch1:         %{name}-Socket6_conflicts.patch
29 URL:            http://oss.oetiker.ch/mrtg/
30 BuildRequires:  autoconf
31 BuildRequires:  automake
32 BuildRequires:  gd-devel >= 2.0.1
33 BuildRequires:  libpng-devel >= 1.0.8
34 BuildRequires:  perl-SNMP_Session >= 1.05
35 BuildRequires:  perl-devel >= 1:5.8.0
36 BuildRequires:  rpm-perlprov >= 4.1-13
37 BuildRequires:  rpmbuild(macros) >= 1.268
38 Requires:       perl(SNMP_util) >= 1.04
39 Conflicts:      logrotate < 3.8.0
40 Suggests:       rrdtool
41 Suggests:       perl-rrdtool
42 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
43
44 %define         _htmldir        /home/services/httpd/html/mrtg
45
46 %description
47 The Multi Router Traffic Grapher (MRTG) is a tool to monitor the
48 traffic load on network-links. MRTG generates HTML pages containing
49 PNG images which provide a LIVE visual representation of this traffic.
50
51 %description -l es.UTF-8
52 Herramienta para hacer gráficos de empleo en la red.
53
54 %description -l pl.UTF-8
55 Multi Router Traffic Grapher (MRTG) to narzędzie służące do
56 monitorowania obciążenia łącz sieciowych. MRTG generuje strony HTML
57 zawierające obrazki PNG przedstawiające aktualne obciążenie łącz.
58
59 %description -l pt_BR.UTF-8
60 O MRTG é uma ferramenta parar monitorar o tráfego de links de rede.
61 Ele gera páginas HTML contendo imagens GIF que provêm uma sensação
62 realística deste gráfico.
63
64 %package cron
65 Summary:        Files that allow running mrtg via crond
66 Summary(pl.UTF-8):      Pliki pozwalające uruchamiać mrtg z crona
67 Group:          Applications/Networking
68 Requires:       %{name} = %{version}-%{release}
69 Requires:       crondaemon
70 Provides:       mrtg-start
71 Obsoletes:      mrtg-init
72 Obsoletes:      mrtg-start
73
74 %description cron
75 Files that allow running mrtg via crond.
76
77 %description cron -l pl.UTF-8
78 Pliki pozwalające uruchamiać mrtg z crona.
79
80 %package init
81 Summary:        Files that allow running mrtg via rc-scripts
82 Summary(pl.UTF-8):      Pliki pozwalające uruchamiać mrtg z poziomu rc-scripts
83 Group:          Daemons
84 Requires(post,preun):   /sbin/chkconfig
85 Requires:       %{name} = %{version}-%{release}
86 Requires:       crondaemon
87 Requires:       rc-scripts >= 0.4.3.7
88 Provides:       mrtg-start
89 Obsoletes:      mrtg-cron
90 Obsoletes:      mrtg-start
91
92 %description init
93 Files that allow running mrtg via rc-scripts.
94
95 %description init -l pl.UTF-8
96 Pliki pozwalające uruchamiać mrtg z poziomu rc-scripts.
97
98 %prep
99 %setup -q
100 %patch0 -p1
101 %patch1 -p1
102 rm -rf lib/mrtg2/Pod
103
104 %build
105 %{__aclocal}
106 %{__autoconf}
107 %configure
108 %{__make}
109
110 %install
111 rm -rf $RPM_BUILD_ROOT
112 install -d $RPM_BUILD_ROOT{/etc/{cron.d,rc.d/init.d,sysconfig,logrotate.d},%{_sysconfdir}/mrtg/conf.d,%{_htmldir}} \
113         $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/%{name},%{perl_vendorlib},%{_mandir}/man1} \
114         $RPM_BUILD_ROOT{/var/log/{mrtg,archive/mrtg},/var/{lib,run}/mrtg} \
115         $RPM_BUILD_ROOT/usr/lib/tmpfiles.d
116
117 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/mrtg
118 install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/mrtg
119 cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/mrtg
120 cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/mrtg
121 install -p %{SOURCE5} $RPM_BUILD_ROOT%{_bindir}/mrtg-cronjob
122 install -p %{SOURCE6} $RPM_BUILD_ROOT%{_bindir}/indexmaker-cronjob
123 ln -sf %{_sysconfdir}/mrtg/mrtg.cfg $RPM_BUILD_ROOT%{_htmldir}/mrtg.cfg
124 cp -a images/* $RPM_BUILD_ROOT%{_htmldir}
125 install %{SOURCE7} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
126
127 install -p bin/{cfgmaker,indexmaker} $RPM_BUILD_ROOT%{_libdir}/mrtg
128 install -p bin/{rateup,mrtg} $RPM_BUILD_ROOT%{_bindir}
129 cp -a lib/mrtg2/locales_mrtg.pm $RPM_BUILD_ROOT%{perl_vendorlib}
130 cp -a lib/mrtg2/MRTG_lib.pm $RPM_BUILD_ROOT%{perl_vendorlib}
131 cp -a doc/*.1   $RPM_BUILD_ROOT%{_mandir}/man1
132
133 ln -sf ../mrtg.cfg $RPM_BUILD_ROOT%{_sysconfdir}/mrtg/conf.d
134
135 tar -cf contrib.tar contrib
136
137 cat  << EOF > $RPM_BUILD_ROOT/etc/cron.d/mrtg
138 */5 * * * * stats umask 022; /bin/nice -n 19 %{_bindir}/mrtg-cronjob
139 */5 * * * * stats umask 022; /bin/nice -n 19 %{_bindir}/indexmaker-cronjob 2> /dev/null
140 EOF
141
142 sed -i 's#/''usr/lib#%{_libdir}#' $RPM_BUILD_ROOT%{_bindir}/indexmaker-cronjob
143
144 %clean
145 rm -rf $RPM_BUILD_ROOT
146
147 %post init
148 /sbin/chkconfig --add mrtg
149 %service mrtg restart
150
151 %preun init
152 if [ "$1" = "0" ]; then
153         %service mrtg stop
154         /sbin/chkconfig --del mrtg
155 fi
156
157 %files
158 %defattr(644,root,root,755)
159 %doc contrib.tar doc/*.txt
160 %attr(751,root,stats) %dir %{_sysconfdir}/mrtg
161 %attr(751,root,stats) %dir %{_sysconfdir}/mrtg/conf.d
162 %attr(640,root,stats) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mrtg/mrtg.cfg
163 %attr(640,root,stats) %config(noreplace,missingok) %verify(not md5 mtime size) %{_sysconfdir}/mrtg/conf.d/mrtg.cfg
164 %attr(640,root,stats) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/mrtg
165 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/mrtg
166 %attr(755,stats,logs) %dir %{_htmldir}
167 %{_htmldir}/*
168 %{perl_vendorlib}/*.pm
169 %attr(755,root,root) %{_bindir}/mrtg
170 %attr(755,root,root) %{_bindir}/rateup
171 %dir %{_libdir}/mrtg
172 %attr(755,root,root) %{_libdir}/mrtg/cfgmaker
173 %attr(755,root,root) %{_libdir}/mrtg/indexmaker
174 %attr(1751,stats,logs) %dir /var/log/mrtg
175 %attr(751,stats,logs) %dir /var/log/archive/mrtg
176 %attr(755,stats,stats) %dir /var/run/mrtg
177 %attr(755,stats,stats) %dir /var/lib/mrtg
178 /usr/lib/tmpfiles.d/%{name}.conf
179 %{_mandir}/man1/*
180
181 %files cron
182 %defattr(644,root,root,755)
183 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/mrtg
184 %attr(755,root,root) %{_bindir}/indexmaker-cronjob
185 %attr(755,root,root) %{_bindir}/mrtg-cronjob
186
187 %files init
188 %defattr(644,root,root,755)
189 %attr(754,root,root) /etc/rc.d/init.d/mrtg
This page took 0.196124 seconds and 3 git commands to generate.