nut/nut.spec

954 lines
36 KiB
RPMSpec
Raw Normal View History

#
# spec file for package nut (Version 2.2.2)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: nut
BuildRequires: apache2-devel dbus-1-devel gd-devel hal-devel libneon-devel libopenssl-devel libusb-devel net-snmp-devel openssl-devel pkg-config tcpd-devel
# for directory ownership:
BuildRequires: pm-utils
License: GPL v2 or later
Group: Hardware/UPS
Provides: smartups
Obsoletes: smartups
Conflicts: apcupsd
Summary: Network UPS Tools Core (Unbreakable Power Supply Monitoring)
Version: 2.2.2
Release: 7
Url: http://www.networkupstools.org/
Source: %{name}-%{version}.tar.bz2
Source1: upsd.init
Source2: README.SUSE
Source3: upsd-early-powerdown.init
Source4: upsd.dbus-1
Source5: nut.firewall.in
Source6: nut-disable-hal-hid-ups.fdi
Source7: nut.sleep
Patch: nut-preconfig.patch
Patch3: nut-notifyflag.patch
Patch4: nut-powersave.patch
Patch6: nut-udev.patch
Patch8: nut-libtool.patch
Patch11: nut-intptr.patch
Patch12: nut-hal.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: /bin/chown
Requires: nut-package = %{version}
%define apache_serverroot %(%{_sbindir}/apxs2 -q datadir 2>/dev/null || %{_sbindir}/apxs -q PREFIX)
%define CGIPATH %{apache_serverroot}/cgi-bin
%define HTMLPATH %{apache_serverroot}/htdocs
%define MODELPATH %{_prefix}/lib/ups/driver
%define STATEPATH %{_localstatedir}/lib/ups
%define CONFPATH %{_sysconfdir}/ups
%define USER upsd
%define GROUP daemon
%define LBRACE (
%define RBRACE )
%define QUOTE "
%define BACKSLASH \\
# Collect all devices listed in ups-nut-device.fdi:
%define USBDRIVERS %(set -x ; bunzip2 <%{S:0} | fgrep -a -A4 usb_device.vendor_id | tr '%{BACKSLASH}n' '-' | tr 'a-z' 'A-Z' | sed 's/--/%{BACKSLASH}n/g' | sed 's/^.*USB_DEVICE%{BACKSLASH}.VENDOR_ID%{QUOTE} INT=%{QUOTE}0X%{BACKSLASH}%{LBRACE}[^%{QUOTE}]*%{BACKSLASH}%{RBRACE}%{QUOTE}.*USB_DEVICE%{BACKSLASH}.PRODUCT_ID%{QUOTE} INT=%{QUOTE}0X%{BACKSLASH}%{LBRACE}[^%{QUOTE}]*%{BACKSLASH}%{RBRACE}%{QUOTE}.*INFO%{BACKSLASH}.ADDONS%{QUOTE} TYPE=%{QUOTE}STRLIST%{QUOTE}>%{BACKSLASH}%{LBRACE}[^<]*%{BACKSLASH}%{RBRACE}<.*$/%{BACKSLASH}3=modalias%{LBRACE}usb:v%{BACKSLASH}1p%{BACKSLASH}2d*dc*dsc*dp*ic*isc*ip*%{RBRACE}/')
# Package provides driver for USB HID UPSes, but people can live with hal addon:
Enhances: %(set -x ; echo %{QUOTE}%{USBDRIVERS}%{QUOTE} | sed -n s/^HALD-ADDON-USBHID-UPS=//p | tr '%{BACKSLASH}n' ' ')
# Package provides the only avalailable driver for other USB UPSes:
Supplements: %(set -x ; echo %{QUOTE}%{USBDRIVERS}%{QUOTE} | sed '/^HALD-ADDON-USBHID-UPS=/d;s/^.*=//' | tr '%{BACKSLASH}n' ' ')
%description
Core package of Network UPS Tools.
Network UPS Tools is a collection of programs which provide a common
interface for monitoring and administering UPS hardware.
Detailed information about supported hardware can be found in
/usr/share/doc/packages/nut.
Authors:
--------
Arnaud Quette <aquette.dev@gmail.com, ArnaudQuette@Eaton.com, aquette@debian.org>
Russell Kroll <rkroll@exploits.org>
Stephen Brown <steve@datalimbo.net>
Bill Carlson <wcarlson@wkks.org>
Ben Collver <collver@softhome.net>
Luca Filipozzi <lfilipoz@debian.org>
Matthew Gabeler-Lee <msg2@po.cwru.edu>
Bruno Hall
Bo Kersey - VirCIO - Managed Server Solutions <bo@vircio.com>
Rick Lyons <rick@powerup.com.au>
Jeremy Maccelari <visualn@iafrica.com, jeremy@visuals.co.za>
Philippe Marzouk <philm@users.sourceforge.net>
Theodor A. Milkov <zimage@delbg.com>
Mark Powell <medp@primagraphics.co.uk>
Lars Balker Rasmussen <lbr@mjolner.dk>
Carlos Rodrigues <carlos.efr@mail.telepac.pt>
David Santinoli <david@santinoli.com>
Peter Selinger <selinger@users.sourceforge.net>
Kirill Smelkov <kirr@mns.spb.ru>
John Stone <johns@megapixel.com>
Technorama Ltd. <oss-list-ups@technorama.net>
Jason Thomas <jason@topic.com.au>
Simon Rozman <simon@rozman.net>
Len J White <lwhite@darkfires.net>
Walt Holman <walt_h@lorettotel.net>
Fabio Di Niro <blaxwan@users.sourceforge.net>
Arjen de Korte <arjen@de-korte.org>
H<EFBFBD>vard Lygre <hklygre@online.no>
Niels Baggesen <niels@baggesen.net>
Niklas Edmundsson <nikke@acc.umu.se>
Olli Savia <ops@iki.fi>
%package drivers-net
License: GPL v2 or later
Summary: Network UPS Tools - Extra Networking Drivers (for Network Monitoring)
Group: Hardware/UPS
Requires: %{name}-classic = %{version}
Enhances: %{name}-classic
# for update from openSUSE <= 10.3, SLE <= 10
Provides: nut:%{_prefix}/lib/ups/driver/snmp-ups
%description drivers-net
Networking drivers for the Network UPS Tools. You will need them
altogether with nut-classic to provide UPS networking support.
Network UPS Tools is a collection of programs which provide a common
interface for monitoring and administering UPS hardware.
Detailed information about supported hardware can be found in
/usr/share/doc/packages/nut.
Authors:
--------
Arnaud Quette <aquette.dev@gmail.com, ArnaudQuette@Eaton.com, aquette@debian.org>
Russell Kroll <rkroll@exploits.org>
Stephen Brown <steve@datalimbo.net>
Bill Carlson <wcarlson@wkks.org>
Ben Collver <collver@softhome.net>
Luca Filipozzi <lfilipoz@debian.org>
Matthew Gabeler-Lee <msg2@po.cwru.edu>
Bruno Hall
Bo Kersey - VirCIO - Managed Server Solutions <bo@vircio.com>
Rick Lyons <rick@powerup.com.au>
Jeremy Maccelari <visualn@iafrica.com, jeremy@visuals.co.za>
Philippe Marzouk <philm@users.sourceforge.net>
Theodor A. Milkov <zimage@delbg.com>
Mark Powell <medp@primagraphics.co.uk>
Lars Balker Rasmussen <lbr@mjolner.dk>
Carlos Rodrigues <carlos.efr@mail.telepac.pt>
David Santinoli <david@santinoli.com>
Peter Selinger <selinger@users.sourceforge.net>
Kirill Smelkov <kirr@mns.spb.ru>
John Stone <johns@megapixel.com>
Technorama Ltd. <oss-list-ups@technorama.net>
Jason Thomas <jason@topic.com.au>
Simon Rozman <simon@rozman.net>
Len J White <lwhite@darkfires.net>
Walt Holman <walt_h@lorettotel.net>
Fabio Di Niro <blaxwan@users.sourceforge.net>
Arjen de Korte <arjen@de-korte.org>
H<EFBFBD>vard Lygre <hklygre@online.no>
Niels Baggesen <niels@baggesen.net>
Niklas Edmundsson <nikke@acc.umu.se>
Olli Savia <ops@iki.fi>
%package -n libupsclient1
License: GPL v2 or later
Summary: Network UPS Tools Library (Unbreakable Power Supply Monitoring)
Group: System/Libraries
%description -n libupsclient1
Shared library for the Network UPS Tools.
Network UPS Tools is a collection of programs which provide a common
interface for monitoring and administering UPS hardware.
Detailed information about supported hardware can be found in
/usr/share/doc/packages/nut.
Authors:
--------
Arnaud Quette <aquette.dev@gmail.com, ArnaudQuette@Eaton.com, aquette@debian.org>
Russell Kroll <rkroll@exploits.org>
Stephen Brown <steve@datalimbo.net>
Bill Carlson <wcarlson@wkks.org>
Ben Collver <collver@softhome.net>
Luca Filipozzi <lfilipoz@debian.org>
Matthew Gabeler-Lee <msg2@po.cwru.edu>
Bruno Hall
Bo Kersey - VirCIO - Managed Server Solutions <bo@vircio.com>
Rick Lyons <rick@powerup.com.au>
Jeremy Maccelari <visualn@iafrica.com, jeremy@visuals.co.za>
Philippe Marzouk <philm@users.sourceforge.net>
Theodor A. Milkov <zimage@delbg.com>
Mark Powell <medp@primagraphics.co.uk>
Lars Balker Rasmussen <lbr@mjolner.dk>
Carlos Rodrigues <carlos.efr@mail.telepac.pt>
David Santinoli <david@santinoli.com>
Peter Selinger <selinger@users.sourceforge.net>
Kirill Smelkov <kirr@mns.spb.ru>
John Stone <johns@megapixel.com>
Technorama Ltd. <oss-list-ups@technorama.net>
Jason Thomas <jason@topic.com.au>
Simon Rozman <simon@rozman.net>
Len J White <lwhite@darkfires.net>
Walt Holman <walt_h@lorettotel.net>
Fabio Di Niro <blaxwan@users.sourceforge.net>
Arjen de Korte <arjen@de-korte.org>
H<EFBFBD>vard Lygre <hklygre@online.no>
Niels Baggesen <niels@baggesen.net>
Niklas Edmundsson <nikke@acc.umu.se>
Olli Savia <ops@iki.fi>
%package classic
License: GPL v2 or later
Summary: Network UPS Tools Classic Package (Monitoring Server)
Group: Hardware/UPS
Requires: %{name} = %{version}
Provides: nut-package = %{version}
Conflicts: %{name}-hal
Requires: %{_bindir}/pgrep %{_bindir}/pkill %{_bindir}/grep %{_bindir}/fgrep %{_sbindir}/lsusb %{_bindir}/readlink
PreReq: %insserv_prereq /bin/chown /bin/chmod %{_bindir}/fgrep %{_bindir}/grep %{_bindir}/sed %{_bindir}/head %{_bindir}/md5sum
Requires: powersave
# for update from openSUSE <= 10.3, SLE <= 10
Provides: nut:%{_sbindir}/upsmon
%description classic
Classic package of Network UPS Tools.
Network UPS Tools is a collection of programs which provide a common
interface for monitoring and administering UPS hardware.
This is the standard installation that uses a layered approach to
connect all of the NUT parts.
Drivers are provided for a wide assortment of equipment. They
understand the specific language of each UPS and map it back to a
compatibility layer. This means both an expensive "smart" protocol UPS
and a simple "power strip" model can be handled transparently.
This information is cached by the network server upsd, which then
answers queries from the clients. upsd contains a number of access
control features to limit the abilities of the clients. Only
authorized hosts may monitor or control your UPS hardware if you wish.
Since the notion of monitoring over the network is built into the
software, you can hang many systems off one large UPS and they will all
shut down together.
Clients such as upsmon check on the status of the hardware and do
things when necessary. The most important task is shutting down the
operating system cleanly before the UPS runs out of power. Other
programs are also provided to log UPS status regularly, monitor status
through your web browser, and more.
Detailed information about supported hardware can be found in
/usr/share/doc/packages/nut.
Authors:
--------
Arnaud Quette <aquette.dev@gmail.com, ArnaudQuette@Eaton.com, aquette@debian.org>
Russell Kroll <rkroll@exploits.org>
Stephen Brown <steve@datalimbo.net>
Bill Carlson <wcarlson@wkks.org>
Ben Collver <collver@softhome.net>
Luca Filipozzi <lfilipoz@debian.org>
Matthew Gabeler-Lee <msg2@po.cwru.edu>
Bruno Hall
Bo Kersey - VirCIO - Managed Server Solutions <bo@vircio.com>
Rick Lyons <rick@powerup.com.au>
Jeremy Maccelari <visualn@iafrica.com, jeremy@visuals.co.za>
Philippe Marzouk <philm@users.sourceforge.net>
Theodor A. Milkov <zimage@delbg.com>
Mark Powell <medp@primagraphics.co.uk>
Lars Balker Rasmussen <lbr@mjolner.dk>
Carlos Rodrigues <carlos.efr@mail.telepac.pt>
David Santinoli <david@santinoli.com>
Peter Selinger <selinger@users.sourceforge.net>
Kirill Smelkov <kirr@mns.spb.ru>
John Stone <johns@megapixel.com>
Technorama Ltd. <oss-list-ups@technorama.net>
Jason Thomas <jason@topic.com.au>
Simon Rozman <simon@rozman.net>
Len J White <lwhite@darkfires.net>
Walt Holman <walt_h@lorettotel.net>
Fabio Di Niro <blaxwan@users.sourceforge.net>
Arjen de Korte <arjen@de-korte.org>
H<EFBFBD>vard Lygre <hklygre@online.no>
Niels Baggesen <niels@baggesen.net>
Niklas Edmundsson <nikke@acc.umu.se>
Olli Savia <ops@iki.fi>
%package hal
License: GPL v2 or later
Summary: Network UPS Tools Support for HAL (HAL/D-BUS Integration)
Group: Hardware/UPS
Requires: %{name} = %{version}
Provides: nut-package = %{version}
Conflicts: %{name}-classic
Requires: hal >= 0.5.8
%description hal
HAL package of Network UPS Tools is intended for use with supported USB
devices on HAL enabled desktops (Gnome and KDE).
Using this approach, you don't have to configure NUT files, nor to
manually start components, nor to install a specific NUT client.
Upon plugging your USB UPS, the right driver will be automatically
launched, and the according Power Manager GUI will pop up.
Note that this feature is still beta and incomplete. But it represents
a major evolution, and a huge user experience improvement!
Network UPS Tools is a collection of programs which provide a common
interface for monitoring and administering UPS hardware.
Detailed information about supported hardware can be found in
/usr/share/doc/packages/nut.
Authors:
--------
Arnaud Quette <aquette.dev@gmail.com, ArnaudQuette@Eaton.com, aquette@debian.org>
Russell Kroll <rkroll@exploits.org>
Stephen Brown <steve@datalimbo.net>
Bill Carlson <wcarlson@wkks.org>
Ben Collver <collver@softhome.net>
Luca Filipozzi <lfilipoz@debian.org>
Matthew Gabeler-Lee <msg2@po.cwru.edu>
Bruno Hall
Bo Kersey - VirCIO - Managed Server Solutions <bo@vircio.com>
Rick Lyons <rick@powerup.com.au>
Jeremy Maccelari <visualn@iafrica.com, jeremy@visuals.co.za>
Philippe Marzouk <philm@users.sourceforge.net>
Theodor A. Milkov <zimage@delbg.com>
Mark Powell <medp@primagraphics.co.uk>
Lars Balker Rasmussen <lbr@mjolner.dk>
Carlos Rodrigues <carlos.efr@mail.telepac.pt>
David Santinoli <david@santinoli.com>
Peter Selinger <selinger@users.sourceforge.net>
Kirill Smelkov <kirr@mns.spb.ru>
John Stone <johns@megapixel.com>
Technorama Ltd. <oss-list-ups@technorama.net>
Jason Thomas <jason@topic.com.au>
Simon Rozman <simon@rozman.net>
Len J White <lwhite@darkfires.net>
Walt Holman <walt_h@lorettotel.net>
Fabio Di Niro <blaxwan@users.sourceforge.net>
Arjen de Korte <arjen@de-korte.org>
H<EFBFBD>vard Lygre <hklygre@online.no>
Niels Baggesen <niels@baggesen.net>
Niklas Edmundsson <nikke@acc.umu.se>
Olli Savia <ops@iki.fi>
%package cgi
License: GPL v2 or later
Summary: Network UPS Tools Web Server Support (UPS Status Pages)
Group: Hardware/UPS
Requires: %{name}-classic = %{version}
Enhances: %{name}-classic
Supplements: packageand(%{name}-classic:apache2)
# for update from openSUSE <= 10.3, SLE <= 10
Provides: nut:/srv/www/cgi-bin/upsstats.cgi
%description cgi
Web server support package for the Network UPS Tools.
Network UPS Tools is a collection of programs which provide a common
interface for monitoring and administering UPS hardware.
Detailed information about supported hardware can be found in
/usr/share/doc/packages/nut.
Authors:
--------
Arnaud Quette <aquette.dev@gmail.com, ArnaudQuette@Eaton.com, aquette@debian.org>
Russell Kroll <rkroll@exploits.org>
Stephen Brown <steve@datalimbo.net>
Bill Carlson <wcarlson@wkks.org>
Ben Collver <collver@softhome.net>
Luca Filipozzi <lfilipoz@debian.org>
Matthew Gabeler-Lee <msg2@po.cwru.edu>
Bruno Hall
Bo Kersey - VirCIO - Managed Server Solutions <bo@vircio.com>
Rick Lyons <rick@powerup.com.au>
Jeremy Maccelari <visualn@iafrica.com, jeremy@visuals.co.za>
Philippe Marzouk <philm@users.sourceforge.net>
Theodor A. Milkov <zimage@delbg.com>
Mark Powell <medp@primagraphics.co.uk>
Lars Balker Rasmussen <lbr@mjolner.dk>
Carlos Rodrigues <carlos.efr@mail.telepac.pt>
David Santinoli <david@santinoli.com>
Peter Selinger <selinger@users.sourceforge.net>
Kirill Smelkov <kirr@mns.spb.ru>
John Stone <johns@megapixel.com>
Technorama Ltd. <oss-list-ups@technorama.net>
Jason Thomas <jason@topic.com.au>
Simon Rozman <simon@rozman.net>
Len J White <lwhite@darkfires.net>
Walt Holman <walt_h@lorettotel.net>
Fabio Di Niro <blaxwan@users.sourceforge.net>
Arjen de Korte <arjen@de-korte.org>
H<EFBFBD>vard Lygre <hklygre@online.no>
Niels Baggesen <niels@baggesen.net>
Niklas Edmundsson <nikke@acc.umu.se>
Olli Savia <ops@iki.fi>
%package devel
License: GPL v2 or later
Summary: Network UPS Tools (Unbreakable Power Supply Monitoring)
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
%description devel
Network UPS Tools is a collection of programs which provide a common
interface for monitoring and administering UPS hardware.
Detailed information about supported hardware can be found in
/usr/share/doc/packages/nut.
Authors:
--------
Arnaud Quette <aquette.dev@gmail.com, ArnaudQuette@Eaton.com, aquette@debian.org>
Russell Kroll <rkroll@exploits.org>
Stephen Brown <steve@datalimbo.net>
Bill Carlson <wcarlson@wkks.org>
Ben Collver <collver@softhome.net>
Luca Filipozzi <lfilipoz@debian.org>
Matthew Gabeler-Lee <msg2@po.cwru.edu>
Bruno Hall
Bo Kersey - VirCIO - Managed Server Solutions <bo@vircio.com>
Rick Lyons <rick@powerup.com.au>
Jeremy Maccelari <visualn@iafrica.com, jeremy@visuals.co.za>
Philippe Marzouk <philm@users.sourceforge.net>
Theodor A. Milkov <zimage@delbg.com>
Mark Powell <medp@primagraphics.co.uk>
Lars Balker Rasmussen <lbr@mjolner.dk>
Carlos Rodrigues <carlos.efr@mail.telepac.pt>
David Santinoli <david@santinoli.com>
Peter Selinger <selinger@users.sourceforge.net>
Kirill Smelkov <kirr@mns.spb.ru>
John Stone <johns@megapixel.com>
Technorama Ltd. <oss-list-ups@technorama.net>
Jason Thomas <jason@topic.com.au>
Simon Rozman <simon@rozman.net>
Len J White <lwhite@darkfires.net>
Walt Holman <walt_h@lorettotel.net>
Fabio Di Niro <blaxwan@users.sourceforge.net>
Arjen de Korte <arjen@de-korte.org>
H<EFBFBD>vard Lygre <hklygre@online.no>
Niels Baggesen <niels@baggesen.net>
Niklas Edmundsson <nikke@acc.umu.se>
Olli Savia <ops@iki.fi>
%prep
%setup -q
cp -a %{S:1} %{S:2} %{S:3} %{S:4} %{S:5} %{S:7} .
cp -a %{S:6} 20-nut-disable-hal-hid-ups.fdi
mv upsd-early-powerdown.init upsd-early-powerdown
%patch
%patch3
%patch4
%if %suse_version < 1030
%patch6 -R
%endif
%patch8
sed -i "s/@UPSD_USER@/%{USER}/g" upsd.init conf/upsmon.conf.sample
%patch11
%if %suse_version > 1030
%patch12
%endif
%build
autoreconf -f -i
%configure\
--sysconfdir=%{CONFPATH}\
--datadir=%{_datadir}/nut\
--with-all\
--with-dev\
--with-linux-hiddev=%{_includedir}/linux/hiddev.h\
--with-htmlpath=%{HTMLPATH}\
--with-cgipath=%{CGIPATH}\
--with-statepath=%{STATEPATH}\
--with-drvpath=%{MODELPATH}\
--with-user=%{USER}\
--with-group=%{GROUP}
make %{?jobs:-j%jobs}
PORT=$(sed -n 's/#define PORT //p' config.log)
if test "$PORT" = 3493 ; then
PORT=nut
fi
sed s/@PORT@/$PORT/ <nut.firewall.in >nut.firewall
%install
make DESTDIR=$RPM_BUILD_ROOT install
mkdir -p $RPM_BUILD_ROOT%{STATEPATH}
# SuSE rc
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/init.d
mkdir -p $RPM_BUILD_ROOT%{_sbindir}
install -m 755 upsd.init $RPM_BUILD_ROOT%{_sysconfdir}/init.d/upsd
ln -sf ../..%{_sysconfdir}/init.d/upsd $RPM_BUILD_ROOT%{_sbindir}/rcupsd
mkdir -p $RPM_BUILD_ROOT%{STATEPATH}
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/dbus-1/system.d
install -m 644 upsd.dbus-1 $RPM_BUILD_ROOT%{_sysconfdir}/dbus-1/system.d/upsd.conf
rename .sample "" $RPM_BUILD_ROOT%{_sysconfdir}/ups/*.sample
%if %suse_version >= 1030
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services
cp nut.firewall $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/nut
%endif
mkdir -p $RPM_BUILD_ROOT%{_datadir}/hal/fdi/policy/20thirdparty
install -m 644 20-nut-disable-hal-hid-ups.fdi $RPM_BUILD_ROOT%{_datadir}/hal/fdi/policy/20thirdparty/
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/pm/sleep.d
install nut.sleep $RPM_BUILD_ROOT%{_sysconfdir}/pm/sleep.d/80nut
# Rename web pages to not conflict with apache2-example-pages or user home page:
mv $RPM_BUILD_ROOT%{HTMLPATH}/index.html $RPM_BUILD_ROOT%{HTMLPATH}/ups.html
mv $RPM_BUILD_ROOT%{HTMLPATH}/header.html $RPM_BUILD_ROOT%{HTMLPATH}/ups_header.html
mv $RPM_BUILD_ROOT%{HTMLPATH}/bottom.html $RPM_BUILD_ROOT%{HTMLPATH}/ups_bottom.html
sed -i 's/\(header\|bottom\)/ups_&/g' $RPM_BUILD_ROOT%{HTMLPATH}/ups.html
%pre
usr/sbin/useradd -r -o -g %{GROUP} -s /bin/false \
-c "UPS daemon" -d /sbin %{USER} 2>/dev/null || :
%post
# Be sure that all files are owned by a dedicated user.
bin/chown -R %{USER}:root %{STATEPATH}
%post -n libupsclient1 -p /sbin/ldconfig
%post classic
%{fillup_and_insserv -f -n upsd}
# Generate initial passwords.
if usr/bin/fgrep -q "password = @UPSD_INITIAL_MASTER_PASSWORD@" %{CONFPATH}/{upsmon.conf,upsd.users} ; then
UPSD_INITIAL_MASTER_PASSWORD=$(usr/bin/head -c 20 /dev/urandom | usr/bin/md5sum | usr/bin/head -c 10)
usr/bin/sed -i s/@UPSD_INITIAL_MASTER_PASSWORD@/$UPSD_INITIAL_MASTER_PASSWORD/ %{CONFPATH}/{upsmon.conf,upsd.users}
fi
if usr/bin/fgrep -q "password = @UPSD_INITIAL_SLAVE_PASSWORD@" %{CONFPATH}/upsd.users ; then
UPSD_INITIAL_SLAVE_PASSWORD=$(usr/bin/head -c 20 /dev/urandom | usr/bin/md5sum | usr/bin/head -c 10)
usr/bin/sed -i s/@UPSD_INITIAL_SLAVE_PASSWORD@/$UPSD_INITIAL_SLAVE_PASSWORD/ %{CONFPATH}/upsd.users
fi
# Be sure that all files are owned by a dedicated user.
bin/chown %{USER}:root %{CONFPATH}/upsd.conf %{CONFPATH}/upsmon.conf %{CONFPATH}/upsd.users
bin/chmod 600 %{CONFPATH}/upsd.conf %{CONFPATH}/upsmon.conf %{CONFPATH}/upsd.users
# Install HALT_POWERDOWN_INSERT
if usr/bin/grep -q '^HALT_POWERDOWN_INSERT="\(%{_sysconfdir}/init\.d/upsd try-powerdown\|\)"' etc/sysconfig/shutdown ; then
usr/bin/sed -i 's:^\(HALT_POWERDOWN_INSERT="\).*"[[:space:]]*:\1%{_sysconfdir}/init.d/upsd try-powerdown":' etc/sysconfig/shutdown
else
echo >&2 "nut: WARNING: Unknown value of HALT_POWERDOWN_INSERT in %{_sysconfdir}/sysconfig/shutdown."
echo >&2 " Keeping unchanged. Should be:"
echo >&2 "HALT_POWERDOWN_INSERT=\"%{_sysconfdir}/init.d/upsd try-powerdown\""
fi
# Silently remove %{_sysconfdir}/sysconfig/smartups. File is now obsolete and
# values are copied to not replaced config files.
# %{_sysconfdir}/sysconfig/smartups was last present in SuSE Linux 10.0
rm -f %{_sysconfdir}/sysconfig/smartups
%preun classic
%{stop_on_removal upsd}
%postun -n libupsclient1 -p /sbin/ldconfig
%postun classic
%{restart_on_update upsd}
# Remove HALT_POWERDOWN_INSERT
if test $1 -eq 0 -a ! -f %{_sysconfdir}/init.d/upsd ; then
if usr/bin/grep -q '^HALT_POWERDOWN_INSERT="%{_sysconfdir}/init\.d/upsd try-powerdown"' etc/sysconfig/shutdown ; then
usr/bin/sed -i 's:^\(HALT_POWERDOWN_INSERT="\)%{_sysconfdir}/init\.d/upsd try-powerdown":\1":' etc/sysconfig/shutdown
else
echo >&2 "nut: WARNING: Unknown value of HALT_POWERDOWN_INSERT in %{_sysconfdir}/sysconfig/shutdown."
echo >&2 " Keeping unchanged. Should be:"
echo >&2 "HALT_POWERDOWN_INSERT=\"\""
fi
if test -f %{_sysconfdir}/init.d/upsd-early-powerdown ; then
echo >&2 "nut: WARNING: You may want to remove your %{_sysconfdir}/init.d/upsd-early-powerdown."
fi
fi
%insserv_cleanup
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%doc AUTHORS COPYING ChangeLog MAINTAINERS NEWS README README.SUSE UPGRADING upsd-early-powerdown docs/FAQ docs/*.txt docs/cables
%dir %{_prefix}/lib/ups
%dir %{_prefix}/lib/ups/driver
%{_prefix}/lib/ups/*
%exclude %{_prefix}/lib/ups/driver/snmp-ups
%exclude %{_prefix}/lib/ups/driver/netxml-ups
%{_datadir}/nut
%{_datadir}/hal/fdi/policy/20thirdparty/20-nut-disable-hal-hid-ups.fdi
%doc %{_mandir}/man8/*.*
%exclude %doc %{_mandir}/man8/ups*.*
%exclude %doc %{_mandir}/man8/netxml-ups*.*
%exclude %doc %{_mandir}/man8/snmp-ups*.*
%{MODELPATH}
%attr(700,%{USER},%{GROUP}) %{STATEPATH}
%files drivers-net
%defattr(-,root,root)
%{_prefix}/lib/ups/driver/snmp-ups
%{_prefix}/lib/ups/driver/netxml-ups
%doc %{_mandir}/man8/netxml-ups*.*
%doc %{_mandir}/man8/snmp-ups*.*
%files -n libupsclient1
%defattr(-,root,root)
%{_libdir}/*.so.*
%files classic
%defattr(-,root,root)
%config(noreplace) %{CONFPATH}/hosts.conf
%config(noreplace) %attr(600,%{USER},root) %{CONFPATH}/upsd.conf
%config(noreplace) %attr(600,%{USER},root) %{CONFPATH}/upsd.users
%config(noreplace) %attr(600,%{USER},root) %{CONFPATH}/upsmon.conf
%dir %{CONFPATH}
%config(noreplace) %{CONFPATH}/ups.conf
%config(noreplace) %{CONFPATH}/upsset.conf
%config(noreplace) %{CONFPATH}/upssched.conf
%{_bindir}/*
%doc %{_mandir}/man5/*.*
%doc %{_mandir}/man8/ups*.*
%{_sbindir}/*
%{_sysconfdir}/dbus-1/system.d/upsd.conf
%if %suse_version >= 1030
%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/nut
%endif
%{_sysconfdir}/init.d/upsd
%{_sysconfdir}/pm/sleep.d/80nut
%{_sysconfdir}/udev/rules.d/*.rules
%files cgi
%defattr(-,root,root)
%{CGIPATH}/*.cgi
%{HTMLPATH}/*.html
%{HTMLPATH}/*.png
%config(noreplace) %{CONFPATH}/upsstats-single.html
%config(noreplace) %{CONFPATH}/upsstats.html
%files hal
%defattr(-,root,root)
%{_datadir}/hal/fdi/information/20thirdparty/20-ups-nut-device.fdi
%{_libdir}/hal/*
%files devel
%defattr(-,root,root)
%{_includedir}/*.h
%{_libdir}/*.so
%{_libdir}/*.*a
%{_libdir}/pkgconfig/*.pc
%doc %{_mandir}/man3/*.*
%changelog
* Mon May 26 2008 sbrabec@suse.cz
- Provide and Require nut-package (bnc#337059#c3).
* Fri May 09 2008 sbrabec@suse.cz
- Added suspend hook (bnc#230267).
- Updated to final version 2.2.2 (bnc#385133):
* added two models supported by megatec
* includes build fixes from patches
* Wed Apr 30 2008 sbrabec@suse.cz
- Added hardware modaliases for solver.
- Fixed generating of NUT firewall rule (bnc#385111).
- Installed HAL FDI to disable hald-addon-hid-ups (bnc#385253).
- Split nut-classic and hut-hal variants to separate subpackages
(bnc#337059).
- Split networking drivers and web server into separate packages to
reduce dependencies (bnc#156614).
- Split shared library according to shared library policy.
- Updated README.SuSE.
- Updated to version 2.2.2-pre3 (bnc#385133):
* support for new devices: APC BACK-UPS XS LCD, Atlantis Land,
Mustek Powermust Office 650, Oneac XAU models, Powerware PW5115
and PW9120 (USB), Nitram Elite 2005.
* Advanced Integrated Power Management (NUT HAL integration).
* Shutdown handling has been reworked.
* Support for MGE UPS SYSTEMS 3 phases units has been added.
* snmp-ups now supports MGE* Environment Sensor (ref 66 846).
* The ambient.temperature reporting has also been fixed for units
other than APC.
* the netxml-ups driver has appeared to support MGE* network
HTTP/XML cards.
* The shared library installed by default.
* powerpanel has reach a new step toward the replacement of
nitram and cpsups drivers.
* many changes, cleanup and fixes to the NUT core and various
drivers.
* Thu Apr 24 2008 sbrabec@suse.cz
- Updated to version 2.2.1:
* support for new devices: all MGE Office Protection Systems
units, Advice TopGuard 2000, Belkin F6H375-USB, Dynamix
UPS1700D, Effekta RM2000MH, Jageson Technology Jasuny USPS,
Powercom SMK-1500A and SXL-1500A, PowerWalker Line-Interactive
VI 400/800 and 600, Powerware 9110, UNITEK Alpha 2600, UPSonic
CXR1000, some vintage serial APC UPSs.
* Improvements, fixes and backports to usbhid-ups.
* Updated udev rules.
* megatec and megatec_usb drivers backported.
* development files improved.
* Mon Apr 14 2008 schwab@suse.de
- Work around misuse of libtool.
* Thu Oct 25 2007 sbrabec@suse.cz
- Fixed use of uninitialized memory (#331749#c13).
* Tue Oct 23 2007 sbrabec@suse.cz
- Renamed web pages to prevent conflicts.
* Mon Oct 22 2007 sbrabec@suse.cz
- Fixed udev USB rules for current kernels (#331749).
- Added SuSEfirewall2 rule and fixed documentation (#335466).
* Tue Aug 07 2007 sbrabec@suse.cz
- Updated to version 2.2.0:
* New build infrastructure, with shared library.
* Support for HAL and Plug and Play.
* New drivers.
* Support for many new devices.
* IPv6 support.
* Client commands now defaults to localhost.
* Driver improvements.
* Documentation improvements.
* Wed May 16 2007 olh@suse.de
- Buildrequires libusb -> libusb-devel
* Tue Feb 20 2007 mvaner@suse.cz
- Comparison with string literal (bug #232417)
- setcmd-literal.patch
* Mon Sep 18 2006 anosek@suse.cz
- fixed compiler warning: array subscript out of range [#204417]
(overflow.patch)
* Fri Sep 01 2006 anosek@suse.cz
- updated to 2.0.4
* A bug has been fixed in NUT core to support resuming from
suspend-to-disk. This should also fix other similar issues,
like time synchronisation through the NTP.
* The mge-shut driver now better detects the Low Battery status,
support new models and fixes some wrong status and data.
It also fixes some issue where the UPS wasn't restarting
(refer to mge-shut manpage).
* The genericups custom configuration through ups.conf
is working again
* The genericups driver type 22 also support CyberPower 725SL
(and maybe others SL models)
* The new megatec driver, which will replace a bunch of drivers
by nut 2.2 (refer to docs/megatec.txt and UPGRADING) has been
backported from the trunk (Development tree). The powermust
driver has also received some attention.
* The new rhino driver was added to support Microsol Rhino UPS
hardware. The solis has also been improved for solaris
compatibility, and internal / external shutdown programming.
Solis can now save external shutdown programming to ups,
and support new cables for solis 3
- dropped obsolete patch (nut-2.0.4-memset.patch)
- fixed subscript out of range [#185610] (overflow.patch)
* Fri Jun 23 2006 sbrabec@suse.cz
- Typo fix in the init script.
* Thu Apr 27 2006 sbrabec@suse.cz
- Work correctly, if port is a symlink (168611#c6).
* Tue Apr 25 2006 sbrabec@suse.cz
- Fixed init script to behave correctly for port = auto (#168611).
* Fri Mar 24 2006 sbrabec@suse.cz
- Typo fixes.
* Tue Mar 21 2006 sbrabec@suse.cz
- Added D-BUS policy file (#159668).
* Mon Mar 20 2006 sbrabec@suse.cz
- Support for UPS powerdown using HALT_POWERDOWN_INSERT.
- Added upsd-early-powerdown template and improved README.SUSE.
- Remove obsolete /etc/sysconfig/smartups in %%post.
* Fri Mar 17 2006 sbrabec@suse.cz
- README.SUSE fixes (Marius Tomaschewski).
- Init script fix.
- Install all driver manual pages.
- Use new powersave-notify path.
* Wed Mar 15 2006 sbrabec@suse.cz
- Build all available drivers.
* Tue Mar 14 2006 sbrabec@suse.cz
- Improved README.SUSE and predefined configuration.
- Checks and fixes in the init script.
- Improved notify flags, integrate with powersave.
(Some fixes provided by Marius Tomaschewski.)
* Fri Mar 10 2006 sbrabec@suse.cz
- Fixed memset error in upsrw.c.
- Fixed upsmon typo in the init script.
- Preconfigure upsd with one local UPS as default.
* Thu Mar 09 2006 sbrabec@suse.cz
- Updated to version 2.0.3.
- Removed SuSEconfig, wrote new init script
(#27721, #141948, #156614).
* Mon Feb 20 2006 mmarek@suse.cz
- fix array index out of range
[#133610] (overflow.patch)
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Thu Jan 12 2006 sbrabec@suse.cz
- Updated to version 2.0.3-pre2.
* Thu Nov 03 2005 dmueller@suse.de
- don't build as root
* Mon Aug 01 2005 sbrabec@suse.cz
- Updated to version 2.0.2.
* Fri Jan 21 2005 sbrabec@suse.cz
- Updated to version 2.0.1-pre4.
* Mon Aug 23 2004 sbrabec@suse.cz
- Updated to version 2.0.0.
* Mon Apr 19 2004 ro@suse.de
- build with apache2
* Wed Apr 14 2004 aj@suse.de
- build without kernel-source.
* Tue Mar 23 2004 sbrabec@suse.cz
- Force-define HID_MAX_USAGES (kernel 2.6.4 include file bug, should
be fixed in later kernels).
* Mon Feb 09 2004 sbrabec@suse.cz
- Updated to version 1.4.1.
* Thu Oct 02 2003 stark@suse.de
- adapted pre-configuration and startscript to reflect changes
in 1.4.0
- changed file-permissions
* Mon Sep 29 2003 stark@suse.de
- update to 1.4.0
* Tue Aug 19 2003 mmj@suse.de
- Add sysconfig metadata [#28939]
* Thu Jun 26 2003 stark@suse.de
- update to 1.2.2
- removed config-check in init-script
* Sat Jun 21 2003 ro@suse.de
- added directories to filelist
* Tue May 13 2003 mmj@suse.de
- use %%defattr
* Thu Feb 20 2003 mmj@suse.de
- Add sysconfig metadata [#22688]
* Tue Aug 06 2002 olh@suse.de
- use X-UnitedLinux-Should-Start
* Mon Aug 05 2002 olh@suse.de
- Required-start: setserial, add Prereq
* Fri Aug 02 2002 ro@suse.de
- adapt server-root
* Sat Jul 27 2002 kukuk@suse.de
- fix SuSEconfig.nut:
- don't include rc.config [Bug #17267]
- use correct path to sysconfig directory
* Sat Jul 27 2002 adrian@suse.de
- fix neededforbuild
* Tue May 28 2002 stark@suse.de
- update to 0.50.0
- changed init-script to use upsdrvctl
(make it possible to change config-files manually without
changing /etc/sysconfig/smartups)
* Tue Apr 09 2002 stark@suse.de
- update to 0.45.5
- fixed SuSEconfig.nut to sysconfig scheme
* Fri Feb 01 2002 ro@suse.de
- changed neededforbuild <libpng> to <libpng-devel-packages>
* Sat Jan 12 2002 stark@suse.de
- little ifarch fix again :-(
* Fri Jan 11 2002 stark@suse.de
- changed rc.config.d leftover in rcups
- build hidups on all archs excluding s390 (finally)
* Tue Jan 08 2002 stark@suse.de
- build hidups only on i386
* Thu Jan 03 2002 stark@suse.de
- build hidups driver for EXPERIMENTAL USB usage
* Wed Dec 12 2001 stark@suse.de
- updated to 0.45.3
- removed START_SMARTUPS
- renamed package to nut
- b2zipped sources
- moved rc.config.d/smartups.rc.config -> sysconfig/smartups
* Mon Oct 22 2001 stark@suse.de
- fixed init-script to POWERDOWN correctly (#11909)
- added rc.config variable UPSLOG_INTERVAL
* Tue Sep 18 2001 stark@suse.de
- changed STATEPATH to /var/lib/ups according to FHS (#8678)
* Fri Sep 07 2001 stark@suse.de
- added Conflicts: apcupsd
(/usr/local/httpd/cgi-bin/multimon.cgi is in both packages)
* Mon Sep 03 2001 stark@suse.de
- added a patch to be able to write the POWERDOWNFLAG to
only-root-writable directories
* Mon Aug 13 2001 stark@suse.de
- update to 0.45.1
* Mon Jun 18 2001 stark@suse.de
- update to 0.45.0
* Fri Apr 27 2001 stark@suse.de
- minor changes in init-script to avoid premature aborts
* Thu Apr 19 2001 stark@suse.de
- minor changes on %%config-files and %%clean
- changed upsd-exec-group to uucp
- added libjpeg freetype2 freetype2-devel xf86
to neededforbuild
* Tue Apr 17 2001 stark@suse.de
- init-script cleanup: try-restart and exitcodes
* Fri Mar 23 2001 stark@suse.de
- update to 0.44.3
* Fri Mar 16 2001 stark@suse.de
- minor changes in init-script and documentation
* Thu Jan 04 2001 stark@suse.de
- update to 0.44.2
* Thu Dec 14 2000 stark@suse.de
- fixed case in rc-script
- move SuSE scripts and configs out of the diff
- minor changes in config for insserv (use macros)
* Mon Nov 27 2000 stark@suse.de
- moved /sbin/init.d -> /etc/init.d
* Fri Nov 24 2000 stark@suse.de
- init script more LSB compliant
* Wed Nov 22 2000 stark@suse.de
- improved runlevel position
- spec now uses %%{_tmppath}
* Tue Nov 21 2000 stark@suse.de
- removed runlevel-links from spec-file and moved to insserv
- added init information to rc-script
* Mon Nov 20 2000 stark@suse.de
- minor changes in rc-script (status)
* Wed Nov 15 2000 ro@suse.de
- fixed neededforbuild gdlib -> gd gd-devel
* Thu Nov 09 2000 ro@suse.de
- neededforbuild gd -> perl-GD
* Wed Nov 08 2000 stark@suse.de
- adapted rc-script to use rc.status
* Thu Oct 05 2000 stark@suse.de
- fixed typo in SuSEconfig.smartups
* Mon Sep 18 2000 stark@suse.de
- update to 0.44.1
- new spec-file (with buildroot etc.)
- fixed rc-script for server/client
- added SuSEconfig.smartups
* Thu Sep 14 2000 stark@suse.de
- fixed rc-script (added . /etc/rc.config)
* Tue Jul 11 2000 lemsi@suse.de
- bugfix in ups start-script
- changed /etc/rc.config to /etc/rc.config.d/smartups.rc.config
* Mon Feb 28 2000 kukuk@suse.de
- Move most variables from rc.config -> rc.config.d
* Thu Feb 24 2000 lemsi@suse.de
- new version
- the orginal source is renamed, new name is nut-0.XX.X.tar.gz
- added 2 new variables in rc.config; GENERICUPS_MODEL; SMARTUPS_MASTER
- model check in rcups for genericups
- starting all 4 deamons in rcups
- new binary-installpath /usr/sbin
* Wed Nov 10 1999 ro@suse.de
- fixed postinstall: (its post and not pre)
* Tue Oct 26 1999 lemsi@suse.de
- added 2 new variables in rc.config; SMARTUPS_DEVICE; SMARTUPS_MODEL
- modified rcups and smartups.spec
- sending mail after instalation
* Fri Oct 15 1999 ro@suse.de
- added libpng to neededforbuild (now needed for libgd)
* Fri Oct 15 1999 ro@suse.de
- fixed patch arg
* Thu Oct 14 1999 ray@suse.de
- new package