[Pm-utils] [PATCH] on_ac_power: support UPower (new name for DeviceKit-power)

Michal Schmidt mschmidt at redhat.com
Tue Feb 23 05:57:05 PST 2010


DeviceKit-power got renamed to UPower and its D-Bus interface changed
accordingly.

Try UPower first in on_ac_power.
If it fails, try DeviceKit-power.
It if fails too, try hal.

Also update documentation.
---

 man/pm-action.xml       |    2 +-
 man/pm-is-supported.xml |   10 +++++-----
 src/on_ac_power         |   12 +++++++++++-
 3 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/man/pm-action.xml b/man/pm-action.xml
index 08a7528..468d477 100644
--- a/man/pm-action.xml
+++ b/man/pm-action.xml
@@ -104,7 +104,7 @@
       For some options external programs are needed.
     </para>
     <para>
-      These commands will usually be called by <command>DeviceKit-power</command>
+      These commands will usually be called by <command>UPower</command>
       or <command>hald</command> when triggered to do so by a program
       in a desktop session such as <command>gnome-power-manager</command>. 
       Calling them from the command line is also possible, but it is not 
diff --git a/man/pm-is-supported.xml b/man/pm-is-supported.xml
index 1d52524..9f9588b 100644
--- a/man/pm-is-supported.xml
+++ b/man/pm-is-supported.xml
@@ -89,7 +89,7 @@
     <para>
       The intended purpose of <command>&dhpackage;</command> is to
       find out which power management modes are supported by the 
-      system. hald(8) will call it to do just that. (Note that DeviceKit-power
+      system. hald(8) will call it to do just that. (Note that UPower
       does not use this.)
     </para>
   </refsect1>
@@ -161,10 +161,6 @@
     <!-- In alpabetical order. -->
     <para>
       <citerefentry>
-	<refentrytitle>DeviceKit-power</refentrytitle>
-	<manvolnum>7</manvolnum>
-      </citerefentry>,
-      <citerefentry>
 	<refentrytitle>hald</refentrytitle>
 	<manvolnum>8</manvolnum>
       </citerefentry>,
@@ -175,6 +171,10 @@
       <citerefentry>
 	<refentrytitle>s2both</refentrytitle>
 	<manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+	<refentrytitle>UPower</refentrytitle>
+	<manvolnum>7</manvolnum>
       </citerefentry>
     </para>
   </refsect1>
diff --git a/src/on_ac_power b/src/on_ac_power
index fdbcb36..1f9c59e 100755
--- a/src/on_ac_power
+++ b/src/on_ac_power
@@ -30,7 +30,17 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 #
 
-# prefer DeviceKit-power if available
+# prefer UPower if available
+if s="$(dbus-send --system --print-reply \
+    --dest=org.freedesktop.UPower \
+    /org/freedesktop/UPower \
+    org.freedesktop.DBus.Properties.Get \
+    string:org.freedesktop.UPower string:OnBattery)"; then
+    echo "$s" | grep -q 'boolean false'
+    exit $?
+fi
+
+# try its old name 'DeviceKit-power' too
 if s="$(dbus-send --system --print-reply \
     --dest=org.freedesktop.DeviceKit.Power \
     /org/freedesktop/DeviceKit/Power \



More information about the Pm-utils mailing list