58 lines
1.0 KiB
Bash
Executable File
58 lines
1.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
usage() {
|
|
echo "usage:
|
|
$(basename $0) -c <container name> -b
|
|
default container name is gstreamer-base
|
|
"
|
|
}
|
|
|
|
build=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
|