#!/bin/bash CURRENT_GID=$(id -g $1) echo "Current GID: $CURRENT_GID" if [ -n "$USER_GID" ] && [ "$USER_GID" != "$CURRENT_GID" ]; then echo "Changing GID to $USER_GID" groupmod -g $USER_GID $1 find / -group $CURRENT_GID -exec chgrp -h $1 {} \; fi CURRENT_UID=$(id -u $1) echo "Current UID: $CURRENT_UID" if [ -n "$USER_UID" ] && [ "$USER_UID" != "$CURRENT_UID" ]; then echo "Changing UID to $USER_UID" usermod -u $USER_UID $1 find / -user $CURRENT_UID -exec chown -h $1 {} \; fi CURRENT_PASSWD=$(grep -E "^password: .*$" /home/$1/.config/code-server/config.yaml | cut -d ":" -f 2 | awk '{$1=$1;print}') if [ -n "$USER_PASSWD" ] && [ "$CURRENT_PASSWD" != "$USER_PASSWD" ] || [ "$CURRENT_PASSWD" == "PASSWORD" ]; then echo "Changing password" if [ -z "$USER_PASSWD" ]; then echo "Setting a new password at random" USER_PASSWD=$(tr -dc A-Za-z0-9 < /dev/urandom | head -c 20; echo) fi sed -i "s/^password: .*$/password: $USER_PASSWD/g" /home/$1/.config/code-server/config.yaml echo "Result of sed call: $?" fi /usr/bin/code-server --bind-addr 0.0.0.0:8080 .