]>
Commit | Line | Data |
---|---|---|
bc79e792 | 1 | %define pia_ver 3.1 |
9f35c748 | 2 | Summary: Cacti is a PHP frontend for rrdtool |
bf643d4f | 3 | Summary(pl.UTF-8): Cacti - frontend w PHP do rrdtoola |
94614147 | 4 | Name: cacti |
68f12f8a | 5 | Version: 0.8.8a |
bec28b00 | 6 | Release: 3 |
bc79e792 | 7 | License: GPL v2 |
94614147 | 8 | Group: Applications/WWW |
ffbcce38 | 9 | Source0: http://www.cacti.net/downloads/%{name}-%{version}.tar.gz |
68f12f8a | 10 | # Source0-md5: a4da682dab9a88a2e0edb1728bf531ae |
a1abeca3 | 11 | Source2: %{name}.crontab |
de4cec3c GS |
12 | Source3: %{name}-apache.conf |
13 | Source4: %{name}-lighttpd.conf | |
14 | Source5: %{name}-rrdpath.sql | |
af389505 | 15 | Source7: %{name}.logrotate |
cfee1525 | 16 | Patch0: mysql-socket.patch |
de4cec3c GS |
17 | Patch1: %{name}-config.patch |
18 | Patch2: %{name}-adodb.patch | |
19 | Patch3: %{name}-ioerror.patch | |
20 | Patch4: %{name}-webroot.patch | |
21 | Patch5: %{name}-linux_memory.patch | |
22 | Patch6: %{name}-log-verbosity.patch | |
23 | Patch7: %{name}-ss_disk-array-indices.patch | |
ac01d3f9 | 24 | Patch8: host_name-url.patch |
e79e3b18 | 25 | # http://www.cacti.net/download_patches.php |
4dab892a ER |
26 | Patch100: http://www.cacti.net/downloads/patches/%{version}/snmpv3_priv_proto_none.patch |
27 | # Patch100-md5: f5fbee2af1000c8f188b8688dec4ddd8 | |
761b4fb2 | 28 | URL: http://www.cacti.net/ |
344e658b | 29 | BuildRequires: sed >= 4.0 |
f4a0dd1f ER |
30 | Requires(postun): /usr/sbin/userdel |
31 | Requires(pre): /bin/id | |
32 | Requires(pre): /usr/sbin/useradd | |
f44cea91 | 33 | Requires: adodb >= 4.67-1.17 |
bc79e792 | 34 | Requires: cacti-plugin-boost >= 5.0 |
e9300b9e | 35 | Requires: crondaemon |
f4a0dd1f | 36 | Requires: group(http) |
94614147 | 37 | Requires: net-snmp-utils |
d4797a66 | 38 | Requires: php(core) >= 5.2.13-10 |
6e11204f ER |
39 | Requires: php(mysql) |
40 | Requires: php(pcre) | |
41 | Requires: php(session) | |
42 | Requires: php(snmp) | |
43 | Requires: php(xml) | |
c8f292cd | 44 | Requires: rrdtool |
4b6cd69a | 45 | Requires: webapps |
e4f2f951 | 46 | Requires: webserver |
cce68540 | 47 | Requires: webserver(access) |
7d4ec5c1 | 48 | Requires: webserver(alias) |
09dccb3a | 49 | Requires: webserver(indexfile) |
f5a0e42f | 50 | Requires: webserver(php) |
578edcb5 | 51 | Suggests: cacti-spine |
24fa0556 | 52 | Suggests: php-gd |
d839b321 | 53 | Provides: cacti(pia) = %{pia_ver} |
f4a0dd1f | 54 | Provides: user(cacti) |
33c70cd1 | 55 | Obsoletes: cacti-add_template |
9f8f6fd2 | 56 | Obsoletes: cacti-plugin-update |
6e11204f | 57 | Conflicts: logrotate < 3.8.0 |
6587a5d5 | 58 | BuildArch: noarch |
94614147 JB |
59 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
60 | ||
4b6cd69a ER |
61 | %define _webapps /etc/webapps |
62 | %define _webapp %{name} | |
63 | %define _sysconfdir %{_webapps}/%{_webapp} | |
64 | %define _appdir /usr/share/%{name} | |
6587a5d5 JB |
65 | |
66 | %description | |
67 | Cacti is a complete frondend to rrdtool, it stores all of the | |
94614147 JB |
68 | nessesary information to create graphs and populate them with data in |
69 | a MySQL database. | |
6587a5d5 | 70 | |
94614147 JB |
71 | The frontend is completely PHP driven. Along with being able to |
72 | maintain Graphs, Data Sources, and Round Robin Archives in a database, | |
73 | cacti handles the data gathering also. There is also SNMP support for | |
74 | those used to creating traffic graphs with MRTG. | |
6587a5d5 | 75 | |
41840fab | 76 | %description -l pl.UTF-8 |
350cedee | 77 | Cacti to pełny frontend do rrdtoola, zapamiętujący wszystkie |
bf643d4f ER |
78 | informacje potrzebne do tworzenia wykresów i wypełniające je danymi w |
79 | bazie MySQL. | |
c9dfb888 | 80 | |
350cedee | 81 | Frontend jest w pełni oparty na PHP. Oprócz zarządzania wykresami, |
bf643d4f ER |
82 | źródłami danych, archiwami Round Robin w bazie danych, cacti obsługuje |
83 | także gromadzenie danych. Ma także obsługę SNMP przydatną przy | |
84 | tworzeniu wykresów ruchu przy użyciu MRTG. | |
c9dfb888 | 85 | |
4b6cd69a ER |
86 | %package setup |
87 | Summary: Cacti setup package | |
88 | Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji Cacti | |
89 | Group: Applications/WWW | |
90 | Requires: %{name} = %{version}-%{release} | |
d6d42868 | 91 | Suggests: %{name}-doc = %{version}-%{release} |
4b6cd69a ER |
92 | |
93 | %description setup | |
94 | Install this package to configure initial Cacti installation. You | |
95 | should uninstall this package when you're done, as it considered | |
96 | insecure to keep the setup files in place. | |
97 | ||
a40c4ad5 JB |
98 | %description setup -l pl.UTF-8 |
99 | Ten pakiet należy zainstalować, aby wstępnie skonfigurować instalację | |
100 | Cacti. Po tym pakiet powinien zostać odinstalowany, jako że jego | |
101 | obecność może być niebezpieczna. | |
102 | ||
4b6cd69a ER |
103 | %package doc |
104 | Summary: HTML Documentation for Cacti | |
a40c4ad5 | 105 | Summary(pl.UTF-8): Dokumentacja do Cacti w formacie HTML |
4b6cd69a ER |
106 | Group: Documentation |
107 | Requires: %{name} = %{version}-%{release} | |
108 | ||
109 | %description doc | |
110 | HTML Documentation for Cacti. | |
111 | ||
a40c4ad5 JB |
112 | %description doc -l pl.UTF-8 |
113 | Dokumentacja do Cacti w formacie HTML. | |
114 | ||
6587a5d5 | 115 | %prep |
ffbcce38 | 116 | %setup -q |
482f9753 | 117 | # official patches |
4dab892a | 118 | %patch100 -p1 |
482f9753 | 119 | |
cfee1525 | 120 | %patch0 -p1 |
0482abbd | 121 | %patch1 -p1 |
f23be293 | 122 | %patch2 -p1 |
14544804 | 123 | %patch3 -p1 |
d6d42868 ER |
124 | %patch4 -p1 |
125 | %patch5 -p1 | |
126 | %patch6 -p1 | |
5e8efd1f | 127 | %patch7 -p1 |
de4cec3c | 128 | %patch8 -p1 |
6587a5d5 | 129 | |
4b6cd69a ER |
130 | mkdir -p sql |
131 | mv *.sql sql | |
86a72dca | 132 | # you should run this sql if your database contains path to %{_datadir}... |
3d0c4fef | 133 | cp -p %{SOURCE5} sql |
4b6cd69a | 134 | |
af389505 ER |
135 | %{__rm} -r lib/adodb |
136 | %{__rm} log/.htaccess | |
137 | %{__rm} cli/.htaccess | |
af389505 | 138 | %{__rm} rra/.htaccess |
344e658b | 139 | |
93d2fa9c ER |
140 | # must require libs to get fatals on missing files, not include |
141 | %{__sed} -i -e ' | |
142 | s,include(dirname(__FILE__)."/../include/global.php");,require(dirname(__FILE__)."/../include/global.php");, | |
143 | s,include_once,require_once, | |
144 | ' cli/*.php | |
145 | ||
c68d3a6e ER |
146 | # make sure scripts have php shebang |
147 | %{__sed} -i -e '1{ | |
148 | /bin.php/!i#!%{_bindir}/php | |
149 | }' scripts/*.php cli/*.php | |
6587a5d5 | 150 | |
c68d3a6e | 151 | chmod a+rx scripts/*.php cli/*.php |
ebacb7e6 | 152 | |
f4a0dd1f ER |
153 | find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f |
154 | ||
a0b0ee8a | 155 | # make sure cacti runs out of the box |
af389505 | 156 | %{__sed} -i -e 's,new_install,%{version},' sql/cacti.sql |
a0b0ee8a | 157 | |
6587a5d5 | 158 | %install |
94614147 | 159 | rm -rf $RPM_BUILD_ROOT |
af389505 | 160 | install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_appdir}/{docs,plugins},/etc/{cron.d,logrotate.d},%{_sbindir}} |
8c6ff4ca | 161 | install -d $RPM_BUILD_ROOT/var/{log,{lib,cache}/%{name}} |
e9300b9e | 162 | |
3d0c4fef | 163 | cp -p *.php $RPM_BUILD_ROOT%{_appdir} |
de4cec3c | 164 | cp -a cli images include install lib resource scripts sql $RPM_BUILD_ROOT%{_appdir} |
4b6cd69a ER |
165 | cp -a docs/html $RPM_BUILD_ROOT%{_appdir}/docs/html |
166 | mv $RPM_BUILD_ROOT{%{_appdir}/poller.php,%{_sbindir}/cacti-poller} | |
e9300b9e | 167 | |
4b6cd69a | 168 | cp -a log $RPM_BUILD_ROOT/var/log/%{name} |
b53d6410 | 169 | install -d $RPM_BUILD_ROOT/var/log/archive/%{name} |
4b6cd69a | 170 | cp -a rra $RPM_BUILD_ROOT/var/lib/%{name} |
e9300b9e | 171 | |
caa81993 | 172 | mv $RPM_BUILD_ROOT{%{_appdir}/include,%{_sysconfdir}}/config.php |
3d0c4fef ER |
173 | cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name} |
174 | cp -p %{SOURCE7} $RPM_BUILD_ROOT/etc/logrotate.d/%{name} | |
4b6cd69a | 175 | |
3d0c4fef ER |
176 | cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf |
177 | cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf | |
178 | cp -p %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf | |
6587a5d5 JB |
179 | |
180 | %clean | |
94614147 | 181 | rm -rf $RPM_BUILD_ROOT |
6587a5d5 | 182 | |
f4a0dd1f ER |
183 | %pre |
184 | %useradd -u 184 -d /var/lib/%{name} -g http -c "Cacti User" cacti | |
185 | ||
4b6cd69a ER |
186 | %post |
187 | if [ ! -f /var/log/%{name}/cacti.log ]; then | |
188 | install -m660 -oroot -ghttp /dev/null /var/log/%{name}/cacti.log | |
189 | fi | |
190 | ||
3d0c4fef ER |
191 | %{_appdir}/cli/upgrade_database.php || : |
192 | ||
f4a0dd1f ER |
193 | %postun |
194 | if [ "$1" = "0" ]; then | |
195 | %userremove cacti | |
196 | fi | |
197 | ||
4b6cd69a ER |
198 | %triggerin -- apache1 < 1.3.37-3, apache1-base |
199 | %webapp_register apache %{_webapp} | |
200 | ||
201 | %triggerun -- apache1 < 1.3.37-3, apache1-base | |
202 | %webapp_unregister apache %{_webapp} | |
203 | ||
204 | %triggerin -- apache < 2.2.0, apache-base | |
205 | %webapp_register httpd %{_webapp} | |
206 | ||
207 | %triggerun -- apache < 2.2.0, apache-base | |
208 | %webapp_unregister httpd %{_webapp} | |
209 | ||
210 | %triggerin -- lighttpd | |
211 | %webapp_register lighttpd %{_webapp} | |
212 | ||
213 | %triggerun -- lighttpd | |
214 | %webapp_unregister lighttpd %{_webapp} | |
215 | ||
216 | %triggerpostun -- %{name} < 0.8.7b-9.5 | |
217 | if [ -f /etc/cacti/cacti.cfg.rpmsave ]; then | |
218 | cp -f %{_sysconfdir}/config.php{,.rpmnew} | |
219 | mv /etc/cacti/cacti.cfg.rpmsave %{_sysconfdir}/config.php | |
220 | fi | |
221 | ||
6587a5d5 | 222 | %files |
94614147 | 223 | %defattr(644,root,root,755) |
e4aad445 | 224 | %doc docs/CHANGELOG docs/CONTRIB docs/README docs/txt/manual.txt |
4b6cd69a ER |
225 | %dir %attr(750,root,http) %{_sysconfdir} |
226 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf | |
227 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf | |
228 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf | |
229 | %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.php | |
230 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name} | |
af389505 | 231 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name} |
4b6cd69a | 232 | %attr(755,root,root) %{_sbindir}/cacti-poller |
344e658b | 233 | %dir %{_appdir} |
4b6cd69a ER |
234 | %exclude %{_appdir}/install |
235 | %exclude %{_appdir}/docs | |
344e658b ER |
236 | %{_appdir}/resource |
237 | %{_appdir}/sql | |
238 | %{_appdir}/lib | |
239 | %{_appdir}/include | |
240 | %{_appdir}/images | |
344e658b ER |
241 | %{_appdir}/plugins |
242 | %{_appdir}/*.php | |
243 | ||
ebacb7e6 ER |
244 | %dir %{_appdir}/cli |
245 | %attr(755,root,root) %{_appdir}/cli/* | |
246 | ||
344e658b ER |
247 | %dir %{_appdir}/scripts |
248 | %attr(755,root,root) %{_appdir}/scripts/* | |
4b6cd69a | 249 | |
ea4c4a5f AM |
250 | %attr(750,root,http) %dir /var/lib/%{name} |
251 | %attr(770,root,http) %dir /var/lib/%{name}/rra | |
4b6cd69a | 252 | %attr(730,root,http) %dir /var/log/%{name} |
b53d6410 | 253 | %attr(750,root,logs) %dir /var/log/archive/%{name} |
4b6cd69a | 254 | %attr(660,root,http) %ghost /var/log/%{name}/cacti.log |
8c6ff4ca | 255 | %attr(730,root,http) %dir /var/cache/%{name} |
4b6cd69a ER |
256 | |
257 | %files setup | |
258 | %defattr(644,root,root,755) | |
259 | %{_appdir}/install | |
260 | ||
261 | %files doc | |
262 | %defattr(644,root,root,755) | |
adf6e05d | 263 | %{_appdir}/docs |