Hello community,

here is the log from the commit of package apcupsd for openSUSE:Factory
checked in at Mon Aug 29 11:01:02 CEST 2011.



--------
--- apcupsd/apcupsd.changes     2011-08-02 18:02:00.000000000 +0200
+++ /mounts/work_src_done/STABLE/apcupsd/apcupsd.changes        2011-08-26 
13:54:40.000000000 +0200
@@ -1,0 +2,5 @@
+Thu Aug 25 20:02:35 CEST 2011 - sbra...@suse.cz
+
+- Implemented hibernate on power fail (bnc#703592#c39).
+
+-------------------------------------------------------------------

calling whatdependson for head-i586


New:
----
  apcupsd-hibernate.patch
  apcupsd.hibernate
  apcupsd.sysconfig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ apcupsd.spec ++++++
--- /var/tmp/diff_new_pack.0Jwxab/_old  2011-08-29 10:55:12.000000000 +0200
+++ /var/tmp/diff_new_pack.0Jwxab/_new  2011-08-29 10:55:12.000000000 +0200
@@ -19,21 +19,25 @@
 
 
 Name:           apcupsd
-BuildRequires:  apache2-devel distribution-release dos2unix gcc-c++ 
gconf2-devel gd-devel gnome-vfs2-devel gtk2-devel mailx ncurses-devel 
net-snmp-devel sysvinit tcpd-devel update-desktop-files
+BuildRequires:  apache2-devel distribution-release dos2unix gcc-c++ 
gconf2-devel gd-devel gnome-vfs2-devel gtk2-devel mailx ncurses-devel 
net-snmp-devel pm-utils sysvinit tcpd-devel update-desktop-files
 Group:          Hardware/UPS
 License:        GPLv2+
 Summary:        APC UPS Daemon (Powerful Daemon for APC UPSs)
 Version:        3.14.8
-Release:        3
+Release:        5
 Url:            http://www.apcupsd.com/
 Source:         apcupsd-%{version}.tar.bz2
 Source1:        apcupsd.init
 Source2:        README.SUSE
 Source3:        apcupsd-early-powerdown.init
+Source4:        apcupsd.hibernate
+Source5:        apcupsd.sysconfig
 # PATCH-FIX-OPENSUSE apcupsd-suse.patch sbra...@suse.cz -- Do not perform halt 
script alternation on install.
 Patch:          apcupsd-suse.patch
 # PATCH-FIX-OPENSUSE apcupsd-gpp.patch sbra...@suse.cz -- Build against C++ 
unfriendly system tcpd.h. See below.
 Patch1:         apcupsd-gpp.patch
+# PATCH-FEATURE-OPENSUSE apcupsd-hibernate.patch sbra...@suse.cz -- Support 
for hibernation on powerfail.
+Patch2:         apcupsd-hibernate.patch
 # PATCH-FEATURE-OPENSUSE apcupsd-powersave.patch sbra...@suse.cz -- Call 
powersave-notify in distros where it is available.
 Patch3:         apcupsd-powersave.patch
 # PATCH-FIX-OPENSUSE apcupsd-largebuf-overflow.patch sbra...@suse.cz -- Fix 
static buffer overflow.
@@ -73,13 +77,14 @@
 %prep
 %setup -q
 cp -a %{S:1} platforms/suse/apcupsd.in
-cp -a %{S:2} .
+cp -a %{S:2} %{S:4} %{S:5} .
 cp -a %{S:3} apcupsd-early-powerdown
 chmod +x apcupsd-early-powerdown
 %patch
 # To be surely in sync with tcpd API, build against system header. It requires 
a patch.
 rm include/tcpd.h
 %patch1
+%patch2
 %if %suse_version < 1110
 %patch3
 %endif
@@ -132,6 +137,11 @@
 %if %suse_version > 1130
 rm -r $RPM_BUILD_ROOT/usr/share/hal
 %endif
+mkdir -p $RPM_BUILD_ROOT/etc/pm/sleep.d
+sed "s:@PWRFAILDIR@:%{_sysconfdir}/apcupsd:g" <apcupsd.hibernate 
>$RPM_BUILD_ROOT/etc/pm/sleep.d/99apcupsd
+chmod +x $RPM_BUILD_ROOT/etc/pm/sleep.d/99apcupsd
+mkdir -p $RPM_BUILD_ROOT/var/adm/fillup-templates
+cp apcupsd.sysconfig $RPM_BUILD_ROOT/var/adm/fillup-templates/sysconfig.apcupsd
 
 %post
 %{fillup_and_insserv apcupsd}
@@ -196,6 +206,7 @@
 %{_sbindir}/rcapcupsd
 %{_sbindir}/smtp
 /etc/init.d/apcupsd
+/etc/pm/sleep.d/99apcupsd
 %dir %{_sysconfdir}/apcupsd/
 %{_sysconfdir}/apcupsd/apccontrol
 %config(noreplace)%{_sysconfdir}/apcupsd/apcupsd.conf
@@ -212,6 +223,7 @@
 %{apache_serverroot}/cgi-bin/upsstats.cgi
 %{apache_serverroot}/cgi-bin/upsimage.cgi
 %doc %{_mandir}/man?/*.*
+/var/adm/fillup-templates/sysconfig.*
 
 %files gui
 %defattr(-,root,root)

++++++ README.SUSE ++++++
--- /var/tmp/diff_new_pack.0Jwxab/_old  2011-08-29 10:55:12.000000000 +0200
+++ /var/tmp/diff_new_pack.0Jwxab/_new  2011-08-29 10:55:12.000000000 +0200
@@ -6,15 +6,15 @@
 If you want to configure nut to do suspend to disk instead of shutdown
 you should:
 
-- Verify, that suspend to disk works correctly with your desktop:
-  shutdown -z +0
-  (You can lose your unsaved data, if your computer does not support
-  suspend.)
-
-- Properly edit your /etc/apcupsd/apccontrol: Replace -h by -z in
-  shutdown command parameters.
-- Verify, that your UPS provides reasonable grant period to complete
-  suspend in all situations.
+- You need pm-utils package installed.
+- Verify, that suspend to disk works correctly on your machine,
+  e. g. by pm-hibernate
+  (You can lose your unsaved data, if your computer does not hibernate
+  correctly.)
+- Verify, that your UPS provides reasonable grace period to complete
+  hibernation in all situations.
+- Use YaST Sysconfig editor and set
+  Hardware->UPS->APCUPSD_POWERFAIL_BEHAVIOR to "hibernate".
 
 
 Environment with possible service timeouts

++++++ apcupsd-hibernate.patch ++++++
--- platforms/apccontrol.in
+++ platforms/apccontrol.in
@@ -20,6 +20,7 @@
 
 APCPID=@PIDDIR@/apcupsd.pid
 APCUPSD=@sbindir@/apcupsd
+HIBERNATE=/usr/sbin/pm-hibernate
 SHUTDOWN=@SHUTDOWN@
 SCRIPTSHELL=@SCRIPTSHELL@
 SCRIPTDIR=@sysconfdir@
@@ -103,8 +104,14 @@ case "$1" in
        ${SHUTDOWN} -r now "apcupsd UPS ${2} initiated reboot"
     ;;
     doshutdown)
-       echo "UPS ${2} initiated Shutdown Sequence" | ${WALL}
-       ${SHUTDOWN} -h now "apcupsd UPS ${2} initiated shutdown"
+       . /etc/sysconfig/apcupsd
+       if test "$APCUPSD_POWERFAIL_BEHAVIOR" = "hibernate" ; then
+               echo "UPS ${2} initiated hibernation" | ${WALL}
+               $HIBERNATE
+       else
+               echo "UPS ${2} initiated Shutdown Sequence" | ${WALL}
+               ${SHUTDOWN} -h now "apcupsd UPS ${2} initiated shutdown"
+       fi
     ;;
     annoyme)
        echo "Power problems with UPS ${2}. Please logoff." | ${WALL}
++++++ apcupsd-powersave.patch ++++++
--- /var/tmp/diff_new_pack.0Jwxab/_old  2011-08-29 10:55:13.000000000 +0200
+++ /var/tmp/diff_new_pack.0Jwxab/_new  2011-08-29 10:55:13.000000000 +0200
@@ -160,7 +160,7 @@
 ===================================================================
 --- platforms/apccontrol.in.orig
 +++ platforms/apccontrol.in
-@@ -24,6 +24,7 @@ SHUTDOWN=@SHUTDOWN@
+@@ -25,6 +25,7 @@ SHUTDOWN=@SHUTDOWN@
  SCRIPTSHELL=@SCRIPTSHELL@
  SCRIPTDIR=@sysconfdir@
  WALL=wall
@@ -168,7 +168,7 @@
  
  #
  # Concatenate all output from this script to the events file
-@@ -56,18 +57,23 @@ then
+@@ -57,18 +58,23 @@ then
      fi
  fi
  
@@ -196,7 +196,7 @@
      ;;
  #
  # powerout, onbattery, offbattery, mainsback events occur
-@@ -76,47 +82,47 @@ case "$1" in
+@@ -77,53 +83,53 @@ case "$1" in
      powerout)
      ;;
      onbattery)
@@ -235,9 +235,16 @@
        ${SHUTDOWN} -r now "apcupsd UPS ${2} initiated reboot"
      ;;
      doshutdown)
--      echo "UPS ${2} initiated Shutdown Sequence" | ${WALL}
-+      notify "UPS ${2} initiated Shutdown Sequence"
-       ${SHUTDOWN} -h now "apcupsd UPS ${2} initiated shutdown"
+       . /etc/sysconfig/apcupsd
+       if test "$APCUPSD_POWERFAIL_BEHAVIOR" = "hibernate" ; then
+-              echo "UPS ${2} initiated hibernation" | ${WALL}
++              notify "UPS ${2} initiated hibernation"
+               $HIBERNATE
+       else
+-              echo "UPS ${2} initiated Shutdown Sequence" | ${WALL}
++              notify "UPS ${2} initiated Shutdown Sequence"
+               ${SHUTDOWN} -h now "apcupsd UPS ${2} initiated shutdown"
+       fi
      ;;
      annoyme)
 -      echo "Power problems with UPS ${2}. Please logoff." | ${WALL}

++++++ apcupsd.hibernate ++++++
#!/bin/bash

. $PM_UTILS_LIBDIR/functions

case "$1" in
        hibernate)
                if test -f @PWRFAILDIR@/powerfail ; then
                        /etc/init.d/apcupsd stop
                        # Stopping of daemon typically needs at least 3 sec.
                        sleep 10
                        /etc/init.d/apcupsd powerdown
                fi
                ;;
        thaw)
                # powerfail exists => apcupsd was running before hibernation
                if test -f @PWRFAILDIR@/powerfail ; then
                        /etc/init.d/apcupsd start
                fi
                ;;
        *)
                ;;
esac

exit 0
++++++ apcupsd.sysconfig ++++++
## Path:        Hardware/UPS
## Description: Defines UPS behavior
## Type:        list(shutdown,hibernate)
## Default:     shutdown
#
# What to do if UPS goes out of power? Shutdown or hibernate.
# Read /usr/share/doc/packages/apcupsd/README.SUSE for more.
#
APCUPSD_POWERFAIL_BEHAVIOR="shutdown"

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Remember to have fun...

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to