I'm not using huge DE like Gnome or KDE and changing keyboard rate with xset
command:
xset r rate 250 70
But after system suspending (by pm-suspend
) this settings are lost because udev removes and again adds all devices.
I tried to use udev rules:
# /etc/udev/rules.d/00-custom-keyboard.rules
ACTION=="add", SUBSYSTEM=="usb", RUN+="/usr/bin/xset r rate 250 70" # Not working
ACTION=="add", SUBSYSTEM=="usb", RUN+="touch /tmp/test" # Working pretty!
I think the first rule is not working because xset
utility requires some context data which is not available in the evdev
context.
I tried to use xorg config, but found only the option to change the keyboard layout, namely XkbLayout
and XkbOptions
Is there some way to automaticaly restore keyboard settings after system suspending?
The problem was resolved by adding a custom script /etc/pm/sleep.d/00-keyboard
that executes (not only) on system resume:
#!/bin/bash
case $1 in
hibernate)
# Going to suspend to disk
;;
suspend)
# Going to suspend to RAM
;;
thaw)
# Resuming after hibernating
;;
resume)
# Resuming after suspending
echo "Restoring keyboard settings..."
/opt/scripts/keyboard.sh
;;
*)
echo "Something went wrong"
;;
esac
For more information see https://wiki.archlinux.org/index.php/Pm-utils#Creating_your_own_hooks
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With