# # Conditional build: %bcond_with hidups # experimental hidups driver # Summary: Network UPS Tools Summary(pl): Sieciowe narzêdzie do UPS-ów Name: nut Version: 2.0.1 Release: 2 License: GPL Group: Applications/System Source0: http://eu1.networkupstools.org/source/2.0/testing/%{name}-%{version}-pre4.tar.gz # Source0-md5: 399f79406e07aa2a689bc6a119b0fcad # Source0-size: 563526 Source1: %{name}.init Source2: %{name}.sysconfig Source3: %{name}-upsmon.init Patch0: %{name}-client.patch Patch1: %{name}-datadir.patch URL: http://www.networkupstools.org/ BuildRequires: autoconf BuildRequires: automake BuildRequires: gd-devel >= 2.0.15 BuildRequires: libpng-devel BuildRequires: openssl-devel >= 0.9.7d BuildRequires: rpmbuild(macros) >= 1.159 PreReq: rc-scripts Requires(pre): /bin/id Requires(pre): /usr/bin/getgid Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/groupmod Requires(pre): /usr/sbin/useradd Requires(post,preun): /sbin/chkconfig Requires(postun): /usr/sbin/groupdel Requires(postun): /usr/sbin/userdel Requires: %{name}-common = %{version}-%{release} Provides: group(ups) Provides: user(ups) Obsoletes: smartupstools BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define _sysconfdir /etc/ups %description These programs are part of a developing project to monitor the assortment of UPSes that are found out there in the field. Many models have serial serial ports of some kind that allow some form of state checking. This capability has been harnessed where possible to allow for safe shutdowns, live status tracking on web pages, and more. This nut ships with modified everups.c - support for Ever UPS models (by Mikolaj Tutak ) %description -l pl Te programy s± czê¶ci± projektu do monitorowania wielu UPS-ów w jakim¶ otoczeniu. Wiele modeli ma porty szeregowe i pozwala na jak±¶ formê sprawdzania stanu. Ta funkcjonalno¶æ pozwala na bezpieczne zatrzymywanie systemów, sprawdzanie stanu zasilania przez WWW i inne. Ta wersja posiada zmieniony sterownik everups.c - obs³uguje zasilacze firmy Ever UPS models (autorstwa Miko³aja Tutaka ) %description -l ru üÔÉ ÐÒÏÇÒÁÍÍÙ - ÞÁÓÔØ ÐÒÏÅËÔÁ ÐÏ ÍÏÎÉÔÏÒÉÎÇÕ ÒÁÚÌÉÞÎÙÈ UPS. õ ÍÎÏÇÉÈ ÍÏÄÅÌÅÊ ÅÓÔØ ÓÅÒÉÁÌØÎÙÅ ÐÏÒÔÙ, ÐÏÚ×ÏÌÑÀÝÉÅ ÐÒÏ×ÅÒÑÔØ ÓÏÓÔÏÑÎÉÅ ÜÔÉÈ UPS. üÔÁ ×ÏÚÍÏÖÎÏÓÔØ ÂÙÌÁ ÉÓÐÏÌØÚÏ×ÁÎÁ, ÇÄÅ ÜÔÏ ×ÏÚÍÏÖÎÏ, ÄÌÑ ×ÙÐÏÌÎÅÎÉÑ ÂÅÚÏÐÁÓÎÙÈ ÏÓÔÁÎÏ×Ï× ËÏÍÐØÀÔÅÒÏ×, ÏÔÓÌÅÖÉ×ÁÎÉÑ ÓÔÁÔÕÓÁ ÞÅÒÅÚ ×ÅÂ É Ô.Ð. %description -l uk 㦠ÐÒÏÇÒÁÍÉ ¤ ÞÁÓÔÉÎÏÀ ÐÒÏÅËÔÕ ÐÏ ÍÏΦÔÏÒÉÎÇÕ Ò¦ÚÎÏÍÁΦÔÎÉÈ UPS. âÁÇÁÔÏ ÍÏÄÅÌÅÊ ÍÁÀÔØ ÓÅÒ¦ÁÌØΦ ÐÏÒÔÉ, ÝÏ ÄÏÚ×ÏÌÑÔØ ÐÅÒÅצÒÑÔÉ ÓÔÁÎ ÃÉÈ UPS. ãÑ ÍÏÖÌÉצÓÔØ ÂÕÌÁ ×ÉËÏÒÉÓÔÁÎÁ, ÄÅ ÃÅ ÍÏÖÌÉ×Ï, ÄÌÑ ×ÉËÏÎÁÎÎÑ ÂÅÚÐÅÞÎÉÈ ÚÕÐÉÎÏË ËÏÍÐ'ÀÔÅÒ¦×, צÄÓ̦ÄËÏ×Õ×ÁÎÎÑ ÓÔÁÔÕÓÕ ÞÅÒÅÚ ×ÅÂ, ÔÏÝÏ. %package common Summary: Package with common files for nut daemon and its clients Summary(pl): Pakiet z plikami wspólnymi dla demona nut i jego klientów Group: Applications/System %description common Package with common files for nut daemon and its clients. %description common -l pl Pakiet z plikami wspólnymi dla demona nut i jego klientów. %package client Summary: Multi-vendor UPS Monitoring Project Client Utilities Summary(pl): Narzêdzia klienckie do monitorowania UPS-ów Summary(uk): Network UPS Tools - Ë̦¤ÎÔÓØ˦ ÕÔÉ̦ÔÉ ÍÏΦÔÏÒÉÎÇÕ Summary(ru): Network UPS Tools - ËÌÉÅÎÔÓËÉÅ ÕÔÉÌÉÔÙ ÍÏÎÉÔÏÒÉÎÇÁ Group: Applications/System PreReq: rc-scripts Requires(post,preun): /sbin/chkconfig Requires: %{name}-common = %{version}-%{release} %description client This package includes the client utilities that are required to monitor a UPS that the client host is plugged into but monitored via serial cable by another host on the network.... %description client -l pl Ten pakiet zawiera narzêdzia kliencie potrzebne do monitorowania UPS-a do którego pod³±czony jest komputer kliencki, kiedy kabel szeregowy UPS-a jest pod³±czony do innego komputera w sieci. %description client -l ru üÔÏÔ ÐÁËÅÔ ×ËÌÀÞÁÅÔ ËÌÉÅÎÔÓËÉÅ ÕÔÉÌÉÔÙ, ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÍÏÎÉÔÏÒÉÎÇÁ UPS, Ë ËÏÔÏÒÏÍÕ ËÌÉÅÎÔÓËÉÊ ÈÏÓÔ ÉÍÅÅÔ ÄÏÓÔÕÐ, ÎÏ UPS ÆÉÚÉÞÅÓËÉ ÐÏÄËÌÀÞÅÎ Ë ÄÒÕÇÏÍÕ ËÏÍÐØÀÔÅÒÕ × ÓÅÔÉ. %description client -l uk ãÅÊ ÐÁËÅÔ ×ËÌÀÞÁ¤ Ë̦¤ÎÔÓØ˦ ÕÔÉ̦ÔÉ, ÐÏÔÒ¦ÂΦ ÄÌÑ ÍÏΦÔÏÒÉÎÇÕ UPS, ÄÏ ÑËÏÇÏ Ë̦¤ÎÔÓØËÉÊ ÈÏÓÔ ÍÁ¤ ÄÏÓÔÕÐ, ÁÌÅ UPS ƦÚÉÞÎÏ Ð¦ÄËÌÀÞÅÎÉÊ ÄÏ ¦ÎÛÏÇÏ ËÏÍÐ'ÀÔÅÒÕ × ÍÅÒÅÖ¦. %package cgi Summary: Multi-vendor UPS Monitoring Project Server - CGI utils Summary(pl): Narzêdzia CGI do monitorowania UPS-ów Summary(ru): Network UPS Tools - CGI ÕÔÉÌÉÔÙ Summary(uk): Network UPS Tools - CGI ÕÔÉ̦ÔÉ Group: Applications/System Requires: %{name}-common = %{version}-%{release} %description cgi These programs are part of a developing project to monitor the assortment of UPSes that are found out there in the field. Many models have serial serial ports of some kind that allow some form of state checking. This capability has been harnessed where possible to allow for safe shutdowns, live status tracking on web pages, and more. This package contains CGI utils. %description cgi -l pl Te programy s± czê¶ci± projektu do monitorowania wielu UPS-ów w jakim¶ otoczeniu. Wiele modeli ma porty szeregowe i pozwala na jak±¶ formê sprawdzania stanu. Ta funkcjonalno¶æ pozwala na bezpieczne zatrzymywanie systemów, sprawdzanie stanu zasilania przez WWW i inne. Ten pakiet zawiera narzêdzia CGI. %description cgi -l ru üÔÏÔ ÐÁËÅÔ ×ËÌÀÞÁÅÔ CGI ÐÒÏÇÒÁÍÍÙ ÄÌÑ ÄÏÓÔÕÐÁ Ë ÉÎÆÏÒÍÁÃÉÉ Ï ÓÔÁÔÕÓÅ UPS ÞÅÒÅÚ ×ÅÂ-ÉÎÔÅÒÆÅÊÓ. %description cgi -l uk ãÅÊ ÐÁËÅÔ ×ËÌÀÞÁ¤ CGI ÐÒÏÇÒÁÍÉ ÄÌÑ ÄÏÓÔÕÐÕ ÄÏ ¦ÎÆÏÒÍÁæ§ ÐÒÏ ÓÔÁÔÕÓ UPS ÞÅÒÅÚ ×ÅÂ-¦ÎÔÅÒÆÅÊÓ. %package devel Summary: Files for NUT clients development Summary(pl): Pliki do tworzenia klientów NUT-a Group: Development/Libraries Requires: openssl-devel >= 0.9.7c # it does NOT require nut %description devel Object file and header for developing NUT clients. %description devel -l pl Plik wynikowy oraz nag³ówek s³u¿±ce do tworzenia klientów NUT-a. %prep %setup -q %patch0 -p1 %patch1 -p1 %build cp -f /usr/share/automake/config.sub . %{__aclocal} %{__autoconf} LDFLAGS="-L%{_prefix}/X11R6/%{_lib}"; export LDFLAGS %configure \ %{?with_hidups:--with-linux-hiddev} \ --with-ssl \ --with-cgi \ --with-linux-hiddev=%{_includedir}/linux/hiddev.h \ --with-statepath=%{_var}/lib/ups \ --with-drvpath=/lib/nut \ --with-cgipath=/home/services/httpd/cgi-bin \ --with-user=ups \ --with-group=ups %{__make} all cgi %{?with_hidups:%{__make} hidups} %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{/sbin,/etc/{sysconfig,rc.d/init.d},/var/lib/ups} \ $RPM_BUILD_ROOT{/lib/nut,%{_libdir},%{_includedir}/nut} %{__make} install install-cgi \ DESTDIR=$RPM_BUILD_ROOT install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/ups install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/ups install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/upsmon rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/* install conf/*.users conf/*.conf conf/*.html $RPM_BUILD_ROOT%{_sysconfdir} install clients/upsclient.o common/parseconf.o $RPM_BUILD_ROOT%{_libdir} install clients/upsclient.h include/parseconf.h $RPM_BUILD_ROOT%{_includedir}/nut %{?with_hidups:install drivers/hidups $RPM_BUILD_ROOT/lib/nut} cat > $RPM_BUILD_ROOT/sbin/poweroff-ups << EOF #!/bin/sh /etc/rc.d/init.d/ups powerdown EOF %clean rm -rf $RPM_BUILD_ROOT %pre if [ -n "`/usr/bin/getgid ups`" ]; then if [ "`/usr/bin/getgid ups`" != 76 ]; then if [ "`/usr/bin/getgid ups`" = 121 ]; then /usr/sbin/groupmod -g 76 ups chgrp ups %{_sysconfdir}/{upsd.conf,ups.conf,upsd.users} else echo "Error: group ups doesn't have gid=76. Correct this before installing %{name}." 1>&2 exit 1 fi fi else /usr/sbin/groupadd -g 76 ups fi if [ -n "`/bin/id -u ups 2>/dev/null`" ]; then if [ "`/bin/id -u ups`" != 70 ]; then echo "Error: user ups doesn't have uid=70. Correct this before installing %{name}." 1>&2 exit 1 fi else echo "Adding user ups UID=70." /usr/sbin/useradd -u 70 -d /usr/share/empty -s /bin/false \ -c "UPS Manager User" -g ups ups 1>&2 fi %post /sbin/chkconfig --add ups if [ -f /var/lock/subsys/ups ]; then /etc/rc.d/init.d/ups restart >&2 else echo "Run \"/etc/rc.d/init.d/ups start\" to start NUT ups daemon." fi %post client /sbin/chkconfig --add upsmon if [ -f /var/lock/subsys/upsmon ]; then /etc/rc.d/init.d/upsmon restart >&2 else echo "Run \"/etc/rc.d/init.d/upsmon start\" to start NUT upsmon daemon." fi %preun if [ "$1" = "0" ]; then if [ -f /var/lock/subsys/ups ]; then /etc/rc.d/init.d/ups stop >&2 fi /sbin/chkconfig --del ups fi %preun client if [ "$1" = "0" ]; then if [ -f /var/lock/subsys/upsmon ]; then /etc/rc.d/init.d/upsmon stop >&2 fi /sbin/chkconfig --del upsmon fi %postun if [ "$1" = "0" ]; then %userremove ups %groupremove ups fi %files %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/upscmd %attr(755,root,root) %{_bindir}/upslog %attr(755,root,root) %{_bindir}/upsrw %attr(755,root,root) %{_sbindir}/upsd %attr(755,root,root) /sbin/poweroff-ups %config(noreplace) %verify(not size mtime md5) /etc/sysconfig/ups %attr(754,root,root) /etc/rc.d/init.d/ups %attr(640,root,ups) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/upsd.conf %attr(640,root,ups) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/ups.conf %attr(640,root,ups) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/upsd.users %{_mandir}/man5/ups.conf.5* %{_mandir}/man5/upsd.conf.5* %{_mandir}/man5/upsd.users.5* %{_mandir}/man8/[!u]*.8* %{_mandir}/man8/upscmd.8* %{_mandir}/man8/upsd.8* %{_mandir}/man8/upsdrvctl.8* %{_mandir}/man8/upslog.8* %{_mandir}/man8/upsrw.8* %dir %attr(770,root,ups) /var/lib/ups %dir /lib/nut %attr(755,root,root) /lib/nut/* %{_datadir}/nut %files common %defattr(644,root,root,755) %doc NEWS README CHANGES CREDITS docs %dir %{_sysconfdir} %files client %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/upsc %attr(755,root,root) %{_sbindir}/upsmon %attr(755,root,root) %{_sbindir}/upssched %attr(755,root,root) %{_sbindir}/upssched-cmd %attr(754,root,root) /etc/rc.d/init.d/upsmon %attr(600,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/upsmon.conf %attr(600,root,root) %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/upssched.conf %{_mandir}/man5/upsmon.conf.5* %{_mandir}/man5/upssched.conf.5* %{_mandir}/man8/upsc.8* %{_mandir}/man8/upsmon.8* %{_mandir}/man8/upssched.8* %files cgi %defattr(644,root,root,755) %attr(755,root,root) /home/services/httpd/cgi-bin/*.cgi %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/hosts.conf %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/upsset.conf %config(noreplace) %verify(not size mtime md5) %{_sysconfdir}/*.html %{_mandir}/man5/hosts.conf.5* %{_mandir}/man5/upsset.conf.5* %{_mandir}/man5/upsstats.html.5* %{_mandir}/man8/upsimage.cgi.8* %{_mandir}/man8/upsset.cgi.8* %{_mandir}/man8/upsstats.cgi.8* %files devel %defattr(644,root,root,755) %{_libdir}/upsclient.o %{_libdir}/parseconf.o %{_includedir}/nut