2 # - patch source to use adodb system path instead of symlinking
3 # - R: /usr/bin/php should came from rpm autodeps (chmod +x or sth)
4 # - UPDATE OR DROP plugin patch
5 %include /usr/lib/rpm/macros.perl
6 Summary: Cacti is a PHP frontend for rrdtool
7 Summary(pl.UTF-8): Cacti - frontend w PHP do rrdtoola
12 Group: Applications/WWW
13 Source0: http://www.cacti.net/downloads/%{name}-%{version}.tar.gz
14 # Source0-md5: 7d298e496058ec91f6d1ecdc97e0cca5
18 Patch100: %{name}-plugin-0.8.6j.diff
19 Patch101: %{name}-config.patch
20 URL: http://www.cacti.net/
21 BuildRequires: rpm-perlprov
22 Requires: /usr/bin/php
23 Requires: adodb >= 4.67-1.17
26 Requires: net-snmp-utils
34 Requires: webserver(php)
36 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
38 %define webadminroot /usr/share/%{name}
41 Cacti is a complete frondend to rrdtool, it stores all of the
42 nessesary information to create graphs and populate them with data in
45 The frontend is completely PHP driven. Along with being able to
46 maintain Graphs, Data Sources, and Round Robin Archives in a database,
47 cacti handles the data gathering also. There is also SNMP support for
48 those used to creating traffic graphs with MRTG.
50 %description -l pl.UTF-8
51 Cacti to pełny frontend do rrdtoola, zapamiętujący wszystkie
52 informacje potrzebne do tworzenia wykresów i wypełniające je danymi
55 Frontend jest w pełni oparty na PHP. Oprócz zarządzania wykresami,
56 źródłami danych, archiwami Round Robin w bazie danych, cacti
57 obsługuje także gromadzenie danych. Ma także obsługę SNMP
58 przydatną przy tworzeniu wykresów ruchu przy użyciu MRTG.
68 rm -rf $RPM_BUILD_ROOT
69 install -d $RPM_BUILD_ROOT%{webadminroot}
70 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{%{name},cron.d}
71 install -d $RPM_BUILD_ROOT/var/{log,lib/%{name}}
72 cp -aRf * $RPM_BUILD_ROOT%{webadminroot}
73 ln -s . $RPM_BUILD_ROOT%{webadminroot}/%{name}
75 # TODO: move this to SOURCES. it's a lot better to backtrack changes
76 # if it's a separate file.
77 cat << 'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/%{name}.cfg
79 $database_type = 'mysql';
80 $database_default = 'cacti';
81 $database_hostname = 'localhost';
82 $database_username = 'cactiuser';
83 $database_password = 'cactiuser';
86 // $plugins[] = 'thold';
87 // $plugins[] = 'monitor';
88 // $plugins[] = 'discovery';
90 /* Do not edit this line */
93 /* This is full URL Path to the Cacti installation
94 For example, if your cacti was accessible by http://server/cacti/ you would user '/cacti/'
95 as the url path. For just http://server/ use '/'
97 $config['url_path'] = '/cacti/';
102 mv $RPM_BUILD_ROOT%{webadminroot}/log $RPM_BUILD_ROOT/var/log/%{name}
103 ln -sf /var/log/cacti $RPM_BUILD_ROOT%{webadminroot}/log
105 mv $RPM_BUILD_ROOT%{webadminroot}/rra $RPM_BUILD_ROOT/var/lib/%{name}
106 ln -sf /var/lib/%{name}/rra $RPM_BUILD_ROOT%{webadminroot}/rra
107 ln -sf %{_datadir}/php/adodb $RPM_BUILD_ROOT%{webadminroot}/lib/adodb
109 cat << 'EOF' > $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/%{name}
110 */5 * * * * http umask 022; %{_bindir}/php %{webadminroot}/poller.php > /dev/null 2>&1
114 rm -rf $RPM_BUILD_ROOT
117 %defattr(644,root,root,755)
118 %doc docs/CHANGELOG docs/CONTRIB docs/README
119 %attr(750,root,http) %dir %{_sysconfdir}/%{name}
120 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/%{name}.cfg
121 %attr(770,root,http) %dir /var/log/%{name}
122 %attr(660,root,http) %ghost /var/log/%{name}/*.log
123 %attr(750,root,http) %dir /var/lib/%{name}
124 %attr(770,root,http) %dir /var/lib/%{name}/rra
125 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}