+#!/bin/sh
+
+usage()
+{
+cat << EOF
+Usage:
+ $0 [OPTIONS]
+ $0 -h
+
+Refresh battery information provided by upower.
+
+OPTIONS:
+ -h Show this help.
+ -r Restart upower service
+EOF
+}
+
+
+restartdaemon=0
+
+while getopts "rRhnq8HSxc:s:t:T:uL" OPTION
+do
+ case $OPTION in
+ h)
+ usage
+ exit
+ ;;
+ r)
+ restartdaemon=1
+ ;;
+ *)
+ usage >&2
+ exit 1
+ ;;
+ esac
+done
+shift $(($OPTIND - 1))
+
+
+
+if [ "${restartdaemon}" -gt 0 ]; then
+ systemctl restart upower
+else
+ for bat in BAT0 BAT1; do
+ busctl call --system \
+ org.freedesktop.UPower \
+ /org/freedesktop/UPower/devices/battery_${bat} \
+ org.freedesktop.UPower.Device Refresh
+ done
+fi