37 lines
1.1 KiB
Bash
Executable File
37 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# exit on first error
|
|
set -o errexit
|
|
# exit when undefined var is used
|
|
set -o nounset
|
|
# exit with error code of right-most command in a pipe
|
|
set -o pipefail
|
|
|
|
# This script opens a bash session in docker for the Dockerfile in this folder.
|
|
|
|
readonly image_name=rust_qt_binding_generator_dev
|
|
readonly docker_file_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
readonly src_dir=$(dirname "$docker_file_dir")
|
|
readonly docker_home_dir="$src_dir/docker_home"
|
|
|
|
# create the docker image
|
|
docker build -t "$image_name" "$docker_file_dir"
|
|
|
|
# create a working directory
|
|
if [ ! -a "$docker_home_dir" ]; then
|
|
mkdir -p "$docker_home_dir"/rust_qt_binding_generator
|
|
fi
|
|
|
|
# give the docker application access to X
|
|
xhost +si:localuser:"$USER"
|
|
|
|
# start a docker session with the source code and a dedicated home directory
|
|
docker run --rm -v "$docker_home_dir":/home/neon \
|
|
-v "$src_dir":/home/neon/rust_qt_binding_generator \
|
|
-v /tmp/.X11-unix:/tmp/.X11-unix \
|
|
-e DISPLAY="$DISPLAY" \
|
|
-e XDG_CURRENT_DESKTOP="$XDG_CURRENT_DESKTOP" \
|
|
-ti "$image_name" bash
|
|
|
|
# --network none \
|