#!/bin/bash usage() { echo "usage: $(basename $0) -c -b default container name is gstreamer-base " } build=False wsl=False container_name="gstreamer-base" while getopts ":bhc:" opt; do case $opt in b) build=True ;; h) usage exit 0 ;; c) container_name=$OPTARG ;; \?) echo "Invalid option: -$OPTARG" >&2 exit 1 ;; :) echo "Option -$OPTARG requires an argument (getopts)" >&2 exit 1 ;; esac done if [ $build = "True" ]; then docker build . -t $container_name fi wslgPath="" # we are running in wsl? uname -a | grep -qi wsl && wsl=True if [ $wsl = "True" ]; then echo "wsl=true" wslgPath="-v /mnt/wslg:/mnt/wslg" fi docker run --rm -it \ --network=host \ -v /tmp/.X11-unix:/tmp/.X11-unix $wslgPath \ -v $HOME/.Xauthority:/root/.Xauthority \ -e DISPLAY \ -e WAYLAND_DISPLAY \ -e XDG_RUNTIME_DIR \ $container_name bash