Une autre solution beaucoup plus économique,
toujours pour XFCE :

#!/bin/bash
# # # # # # # # # # # # # # # # # # # # #
# Pour faire afficher sur l'écran de XFCE
# un message de notification présentant l'état
# des voyants du clavier "Num" et "Cap"
#
# Installez le paquetage "xdotool"
# en lançant la ligne de commandes suivante :
# su -c "apt install xdotool"
#
# Depuis votre compte utilisateur,
# créez un fichier nommé :
# ~/.capsNumLock.sh
# dans lequel vous copierez
# l'intégralité de ce script.
#
# Rendez ce fichier script exécutable
# en lançant la ligne de commande suivante :
# chmod u+x ~/.capsNumLock.sh
#
# Cliquez sur "Applications" -> "Paramètres" -> "Clavier" -> Onglet "Raccourcis d'applications"
# et cliquez sur le bouton "+ Ajouter"
#
# Entrez la ligne de commande à exécuter avec son paramètre :
# /home/michel/.capsNumLock.sh Caps_Lock
# et appuyez sur la touche "ver Maj"
#
# Entrez la ligne de commande à exécuter avec son paramètre :
# /home/michel/.capsNumLock.sh Num_Lock
# et appuyez sur la touche "ver Num"
#
# Cliquez sur le bouton "X Fermer"
# # # # # # # # # # # # # # # # # # # # #
tempo=500 # Durée d'affichage du message (en millisecondes)
ledOn="●"
ledoff="○"
labNum="Num"
labCap="Caps"
xdotool key $1
case $(($(xset q | awk 'NR==2{print $NF}')*1)) in
0)
num="$ledoff"
cap="$ledoff"
;;
1)
num="$ledoff"
cap="$ledOn"
;;
2)
num="$ledOn"
cap="$ledoff"
;;
3)
num="$ledOn"
cap="$ledOn"
;;
esac
notify-send -t $tempo "$num $labNum
$cap $labCap"