# Extend from the toolbox-base image
FROM tsysdevstack-toolboxstack-toolbox-base:release-current

# Set build arguments (these can be overridden at build time)
ARG USER_ID=1000
ARG GROUP_ID=1000
ARG USERNAME=toolbox

# Ensure the non-root user exists with the correct UID/GID
RUN if getent passwd "${USER_ID}" >/dev/null; then \
        existing_user="$(getent passwd "${USER_ID}" | cut -d: -f1)"; \
        userdel --remove "${existing_user}" 2>/dev/null || true; \
    fi \
    && if ! getent group "${GROUP_ID}" >/dev/null; then \
        groupadd --gid "${GROUP_ID}" "${USERNAME}"; \
    fi \
    && useradd --uid "${USER_ID}" --gid "${GROUP_ID}" --shell /usr/bin/zsh --create-home "${USERNAME}" \
    && usermod -aG sudo "${USERNAME}" 2>/dev/null || true

# Switch to the non-root user
USER ${USERNAME}
WORKDIR /workspace

# Default command
CMD ["/usr/bin/zsh"]