#!/bin/sh # File: /usr/local/bin/kvm-plugged-in.sh # Location: vm2 # Author: bgstack15 # Startdate: 2023-01-11-4 14:32 # Title: Script that runs in user context when kvm is plugged in # Project: kvm-mapping # Purpose: for vm2, run my keyboard input script. # History: # Usage: # called by kvm-user-daemon.sh when the trigger file is made by the udev rule+script # Reference: # https://unix.stackexchange.com/questions/71348/why-doesnt-this-udev-rule-trigger-upon-removal-of-the-device # Improve: # Dependencies: # xinput and setxkbmap # running in user context, with XAUTHORITY and DISPLAY and probably more env vars # Documentation: # The contents can be whatever you want. On vm2, I want to set my keyboard mappings. for word in $( xinput list | sed -r -n -e 's/.*USB.*Keyboard.*id=([0-9]+).*keyboard.*/\1/p;' ) ; do setxkbmap -device ${word} -option grp:switch,grp:shifts_toggle -layout 'us,us(dvorak)' done