aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/run_onchange_after_deploy-etc.sh.tmpl
diff options
context:
space:
mode:
authorLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-05-13 13:43:33 +0100
committerLibravatar sommerfeld <sommerfeld@sommerfeld.dev>2026-05-13 13:43:33 +0100
commit66427c37fcc05ffbecde726aeea77ccfb1b860de (patch)
tree6ef6b9795019ac4c3075b096072368fc1289a425 /run_onchange_after_deploy-etc.sh.tmpl
parentcb9b3f4e017dd202a0ac284639efd78fc07fbb1e (diff)
downloaddotfiles-66427c37fcc05ffbecde726aeea77ccfb1b860de.tar.gz
dotfiles-66427c37fcc05ffbecde726aeea77ccfb1b860de.tar.bz2
dotfiles-66427c37fcc05ffbecde726aeea77ccfb1b860de.zip
feat(udev): replace shokz blacklist with hwdb keycode override
The previous /etc/udev/rules.d/80-shokz-blacklist.rules deauthorized the entire usbhid interface for the Shokz OpenMeet dongle (3511:2EF2) to stop the host from powering off when the headset is turned off. That also killed mic-mute, volume, and media keys on the same HID Consumer Control node. Replace it with a narrow hwdb override that remaps just the offending scancode (Consumer page Power, c0030 -> KEY_POWER) to reserved on that specific vendor/product. KEY_MUTE / volume / media keys keep working. Add 'systemd-hwdb update' + an input-subsystem udevadm trigger to the etc deploy hook so new hwdb files take effect immediately.
Diffstat (limited to 'run_onchange_after_deploy-etc.sh.tmpl')
-rwxr-xr-xrun_onchange_after_deploy-etc.sh.tmpl5
1 files changed, 5 insertions, 0 deletions
diff --git a/run_onchange_after_deploy-etc.sh.tmpl b/run_onchange_after_deploy-etc.sh.tmpl
index 3fdb42b..adf00eb 100755
--- a/run_onchange_after_deploy-etc.sh.tmpl
+++ b/run_onchange_after_deploy-etc.sh.tmpl
@@ -27,6 +27,11 @@ done
# sudo-rs: /etc/pam.d/sudo-i is a symlink to /etc/pam.d/sudo
sudo ln -sfT sudo /etc/pam.d/sudo-i
+# Recompile the udev hardware database so any etc/udev/hwdb.d/*.hwdb files
+# we just deployed take effect on next device event.
+sudo systemd-hwdb update
+sudo udevadm trigger --subsystem-match=input --action=change
+
# Make sudo-rs the system-wide sudo via /usr/local/bin precedence.
# Targets may not exist yet on first bootstrap (sudo-rs is installed by
# the subsequent pkg-apply step); the symlinks resolve once it lands.