After a recent update, cfg-update stopped working; even though $DISPLAY was set correctly, xxdiff was found in the correct location, etc. it still complained with the following error: * GUI not available, unable to run the mergetool set in /etc/cfg-update.conf! Run cfg-update from within an X-terminal if you want to use a GUI mergetool. If you are getting this from within an X-terminal, you should try running "xhost +localhost" as the user who started the X-server. If you use this script on a system without an X-server you should permanently set the MERGETOOL variable in /etc/cfg-update.conf to vimdiff or sdiff. I recommend the more advanced vimdiff on systems without an X-server. See http://people.zeelandnet.nl/xentric for vimdiff usage instructions. After searching for explanations for some time, I used strace -f on it and found the following: [...] [pid 3848] write(2, "sh: xhost: command not found\n", 29) = 29 [...] And indeed, after emerging xhost, everything works fine. I think it should be in the dependancies for cfg-update (not xxdiff, I assume, as that does work without it). Reproducible: Always Steps to Reproduce: 1.ssh to a remote system 2.set $DISPLAY correctly 3.Remove xhost, if present 4.Run xxdiff (works) 5.Run cfg-update -u (fails) 6.emerge xhost 7.Run cfg-update -u (works) Expected Results: Either xhost should be in the deps for cfg-update, but that may be overkill as it is only needed if run from a remote system, or it should clearly display an error that it couldn't find xhost.
Thanks, I've added xhost to the dependency list.