X-Git-Url: https://git.distorted.org.uk/~mdw/termux-packages/blobdiff_plain/1b11c6fa66441b6b254bf96ac97e868019c1a8b6..ee6a231c325851a19562502a83c4ed8ac9b0f3be:/scripts/run-docker.sh diff --git a/scripts/run-docker.sh b/scripts/run-docker.sh index d14127d0..c0f833ba 100755 --- a/scripts/run-docker.sh +++ b/scripts/run-docker.sh @@ -1,28 +1,44 @@ #!/bin/sh set -e -u -# Read settings from .termuxrc if existing -test -f $HOME/.termuxrc && . $HOME/.termuxrc -: ${TERMUX_TOPDIR:="$HOME/.termux-build"} +HOME=/home/builder +if [ `uname` = Darwin ]; then + # Workaround for mac readlink not supporting -f. + REPOROOT=$PWD +else + REPOROOT="$(dirname $(readlink -f $0))/../" +fi IMAGE_NAME=termux/package-builder CONTAINER_NAME=termux-package-builder +USER=builder + echo "Running container '$CONTAINER_NAME' from image '$IMAGE_NAME'..." docker start $CONTAINER_NAME > /dev/null 2> /dev/null || { echo "Creating new container..." docker run \ - -d \ - --name $CONTAINER_NAME \ - -v $PWD:/root/termux-packages \ - -t $IMAGE_NAME + --detach \ + --env HOME=$HOME \ + --name $CONTAINER_NAME \ + --volume $REPOROOT:$HOME/termux-packages \ + --tty \ + $IMAGE_NAME + if [ $(id -u) -ne 1000 -a $(id -u) -ne 0 ] + then + echo "Changed builder uid/gid... (this may take a while)" + docker exec --tty $CONTAINER_NAME chown -R $(id -u) $HOME + docker exec --tty $CONTAINER_NAME chown -R $(id -u) /data + docker exec --tty $CONTAINER_NAME usermod -u $(id -u) builder + docker exec --tty $CONTAINER_NAME groupmod -g $(id -g) builder + fi } if [ "$#" -eq "0" ]; then - docker exec -it $CONTAINER_NAME bash + docker exec --interactive --tty --user $USER $CONTAINER_NAME bash else - docker exec -it $CONTAINER_NAME $@ + docker exec --interactive --tty --user $USER $CONTAINER_NAME $@ fi