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 Patch1: %{name}-upgrade_from_086k_fix.patch
18 Patch2: http://www.cacti.net/downloads/patches/0.8.7b/snmp_auth_none_notice.patch
19 Patch3: http://www.cacti.net/downloads/patches/0.8.7b/reset_each_patch.patch
20 Patch4: %{name}-config.patch
21 Patch5: %{name}-adodb.patch
22 Patch6: %{name}-ioerror.patch
23 URL: http://www.cacti.net/
24 BuildRequires: rpm-perlprov
25 BuildRequires: sed >= 4.0
26 Requires(postun): /usr/sbin/userdel
27 Requires(pre): /bin/id
28 Requires(pre): /usr/sbin/useradd
29 Requires: adodb >= 4.67-1.17
32 Requires: net-snmp-utils
42 Requires: webserver(php)
46 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48 %define _webapps /etc/webapps
49 %define _webapp %{name}
50 %define _sysconfdir %{_webapps}/%{_webapp}
51 %define _appdir /usr/share/%{name}
54 Cacti is a complete frondend to rrdtool, it stores all of the
55 nessesary information to create graphs and populate them with data in
58 The frontend is completely PHP driven. Along with being able to
59 maintain Graphs, Data Sources, and Round Robin Archives in a database,
60 cacti handles the data gathering also. There is also SNMP support for
61 those used to creating traffic graphs with MRTG.
63 %description -l pl.UTF-8
64 Cacti to pełny frontend do rrdtoola, zapamiętujący wszystkie
65 informacje potrzebne do tworzenia wykresów i wypełniające je danymi w
68 Frontend jest w pełni oparty na PHP. Oprócz zarządzania wykresami,
69 źródłami danych, archiwami Round Robin w bazie danych, cacti obsługuje
70 także gromadzenie danych. Ma także obsługę SNMP przydatną przy
71 tworzeniu wykresów ruchu przy użyciu MRTG.
74 Summary: Cacti setup package
75 Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji Cacti
76 Group: Applications/WWW
77 Requires: %{name} = %{version}-%{release}
78 Suggests: %{name}-doc = %{version}-%{release}
81 Install this package to configure initial Cacti installation. You
82 should uninstall this package when you're done, as it considered
83 insecure to keep the setup files in place.
86 Summary: HTML Documentation for Cacti
88 Requires: %{name} = %{version}-%{release}
91 HTML Documentation for Cacti.
98 %{__patch} -p1 -s < cacti-plugin-arch/cacti-plugin-0.8.7b-PA-v2.1.diff
106 mv cacti-plugin-arch/pa.sql sql
107 rm -rf cacti-plugin-arch
110 rm -f rra/.placeholder
111 rm -f plugins/index.php
113 %{__sed} -i -e '1i#!%{_bindir}/php' scripts/*.php
116 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
119 rm -rf $RPM_BUILD_ROOT
120 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_appdir}/docs,/etc/cron.d,%{_sbindir}}
121 install -d $RPM_BUILD_ROOT/var/{log,lib/%{name}}
123 cp -a *.php $RPM_BUILD_ROOT%{_appdir}
124 cp -a cli images include install lib plugins resource scripts sql $RPM_BUILD_ROOT%{_appdir}
125 cp -a docs/html $RPM_BUILD_ROOT%{_appdir}/docs/html
126 mv $RPM_BUILD_ROOT{%{_appdir}/poller.php,%{_sbindir}/cacti-poller}
128 cp -a log $RPM_BUILD_ROOT/var/log/%{name}
129 cp -a rra $RPM_BUILD_ROOT/var/lib/%{name}
131 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/config.php
132 # TODO: switch to user cacti here
133 cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name}
135 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
136 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
137 cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
140 rm -rf $RPM_BUILD_ROOT
143 %useradd -u 184 -d /var/lib/%{name} -g http -c "Cacti User" cacti
146 if [ ! -f /var/log/%{name}/cacti.log ]; then
147 install -m660 -oroot -ghttp /dev/null /var/log/%{name}/cacti.log
151 if [ "$1" = "0" ]; then
155 %triggerin -- apache1 < 1.3.37-3, apache1-base
156 %webapp_register apache %{_webapp}
158 %triggerun -- apache1 < 1.3.37-3, apache1-base
159 %webapp_unregister apache %{_webapp}
161 %triggerin -- apache < 2.2.0, apache-base
162 %webapp_register httpd %{_webapp}
164 %triggerun -- apache < 2.2.0, apache-base
165 %webapp_unregister httpd %{_webapp}
167 %triggerin -- lighttpd
168 %webapp_register lighttpd %{_webapp}
170 %triggerun -- lighttpd
171 %webapp_unregister lighttpd %{_webapp}
173 %triggerpostun -- %{name} < 0.8.7b-9.5
174 if [ -f /etc/cacti/cacti.cfg.rpmsave ]; then
175 cp -f %{_sysconfdir}/config.php{,.rpmnew}
176 mv /etc/cacti/cacti.cfg.rpmsave %{_sysconfdir}/config.php
180 %defattr(644,root,root,755)
181 %doc docs/CHANGELOG docs/CONTRIB docs/README docs/text/manual.txt
182 %dir %attr(750,root,http) %{_sysconfdir}
183 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
184 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
185 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
186 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.php
187 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}
188 %attr(755,root,root) %{_sbindir}/cacti-poller
190 %exclude %{_appdir}/install
191 %exclude %{_appdir}/docs
201 %dir %{_appdir}/scripts
202 %attr(755,root,root) %{_appdir}/scripts/*
204 %attr(750,root,http) %dir /var/lib/%{name}
205 %attr(770,root,http) %dir /var/lib/%{name}/rra
206 %attr(730,root,http) %dir /var/log/%{name}
207 %attr(660,root,http) %ghost /var/log/%{name}/cacti.log
210 %defattr(644,root,root,755)
214 %defattr(644,root,root,755)