Compare commits

..

8 Commits

3 changed files with 38 additions and 24 deletions

View File

@ -16,7 +16,7 @@ if [[ -v VSCODE_TUNNEL_NAME && -n "${VSCODE_TUNNEL_NAME}" ]]; then
fi fi
# List all environment variables # List all environment variables
sudo env | printenv |
# Filter variables that start with GLOBAL_ENV_ # Filter variables that start with GLOBAL_ENV_
grep -E '^GLOBAL_ENV_' | grep -E '^GLOBAL_ENV_' |
@ -31,17 +31,13 @@ sed 's/^GLOBAL_ENV_//' |
while IFS= read -r line while IFS= read -r line
do do
if ! grep -q "^${line%=*}=" /etc/environment; then if ! grep -q "^${line%=*}=" /etc/environment; then
echo "export $line" | sudo tee -a /etc/environment echo "" >> /etc/environment
echo "export $line" >> /etc/environment
fi fi
done done
USER="$HOME_USER"
if ! id -u $HOME_USER > /dev/null 2>&1; then
sudo adduser --disabled-password --gecos "" --uid 1000 ${HOME_USER}
sudo echo "$HOME_USER ALL=(ALL) NOPASSWD:ALL" | sudo tee -a /etc/sudoers.d/nopasswd > /dev/null
# List all environment variables # List all environment variables
sudo env | printenv |
# Filter variables that start with USER_ENV_ # Filter variables that start with USER_ENV_
grep -E '^USER_ENV_' | grep -E '^USER_ENV_' |
@ -52,9 +48,15 @@ if ! id -u $HOME_USER > /dev/null 2>&1; then
# Append the result to /usr/bin/.bashrc # Append the result to /usr/bin/.bashrc
while IFS= read -r line while IFS= read -r line
do do
echo "export $line" | sudo -u ${HOME_USER} tee -a /usr/bin/.bashrc echo "" >> /usr/bin/.bashrc
echo "export $line" >> /usr/bin/.bashrc
done done
USER="$HOME_USER"
if ! id -u $HOME_USER > /dev/null 2>&1; then
sudo adduser --disabled-password --gecos "" --uid 1000 ${HOME_USER}
sudo echo "$HOME_USER ALL=(ALL) NOPASSWD:ALL" | sudo tee -a /etc/sudoers.d/nopasswd > /dev/null
# Creating .vscode folder if it doesn't exist # Creating .vscode folder if it doesn't exist
if [ ! -d "/home/${HOME_USER}/.vscode" ]; then if [ ! -d "/home/${HOME_USER}/.vscode" ]; then
sudo mkdir -p /home/${HOME_USER}/.vscode sudo mkdir -p /home/${HOME_USER}/.vscode
@ -71,12 +73,6 @@ else
sudo chown -R ${HOME_USER} /home/${HOME_USER} sudo chown -R ${HOME_USER} /home/${HOME_USER}
fi fi
# Find .sh files in /usr/bin/custom-scripts and execute them in order
for script in $(find /usr/bin/custom-scripts -name "*.sh" | sort); do
chmod +x $script
sudo -u $HOME_USER bash -c "source /etc/environment; $script"
done
# Move the .bashrc file to the user's home directory # Move the .bashrc file to the user's home directory
sudo mv /usr/bin/.bashrc /home/${HOME_USER}/.bashrc sudo mv /usr/bin/.bashrc /home/${HOME_USER}/.bashrc
sudo chown ${HOME_USER} /home/${HOME_USER}/.bashrc sudo chown ${HOME_USER} /home/${HOME_USER}/.bashrc
@ -85,6 +81,16 @@ sudo chown ${HOME_USER} /home/${HOME_USER}/.bashrc
sudo mv /usr/bin/.profile /home/${HOME_USER}/.profile sudo mv /usr/bin/.profile /home/${HOME_USER}/.profile
sudo chown ${HOME_USER} /home/${HOME_USER}/.profile sudo chown ${HOME_USER} /home/${HOME_USER}/.profile
# Find .sh files in /usr/bin/custom-scripts and execute them in order
for script in $(find /usr/bin/custom-scripts -name "*.sh" | sort); do
chmod +x $script
if [[ $script == *"sudo"* ]]; then
sudo -u $HOME_USER bash -c "source /etc/environment; sudo $script"
else
sudo -u $HOME_USER bash -c "source /etc/environment; $script"
fi
done
#Creating extensions folder #Creating extensions folder
if [ ! -d "/home/${HOME_USER}/.config/Code" ]; then if [ ! -d "/home/${HOME_USER}/.config/Code" ]; then
sudo mkdir -p /home/${HOME_USER}/.config/Code sudo mkdir -p /home/${HOME_USER}/.config/Code

View File

@ -132,6 +132,14 @@ nvm use default && npm install -g @vscode/vsce
``` ```
The #!/bin/bash line at the top of the script tells the system that this script should be run with the Bash shell. The #!/bin/bash line at the top of the script tells the system that this script should be run with the Bash shell.
#### Note on sudo privileges
If the script name includes the word "sudo", the script will be run with root privileges. This is useful if your script needs to perform operations that require superuser privileges.
For instance, if you have a script named `install_sudo_package.sh`, this script will be run with root privileges due to the inclusion of "sudo" in the file name.
Please be aware of the security implications when running scripts with root privileges. Ensure that your script does not perform any unsafe or destructive operations when run with these privileges.
### 3. Run your Docker container ### 3. Run your Docker container
When you start your Docker container, all .sh files in the /usr/bin/custom-scripts directory will be automatically executed in alphabetical order. The environment variables from the /etc/environment file will be loaded before each script is executed. When you start your Docker container, all .sh files in the /usr/bin/custom-scripts directory will be automatically executed in alphabetical order. The environment variables from the /etc/environment file will be loaded before each script is executed.

View File

@ -1 +1 @@
3.0.21 3.0.29