diff --git a/docker/run.sh b/docker/run.sh index 42a50c63fb..259f0013f4 100755 --- a/docker/run.sh +++ b/docker/run.sh @@ -13,6 +13,7 @@ fi # check if running on Linux or OSX UNAME=$(uname -s) +useX="${useX:-true}" ############################################################ # share this paparazzi directory with the container @@ -40,24 +41,26 @@ SHARE_PAPARAZZI_HOME_OPTS="--volume=$PAPARAZZI_SRC:$PPRZ_HOME_CONTAINER \ ############################################################ # grant access to X-Server ############################################################ -if [ $UNAME == "Linux" ]; then - XSOCK=/tmp/.X11-unix - XAUTH=/tmp/.docker.xauth - touch $XAUTH - xauth nlist $DISPLAY | sed -e 's/^..../ffff/' | xauth -f $XAUTH nmerge - +if [ $useX = "true" ] +then + if [ $UNAME == "Linux" ]; then + XSOCK=/tmp/.X11-unix + XAUTH=/tmp/.docker.xauth + touch $XAUTH + xauth nlist $DISPLAY | sed -e 's/^..../ffff/' | xauth -f $XAUTH nmerge - - # options to grant access to the Xserver - X_WINDOW_OPTS="--volume=$XSOCK:$XSOCK --volume=$XAUTH:$XAUTH --env=XAUTHORITY=${XAUTH} --env=DISPLAY=${DISPLAY}" + # options to grant access to the Xserver + X_WINDOW_OPTS="--volume=$XSOCK:$XSOCK --volume=$XAUTH:$XAUTH --env=XAUTHORITY=${XAUTH} --env=DISPLAY=${DISPLAY}" + fi + + # using xauth with docker on OSX doesn't work, so we use socat: + # see https://github.com/docker/docker/issues/8710 + if [ $UNAME == "Darwin" ]; then + X_WINDOW_OPTS="--env=DISPLAY=192.168.99.1:0" + TCPPROXY="socat TCP-LISTEN:6000,reuseaddr,fork UNIX-CLIENT:\"$DISPLAY\"" + fi fi -# using xauth with docker on OSX doesn't work, so we use socat: -# see https://github.com/docker/docker/issues/8710 -if [ $UNAME == "Darwin" ]; then - X_WINDOW_OPTS="--env=DISPLAY=192.168.99.1:0" - TCPPROXY="socat TCP-LISTEN:6000,reuseaddr,fork UNIX-CLIENT:\"$DISPLAY\"" -fi - - ############################################################ # Audio ############################################################