Com base na resposta de Serge, consegui pensar em algo. Eu escrevi um pequeno script:
#!/bin/bash
x='lsusb | grep PS/2 | wc -l'
if [ $x -eq '1' ]
then
numlockx on
else
numlockx off
fi
Isso funciona na minha máquina - você pode ter que modificá-lo um pouco para se adequar ao seu. Mas lista todos os dispositivos USB conectados. Se houver um conector PS / 2 (eu uso um), haverá um dispositivo USB para ele. Com base na sua presença, ligo / desligo o numlock.