Bug#918966: new(?) backlight brightness script
Dmitry Bogatov
KAction at debian.org
Sat Jan 12 12:41:35 GMT 2019
[2019-01-11 07:41] Aleksi Suhonen <debian-reportbug-2019 at ssd.axu.tm>
> part text/plain 828
> Package: initscripts
> Severity: wishlist
> Version: 2.93-3
>
> After upgrading and rebooting a virtual machine that has only a virtual
> serial console, I get this message:
>
> /etc/init.d/brightness: 36: /etc/init.d/brightness: cannot create
> /sys/class/backlight/acpi_video0/brightness: Directory nonexistent
> It's not critical, but I'm wondering if desktop features could be
> separated from this package. Or if there was a debconf knob to turn them
> all on and off easily?
I understand your concern about desktop feature, but since it quite
simple shell script, I believe, there is no better place for it. If you
have idea, where `brightness' script suits better to, you are welcome!
> Also, the error message could be avoided with some more checking:
>
> if [ -d /sys/class/backlight/acpi_video0 ]; then
> readonly SYS_CONTROL=/sys/class/backlight/acpi_video0/brightness
> readonly SYS_MAXIMUM=/sys/class/backlight/acpi_video0/max_brightness
> else
> readonly SYS_CONTROL=/dev/null
> readonly SYS_MAXIMUM=/dev/null
> fi
I like this approach the best. Here is pending patch. Feedback is
welcome, in wording in particular.
From 97e33ff24c857bf20f6d73a2d75c2d200acd0693 Mon Sep 17 00:00:00 2001
From: Dmitry Bogatov <KAction at debian.org>
Date: Fri, 11 Jan 2019 13:31:21 +0000
Subject: [PATCH] Check in `brightness' initscript for backlight presence
Check for presence of backlight-related virtual files in `brightness'
initscript before trying to set values in them, since they can be
missing on systems with only a serial console. (Closes: #918966)
---
debian/changelog | 2 ++
debian/src/initscripts/etc/init.d/brightness | 9 +++++++--
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index a8336299..db5b0443 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,8 @@ sysvinit (2.93-4) UNRELEASED; urgency=medium
* Drop unneeded `40_multiarch_libcrypt.patch': upstream Makefile
correctly supplies -lcrypt flag by itself.
* Make debian/upstream/signing-key.asc minimal
+ * Check for presence of backlight-related virtual files in `brightness'
+ initscript (Closes: #918966)
-- Dmitry Bogatov <KAction at debian.org> Thu, 10 Jan 2019 19:45:28 +0000
diff --git a/debian/src/initscripts/etc/init.d/brightness b/debian/src/initscripts/etc/init.d/brightness
index 3e22bff8..93c1cb8a 100755
--- a/debian/src/initscripts/etc/init.d/brightness
+++ b/debian/src/initscripts/etc/init.d/brightness
@@ -9,13 +9,18 @@
# Description: This script saves the brightness level between restarts.
# It is called from the boot, halt and reboot scripts.
### END INIT INFO
+. /lib/init/vars.sh
+. /lib/lsb/init-functions
+
readonly SAVEDFILE=/var/lib/initscripts/brightness
readonly DEFAULT_LEVEL=4
readonly SYS_CONTROL=/sys/class/backlight/acpi_video0/brightness
readonly SYS_MAXIMUM=/sys/class/backlight/acpi_video0/max_brightness
-. /lib/init/vars.sh
-. /lib/lsb/init-functions
+if ! test -f "${SYS_CONTROL}" ; then
+ log_success_msg "Brightness control not supported: no backlight"
+ exit 0
+fi
do_status () {
MSG="Current brightness level is $(cat ${SYS_CONTROL})"
More information about the Debian-init-diversity
mailing list