]> git.pld-linux.org Git - packages/nut.git/blob - nut.spec
- tabs in preamble
[packages/nut.git] / nut.spec
1 #
2 # Conditional build:
3 %bcond_without  hidups                  # experimental hidups driver
4 #
5 Summary:        Network UPS Tools
6 Summary(pl.UTF-8):      Sieciowe narzędzie do UPS-ów
7 Name:           nut
8 Version:        2.0.5
9 Release:        1
10 License:        GPL
11 Group:          Applications/System
12 Source0:        http://eu1.networkupstools.org/source/2.0/%{name}-%{version}.tar.gz
13 # Source0-md5:  b08fde86191154bbcfda860f95a5dca2
14 Source1:        %{name}.init
15 Source2:        %{name}.sysconfig
16 Source3:        %{name}-upsmon.init
17 Source4:        %{name}.sysconfig.upsmon
18 Patch0:         %{name}-client.patch
19 Patch1:         %{name}-datadir.patch
20 Patch2:         %{name}-config.patch
21 Patch3:         %{name}-smartdp-load.patch
22 URL:            http://www.networkupstools.org/
23 BuildRequires:  autoconf
24 BuildRequires:  automake
25 BuildRequires:  gd-devel >= 2.0.15
26 BuildRequires:  libpng-devel
27 BuildRequires:  openssl-devel >= 0.9.7d
28 BuildRequires:  rpmbuild(macros) >= 1.268
29 Requires(post,preun):   /sbin/chkconfig
30 Requires:       %{name}-common = %{version}-%{release}
31 Requires:       rc-scripts
32 Obsoletes:      smartupstools
33 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
34
35 %define         _sysconfdir     /etc/ups
36
37 %description
38 These programs are part of a developing project to monitor the
39 assortment of UPSes that are found out there in the field. Many models
40 have serial serial ports of some kind that allow some form of state
41 checking. This capability has been harnessed where possible to allow
42 for safe shutdowns, live status tracking on web pages, and more.
43
44 %description -l pl.UTF-8
45 Te programy są częścią projektu do monitorowania wielu UPS-ów w jakimś
46 otoczeniu. Wiele modeli ma porty szeregowe i pozwala na jakąś formę
47 sprawdzania stanu. Ta funkcjonalność pozwala na bezpieczne
48 zatrzymywanie systemów, sprawdzanie stanu zasilania przez WWW i inne.
49
50 %description -l ru.UTF-8
51 Эти программы - часть проекта по мониторингу различных UPS. У многих
52 моделей есть сериальные порты, позволяющие проверять состояние этих
53 UPS. Эта возможность была использована, где это возможно, для
54 выполнения безопасных остановов компьютеров, отслеживания статуса
55 через веб и т.п.
56
57 %description -l uk.UTF-8
58 Ці програми є частиною проекту по моніторингу різноманітних UPS.
59 Багато моделей мають серіальні порти, що дозволять перевіряти стан цих
60 UPS. Ця можливість була використана, де це можливо, для виконання
61 безпечних зупинок комп'ютерів, відслідковування статусу через веб,
62 тощо.
63
64 %package common
65 Summary:        Package with common files for nut daemon and its clients
66 Summary(pl.UTF-8):      Pakiet z plikami wspólnymi dla demona nut i jego klientów
67 Group:          Applications/System
68 Requires(postun):       /usr/sbin/groupdel
69 Requires(postun):       /usr/sbin/userdel
70 Requires(pre):  /bin/id
71 Requires(pre):  /usr/bin/getgid
72 Requires(pre):  /usr/sbin/groupadd
73 Requires(pre):  /usr/sbin/groupmod
74 Requires(pre):  /usr/sbin/useradd
75 Provides:       group(ups)
76 Provides:       user(ups)
77
78 %description common
79 Package with common files for nut daemon and its clients.
80
81 %description common -l pl.UTF-8
82 Pakiet z plikami wspólnymi dla demona nut i jego klientów.
83
84 %package client
85 Summary:        Multi-vendor UPS Monitoring Project Client Utilities
86 Summary(pl.UTF-8):      Narzędzia klienckie do monitorowania UPS-ów
87 Summary(ru.UTF-8):      Network UPS Tools - клиентские утилиты мониторинга
88 Summary(uk.UTF-8):      Network UPS Tools - клієнтські утиліти моніторингу
89 Group:          Applications/System
90 Requires(post,preun):   /sbin/chkconfig
91 Requires:       %{name}-common = %{version}-%{release}
92 Requires:       rc-scripts
93
94 %description client
95 This package includes the client utilities that are required to
96 monitor a UPS that the client host is plugged into but monitored via
97 serial cable by another host on the network....
98
99 %description client -l pl.UTF-8
100 Ten pakiet zawiera narzędzia kliencie potrzebne do monitorowania UPS-a
101 do którego podłączony jest komputer kliencki, kiedy kabel szeregowy
102 UPS-a jest podłączony do innego komputera w sieci.
103
104 %description client -l ru.UTF-8
105 Этот пакет включает клиентские утилиты, необходимые для мониторинга
106 UPS, к которому клиентский хост имеет доступ, но UPS физически
107 подключен к другому компьютеру в сети.
108
109 %description client -l uk.UTF-8
110 Цей пакет включає клієнтські утиліти, потрібні для моніторингу UPS, до
111 якого клієнтський хост має доступ, але UPS фізично підключений до
112 іншого комп'ютеру в мережі.
113
114 %package cgi
115 Summary:        Multi-vendor UPS Monitoring Project Server - CGI utils
116 Summary(pl.UTF-8):      Narzędzia CGI do monitorowania UPS-ów
117 Summary(ru.UTF-8):      Network UPS Tools - CGI утилиты
118 Summary(uk.UTF-8):      Network UPS Tools - CGI утиліти
119 Group:          Applications/System
120 Requires:       %{name}-common = %{version}-%{release}
121
122 %description cgi
123 These programs are part of a developing project to monitor the
124 assortment of UPSes that are found out there in the field. Many models
125 have serial serial ports of some kind that allow some form of state
126 checking. This capability has been harnessed where possible to allow
127 for safe shutdowns, live status tracking on web pages, and more. This
128 package contains CGI utils.
129
130 %description cgi -l pl.UTF-8
131 Te programy są częścią projektu do monitorowania wielu UPS-ów w jakimś
132 otoczeniu. Wiele modeli ma porty szeregowe i pozwala na jakąś formę
133 sprawdzania stanu. Ta funkcjonalność pozwala na bezpieczne
134 zatrzymywanie systemów, sprawdzanie stanu zasilania przez WWW i inne.
135 Ten pakiet zawiera narzędzia CGI.
136
137 %description cgi -l ru.UTF-8
138 Этот пакет включает CGI программы для доступа к информации о статусе
139 UPS через веб-интерфейс.
140
141 %description cgi -l uk.UTF-8
142 Цей пакет включає CGI програми для доступу до інформації про статус
143 UPS через веб-інтерфейс.
144
145 %package devel
146 Summary:        Files for NUT clients development
147 Summary(pl.UTF-8):      Pliki do tworzenia klientów NUT-a
148 Group:          Development/Libraries
149 Requires:       openssl-devel >= 0.9.7c
150 # it does NOT require nut
151
152 %description devel
153 Object file and header for developing NUT clients.
154
155 %description devel -l pl.UTF-8
156 Plik wynikowy oraz nagłówek służące do tworzenia klientów NUT-a.
157
158 %prep
159 %setup -q
160 %patch0 -p1
161 %patch1 -p1
162 %patch2 -p1
163 %patch3 -p1
164
165 %build
166 cp -f /usr/share/automake/config.sub .
167 %{__aclocal}
168 %{__autoconf}
169 LDFLAGS="-L%{_prefix}/X11R6/%{_lib}"; export LDFLAGS
170 %configure \
171         %{?with_hidups:--with-linux-hiddev} \
172         --with-ssl \
173         --with-cgi \
174         --with-linux-hiddev=%{_includedir}/linux/hiddev.h \
175         --with-statepath=%{_var}/lib/ups \
176         --with-drvpath=/lib/nut \
177         --with-cgipath=/home/services/httpd/cgi-bin \
178         --with-user=ups \
179         --with-group=ups
180 %{__make} all cgi
181 %{?with_hidups:%{__make} build-usb}
182
183 %install
184 rm -rf $RPM_BUILD_ROOT
185 install -d $RPM_BUILD_ROOT{/sbin,/etc/{sysconfig,rc.d/init.d},/var/lib/ups} \
186         $RPM_BUILD_ROOT{/lib/nut,%{_libdir},%{_includedir}/nut}
187
188 %{__make} install install-cgi \
189         DESTDIR=$RPM_BUILD_ROOT
190
191 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/ups
192 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/ups
193 install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/upsmon
194 install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/upsmon
195
196 rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/*
197 install conf/*.users conf/*.conf conf/*.html $RPM_BUILD_ROOT%{_sysconfdir}
198
199 install clients/upsclient.o common/parseconf.o $RPM_BUILD_ROOT%{_libdir}
200 install clients/upsclient.h include/parseconf.h $RPM_BUILD_ROOT%{_includedir}/nut
201
202 %{?with_hidups:install drivers/hidups $RPM_BUILD_ROOT/lib/nut}
203 %{?with_hidups:install drivers/newhidups $RPM_BUILD_ROOT/lib/nut}
204
205 cat > $RPM_BUILD_ROOT/sbin/poweroff-ups << EOF
206 #!/bin/sh
207 /etc/rc.d/init.d/ups powerdown
208 EOF
209
210 %clean
211 rm -rf $RPM_BUILD_ROOT
212
213 %post
214 /sbin/chkconfig --add ups
215 %service ups restart "NUT ups daemon"
216
217 %preun
218 if [ "$1" = "0" ]; then
219         %service ups stop
220         /sbin/chkconfig --del ups
221 fi
222
223 %pre common
224 # move to trigger?
225 if [ -n "`/usr/bin/getgid ups`" ] && [ "`/usr/bin/getgid ups`" = 121 ]; then
226         /usr/sbin/groupmod -g 76 ups
227         chgrp ups %{_sysconfdir}/{upsd.conf,ups.conf,upsd.users}
228         /usr/sbin/usermod -g 76 ups
229 fi
230 %groupadd -g 76 ups
231 %useradd -u 70 -d /usr/share/empty -s /bin/false -c "UPS Manager User" -g ups ups
232
233 %post client
234 /sbin/chkconfig --add upsmon
235 %service upsmon restart "NUT upsmon daemon"
236
237 %preun client
238 if [ "$1" = "0" ]; then
239         %service upsmon stop
240         /sbin/chkconfig --del upsmon
241 fi
242
243 %postun common
244 if [ "$1" = "0" ]; then
245         %userremove ups
246         %groupremove ups
247 fi
248
249 %files
250 %defattr(644,root,root,755)
251 %attr(755,root,root) %{_bindir}/upscmd
252 %attr(755,root,root) %{_bindir}/upslog
253 %attr(755,root,root) %{_bindir}/upsrw
254 %attr(755,root,root) %{_sbindir}/upsd
255 %attr(755,root,root) /sbin/poweroff-ups
256 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/ups
257 %attr(754,root,root) /etc/rc.d/init.d/ups
258 %attr(640,root,ups) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/upsd.conf
259 %attr(640,root,ups) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ups.conf
260 %attr(640,root,ups) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/upsd.users
261 %{_mandir}/man5/ups.conf.5*
262 %{_mandir}/man5/upsd.conf.5*
263 %{_mandir}/man5/upsd.users.5*
264 %{_mandir}/man8/[!u]*.8*
265 %{_mandir}/man8/upscmd.8*
266 %{_mandir}/man8/upscode2.8*
267 %{_mandir}/man8/upsd.8*
268 %{_mandir}/man8/upsdrvctl.8*
269 %{_mandir}/man8/upslog.8*
270 %{_mandir}/man8/upsrw.8*
271 %dir %attr(770,root,ups) /var/lib/ups
272 %dir /lib/nut
273 %attr(755,root,root) /lib/nut/*
274 %{_datadir}/nut
275
276 %files common
277 %defattr(644,root,root,755)
278 %doc NEWS README ChangeLog CREDITS docs
279 %dir %{_sysconfdir}
280
281 %files client
282 %defattr(644,root,root,755)
283 %attr(755,root,root) %{_bindir}/upsc
284 %attr(755,root,root) %{_sbindir}/upsmon
285 %attr(755,root,root) %{_sbindir}/upssched
286 %attr(755,root,root) %{_sbindir}/upssched-cmd
287 %attr(754,root,root) /etc/rc.d/init.d/upsmon
288 %attr(640,root,ups) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/upsmon.conf
289 %attr(640,root,ups) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/upssched.conf
290 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/upsmon
291 %{_mandir}/man5/upsmon.conf.5*
292 %{_mandir}/man5/upssched.conf.5*
293 %{_mandir}/man8/upsc.8*
294 %{_mandir}/man8/upsmon.8*
295 %{_mandir}/man8/upssched.8*
296
297 %files cgi
298 %defattr(644,root,root,755)
299 %attr(755,root,root) /home/services/httpd/cgi-bin/*.cgi
300 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/hosts.conf
301 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/upsset.conf
302 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.html
303 %{_mandir}/man5/hosts.conf.5*
304 %{_mandir}/man5/upsset.conf.5*
305 %{_mandir}/man5/upsstats.html.5*
306 %{_mandir}/man8/upsimage.cgi.8*
307 %{_mandir}/man8/upsset.cgi.8*
308 %{_mandir}/man8/upsstats.cgi.8*
309
310 %files devel
311 %defattr(644,root,root,755)
312 %{_libdir}/upsclient.o
313 %{_libdir}/parseconf.o
314 %{_includedir}/nut
This page took 0.043649 seconds and 4 git commands to generate.