¿Cómo 'bloqueo el teclado' para evitar que se envíen más pulsaciones de teclas en X11 / Linux / Gnome?

Estoy escribiendo un programa anti-RSI / typing break para Ubuntu Linux en python. Me gustaría poder "bloquear el teclado" para que todas las pulsaciones de teclas se ignoren hasta que lo "desbloquee". Quiero poder forzar al usuario a tomar un descanso de escritura.

Me gustaría alguna forma programática de "apagar" el teclado (casi instantáneamente) hasta que mi programa lo libere más tarde (lo que podría ser de 0,1 segundos → 10 segundos más tarde). Si bien "apagué el teclado", no debe enviarse ninguna pulsación de tecla a ninguna ventana, administrador de ventanas, etc. Preferiblemente, la pantalla debería mostrar el mismo contenido. El teclado debe estar bloqueado incluso si este programa no está en el fondo y no tiene el foco.

Algunos programas ya pueden hacer esto (por ejemplo, Work Rave)

¿Cómo hago esto en Linux / X11? (Preferible en Python)

Respuestas a la pregunta(4)

Su respuesta a la pregunta