On Thu, Jan 11, 2024 at 08:53:46AM +0000, Rodolfo Medina wrote: > As my machine has a dual boot with MS Windows, F2 and F3 keyboard keys work > fine in Windows in lowering and increasing sound volume, and F1 for muting it > etcetera F4, F5, F6..., but in Debian they don't seem to work.
"In Debian" is a wide land :-) OT1H... A week ago I installed Debian's Bookworm with MATE on a friend's computer (Thinkpad x270) and the loudness keys worked out of the box. OTOH... Myself -- I have no desktop environment (fvwm on X, *no* systemd, *no* DBUS, so that would count as "exotic guy"). On my laptop (a Thinkpad x230) the background brightness wasn't working (I don't know about the loudness things, since I never needed/used them). Therefore I decided to catch ACPI events and set up this: --- --- tomas@trotzki:~$ cat /etc/acpi/events/briteup event=video/brightnessup action=/etc/acpi/actions/brite "%e" --- --- tomas@trotzki:~$ cat /etc/acpi/events/britedn event=video/brightnessdown action=/etc/acpi/actions/brite "%e" --- --- tomas@trotzki:~$ cat /etc/acpi/actions/brite #!/bin/sh logger "[ACPI] $@" BASE="/sys/class/backlight/intel_backlight" CURR=$(cat "$BASE/brightness") MAX=$(cat "$BASE/max_brightness") # MIN is some arbitrary "low" value. Note that for values # of MIN below 6 (more precisely: 2/11 for our factor), the # thing gets stuck at the low end: (13 * x) / 11 == x, # in integer arithmetic, for x <= 5. # # The "exponential" algorithm is a bit long at the low # end. We might consider stretching there. Or increasing # MIN. MIN=20 if [ "$CURR" -lt "$MIN" ] ; then CURR="$MIN" ; fi # NOTE: 11/13 is approx the fourth root of 1/2: # i.e. four steps are a doubling/halving # of brightness (constant steps gave too # coarse jumps in the low range) case $1 in video/brightnessdown* ) NEW=$(( (11 * CURR) / 13 )) ;; video/brightnessup* ) NEW=$(( (13 * CURR) / 11 )) ;; * ) exit 0 ;; esac if [ "$NEW" -lt "$MIN" ] ; then NEW="$MIN" ; fi if [ "$NEW" -gt "$MAX" ] ; then NEW="$MAX" ; fi logger "[ACPI] brightness $CURR --> $NEW" echo "$NEW" > $BASE/brightness --- --- (The charm of using ACPI is that it works independently of X). To find which events to wait on, just run acpi_listen on a terminal and hit your dream's key. > Please help who can, thanks in advance. The appropriate medication will depend on your microbiome ;-) Cheers -- t
signature.asc
Description: PGP signature