[docker] make it possible to disable X server access. (#2679)

This commit is contained in:
Fabien-B
2021-03-26 21:52:04 +01:00
committed by GitHub
parent 7d18d0c8a9
commit a7baf59842
+18 -15
View File
@@ -13,6 +13,7 @@ fi
# check if running on Linux or OSX # check if running on Linux or OSX
UNAME=$(uname -s) UNAME=$(uname -s)
useX="${useX:-true}"
############################################################ ############################################################
# share this paparazzi directory with the container # 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 # grant access to X-Server
############################################################ ############################################################
if [ $UNAME == "Linux" ]; then if [ $useX = "true" ]
XSOCK=/tmp/.X11-unix then
XAUTH=/tmp/.docker.xauth if [ $UNAME == "Linux" ]; then
touch $XAUTH XSOCK=/tmp/.X11-unix
xauth nlist $DISPLAY | sed -e 's/^..../ffff/' | xauth -f $XAUTH nmerge - XAUTH=/tmp/.docker.xauth
touch $XAUTH
xauth nlist $DISPLAY | sed -e 's/^..../ffff/' | xauth -f $XAUTH nmerge -
# options to grant access to the Xserver # options to grant access to the Xserver
X_WINDOW_OPTS="--volume=$XSOCK:$XSOCK --volume=$XAUTH:$XAUTH --env=XAUTHORITY=${XAUTH} --env=DISPLAY=${DISPLAY}" 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 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 # Audio
############################################################ ############################################################