1 %include /usr/lib/rpm/macros.perl
2 Summary: Cacti is a PHP frontend for rrdtool
3 Summary(pl.UTF-8): Cacti - frontend w PHP do rrdtoola
8 Group: Applications/WWW
9 Source0: http://www.cacti.net/downloads/%{name}-%{version}.tar.gz
10 # Source0-md5: 63ffca5735b60bc33c68bc880f0e8042
11 Source1: %{name}.cfg.php
12 Source2: %{name}.crontab
13 Source3: http://cactiusers.org/downloads/%{name}-plugin-arch.tar.gz
14 # Source3-md5: 7079c1f366e8ea1b26c7e251e6373226
15 Source4: %{name}-apache.conf
16 Source5: %{name}-lighttpd.conf
17 Source6: %{name}-rrdpath.sql
18 Patch100: http://www.cacti.net/downloads/patches/0.8.7b/upgrade_from_086k_fix.patch
19 Patch101: http://www.cacti.net/downloads/patches/0.8.7b/snmp_auth_none_notice.patch
20 Patch102: http://www.cacti.net/downloads/patches/0.8.7b/reset_each_patch.patch
21 Patch0: %{name}-config.patch
22 Patch1: %{name}-adodb.patch
23 Patch2: %{name}-ioerror.patch
24 Patch3: %{name}-webroot.patch
25 Patch4: %{name}-linux_memory.patch
26 Patch5: %{name}-log-verbosity.patch
27 Patch6: %{name}-ss_disk-array-indices.patch
28 Patch7: %{name}-rrdtool-1.3.patch
29 Patch8: %{name}-rrdresourcecheck.patch
30 URL: http://www.cacti.net/
31 BuildRequires: rpm-perlprov
32 BuildRequires: sed >= 4.0
33 Requires(postun): /usr/sbin/userdel
34 Requires(pre): /bin/id
35 Requires(pre): /usr/sbin/useradd
36 Requires: adodb >= 4.67-1.17
39 Requires: net-snmp-utils
49 Requires: webserver(php)
53 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
55 %define _webapps /etc/webapps
56 %define _webapp %{name}
57 %define _sysconfdir %{_webapps}/%{_webapp}
58 %define _appdir /usr/share/%{name}
61 Cacti is a complete frondend to rrdtool, it stores all of the
62 nessesary information to create graphs and populate them with data in
65 The frontend is completely PHP driven. Along with being able to
66 maintain Graphs, Data Sources, and Round Robin Archives in a database,
67 cacti handles the data gathering also. There is also SNMP support for
68 those used to creating traffic graphs with MRTG.
70 %description -l pl.UTF-8
71 Cacti to pełny frontend do rrdtoola, zapamiętujący wszystkie
72 informacje potrzebne do tworzenia wykresów i wypełniające je danymi w
75 Frontend jest w pełni oparty na PHP. Oprócz zarządzania wykresami,
76 źródłami danych, archiwami Round Robin w bazie danych, cacti obsługuje
77 także gromadzenie danych. Ma także obsługę SNMP przydatną przy
78 tworzeniu wykresów ruchu przy użyciu MRTG.
81 Summary: Cacti setup package
82 Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji Cacti
83 Group: Applications/WWW
84 Requires: %{name} = %{version}-%{release}
85 Suggests: %{name}-doc = %{version}-%{release}
88 Install this package to configure initial Cacti installation. You
89 should uninstall this package when you're done, as it considered
90 insecure to keep the setup files in place.
92 %description setup -l pl.UTF-8
93 Ten pakiet należy zainstalować, aby wstępnie skonfigurować instalację
94 Cacti. Po tym pakiet powinien zostać odinstalowany, jako że jego
95 obecność może być niebezpieczna.
98 Summary: HTML Documentation for Cacti
99 Summary(pl.UTF-8): Dokumentacja do Cacti w formacie HTML
101 Requires: %{name} = %{version}-%{release}
104 HTML Documentation for Cacti.
106 %description doc -l pl.UTF-8
107 Dokumentacja do Cacti w formacie HTML.
114 %{__patch} -p1 -s < cacti-plugin-arch/cacti-plugin-0.8.7b-PA-v2.1.diff
127 # you should run this sql if your database contains path to %{_datadir}...
130 mv cacti-plugin-arch/pa.sql sql
131 rm -rf cacti-plugin-arch
135 rm -f rra/.placeholder
136 rm -f plugins/index.php
138 %{__sed} -i -e '1i#!%{_bindir}/php' scripts/*.php
141 %{__sed} -i -e '1i#!%{_bindir}/php' cli/*.php
144 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
147 rm -rf $RPM_BUILD_ROOT
148 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_appdir}/docs,/etc/cron.d,%{_sbindir}}
149 install -d $RPM_BUILD_ROOT/var/{log,lib/%{name}}
151 cp -a *.php $RPM_BUILD_ROOT%{_appdir}
152 cp -a cli images include install lib plugins resource scripts sql $RPM_BUILD_ROOT%{_appdir}
153 cp -a docs/html $RPM_BUILD_ROOT%{_appdir}/docs/html
154 mv $RPM_BUILD_ROOT{%{_appdir}/poller.php,%{_sbindir}/cacti-poller}
156 cp -a log $RPM_BUILD_ROOT/var/log/%{name}
157 cp -a rra $RPM_BUILD_ROOT/var/lib/%{name}
159 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/config.php
160 cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name}
162 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
163 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
164 cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
167 rm -rf $RPM_BUILD_ROOT
170 %useradd -u 184 -d /var/lib/%{name} -g http -c "Cacti User" cacti
173 if [ ! -f /var/log/%{name}/cacti.log ]; then
174 install -m660 -oroot -ghttp /dev/null /var/log/%{name}/cacti.log
178 if [ "$1" = "0" ]; then
182 %triggerin -- apache1 < 1.3.37-3, apache1-base
183 %webapp_register apache %{_webapp}
185 %triggerun -- apache1 < 1.3.37-3, apache1-base
186 %webapp_unregister apache %{_webapp}
188 %triggerin -- apache < 2.2.0, apache-base
189 %webapp_register httpd %{_webapp}
191 %triggerun -- apache < 2.2.0, apache-base
192 %webapp_unregister httpd %{_webapp}
194 %triggerin -- lighttpd
195 %webapp_register lighttpd %{_webapp}
197 %triggerun -- lighttpd
198 %webapp_unregister lighttpd %{_webapp}
200 %triggerpostun -- %{name} < 0.8.7b-9.5
201 if [ -f /etc/cacti/cacti.cfg.rpmsave ]; then
202 cp -f %{_sysconfdir}/config.php{,.rpmnew}
203 mv /etc/cacti/cacti.cfg.rpmsave %{_sysconfdir}/config.php
207 %defattr(644,root,root,755)
208 %doc docs/CHANGELOG docs/CONTRIB docs/README docs/text/manual.txt
209 %dir %attr(750,root,http) %{_sysconfdir}
210 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
211 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
212 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
213 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.php
214 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}
215 %attr(755,root,root) %{_sbindir}/cacti-poller
217 %exclude %{_appdir}/install
218 %exclude %{_appdir}/docs
228 %attr(755,root,root) %{_appdir}/cli/*
230 %dir %{_appdir}/scripts
231 %attr(755,root,root) %{_appdir}/scripts/*
233 %attr(750,root,http) %dir /var/lib/%{name}
234 %attr(770,root,http) %dir /var/lib/%{name}/rra
235 %attr(730,root,http) %dir /var/log/%{name}
236 %attr(660,root,http) %ghost /var/log/%{name}/cacti.log
239 %defattr(644,root,root,755)
243 %defattr(644,root,root,755)