I am running Fluxbox on an Ubuntu (14.04.5) NoMachine server. I have a very simple startup file:
fluxbox="$HOME/.fluxbox" stderr="$fluxbox/stderr" (umask 077; > "$stderr") exec 2> "$stderr" setxkbmap de nodeadkeys exec ssh-agent fluxbox -verbose -log "$fluxbox/log" My problem is, that some process is modifying the xkbmap after I have set it in the startup file. The nodeadkeys variant gets lost about one second after I have set it. In order to track this behavior I wrote a trace program, which I start just in front of the setxkbmap command. This is my trace script.
#! /bin/bash set -eu exec > $HOME/setxkbmap.trace n=${1:-100000} while ((n>0)); do date +"%T.%6N" setxkbmap -query n=$((n-1)) done When the script starts the variant is set:
$ head -5 setxkbmap.trace 16:09:04.930663 rules: evdev model: evdev layout: de variant: nodeadkeys And after about a second the variant is missing:
$ grep -A 5 nodeadkeys setxkbmap.trace | tail -5 16:09:05.864251 rules: evdev model: evdev layout: de 16:09:06.309512 How can I figure out, which process is changing the option?