FROM ubuntu:22.04

# Update the package list, install sudo, create a non-root user, and grant password-less sudo permissions
RUN apt update && apt install -y sudo

RUN sudo apt-get update
#Instalando Curl
RUN sudo apt-get install -y curl
#Instalando wget
RUN sudo apt-get install -y wget
#Instalando jq
RUN sudo apt-get install -y jq

RUN sudo apt-get update
RUN sudo apt-get install -y dumb-init

RUN ARCH="$(dpkg --print-architecture)" \
  && curl -fsSL "https://github.com/boxboat/fixuid/releases/download/v0.6.0/fixuid-0.6.0-linux-${ARCH}.tar.gz" | tar -C /usr/local/bin -xzf - \
  && chown root:root /usr/local/bin/fixuid \
  && chmod 4755 /usr/local/bin/fixuid \
  && mkdir -p /etc/fixuid \
  && printf "user: vscode\ngroup: vscode\n" > /etc/fixuid/config.yml

#Instalando devtunnel
#Comandos que no se deben olvidar correr al crear el devtunnel
#devtunnel user login -g -d
#devtunnel token TUNNELID --scope connect
RUN curl -sL https://aka.ms/DevTunnelCliInstall | bash

#Instalando VSCode
RUN ARCH="$(dpkg --print-architecture)" \
    && case "${ARCH}" in \
         amd64) VSCODE_ARCH="x64" ;; \
         arm64) VSCODE_ARCH="arm64" ;; \
         *) echo "Unsupported architecture: ${ARCH}" >&2; exit 1 ;; \
       esac \
    && curl -fsSL "https://update.code.visualstudio.com/latest/linux-deb-${VSCODE_ARCH}/stable" -o /tmp/vscode.deb \
    && (sudo dpkg -i /tmp/vscode.deb || true) \
    && sudo apt-get update \
    && sudo DEBIAN_FRONTEND=noninteractive apt-get install -f -y \
    && rm -f /tmp/vscode.deb

#Making home writable
RUN sudo chmod -R a+rwX /home

RUN sudo sysctl -w fs.inotify.max_user_watches=524288

ADD ./.bashrc /usr/bin/.bashrc
RUN sudo chmod +x /usr/bin/.bashrc
ADD ./.profile /usr/bin/.profile
RUN sudo chmod +x /usr/bin/.profile
ADD ./entrypoint.sh /usr/bin/entrypoint.sh
RUN sudo chmod +x /usr/bin/entrypoint.sh

ENTRYPOINT ["/usr/bin/entrypoint.sh"]