Fix root user $HOME path
[termux-packages] / scripts / run-docker.sh
index d14127d..c628971 100755 (executable)
@@ -1,28 +1,34 @@
 #!/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
 IMAGE_NAME=termux/package-builder
 CONTAINER_NAME=termux-package-builder
 
+[ `id -u` -eq 0 ] && USER=root || 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 $PWD:/home/builder/termux-packages \
+              --tty \
+              $IMAGE_NAME
+
+       echo "Changed builder uid/gid..."
+       docker exec $CONTAINER_NAME chown -R `id -u` /data >& /dev/null
+       docker exec $CONTAINER_NAME usermod -u `id -u` builder >& /dev/null
+       docker exec $CONTAINER_NAME groupmod -g `id -g` builder >& /dev/null
 }
 
 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