Thanks for the detailed write-up.
One thing I noticed is that you’ve modified the triggerhappy service file /lib/systemd/system/triggerhappy.service
in situ. The downside of this approach iis that it might be overwritten (and therefore reset) during a regular system update. A safer approach is to create a separate file /etc/systemd/system/triggerhappy.service
that contains the modified version of the file. This will take precedence over /lib/systemd/system/triggerhappy.service
but won’t be changed during an update.