Что бы в ArchLinux при загрузке включался NumLock нужно вписать в файл /etc/rc.local строку "for vc in /dev/vc/*; do /usr/bin/setleds -D +num < "$vc"; done"
Этот способ удобен тем что NumLock включается на каждой виртуальной консоли, в том числе и той на которой запускаются иксы.
Естественно что пакет kbd должен быть установлен.
Есть ещё маленькая утилита numlockx, которая включает numlock в иксах. Достаточно добавить numlockx on в ~/.xinitrc (или в автозагрузку) и цифровая клавиатура будет включатся. Как видно из примера работы, есть параметр off для отключения.
ArchLinux: включаем NumLock при загрузке
for tty in /dev/tty?; do /usr/bin/setleds -D +num < "$tty"; done