summaryrefslogtreecommitdiff
path: root/tools/hal-system-lcd-set-brightness
blob: aa7ceb4eb82c352d209d501392abb6bb303f35d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/bin/sh
#
# Copyright (C) 2005 Richard Hughes <richard@hughsie.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.

. hal-functions

# Check for environment variables
if [ -z "$HAL_PROP_LAPTOP_PANEL_ACCESS_METHOD" -a -z "$HAL_PROP_LINUX_SYSFS_PATH" ] || 
   [ -z "$HAL_PROP_LAPTOP_PANEL_NUM_LEVELS" ] ; then
        echo "org.freedesktop.Hal.Device.UnknownError" >&2
        echo "Missing or empty environment variable(s)." >&2
        echo "This script should be started by hald." >&2
        exit 1
fi

# read value for set brightness
read value

# Check for values outside range
if [ ${value} -lt 0 ] || [ ${value} -ge $HAL_PROP_LAPTOP_PANEL_NUM_LEVELS ]; then
	echo "org.freedesktop.Hal.Device.LaptopPanel.Invalid" >&2
	echo "Brightness has to be between 0 and $((HAL_PROP_LAPTOP_PANEL_NUM_LEVELS - 1))" >&2
	exit 1
fi

export value

hal_check_priv org.freedesktop.hal.power-management.lcd-panel
hal_exec_backend