# Use an official Node.js runtime as a parent image
FROM node:22-slim

# Set the working directory
WORKDIR /workspace

RUN apt-get update && apt-get install -y \
    build-essential \
    python3 \
    iputils-ping \
    curl \
    software-properties-common \
    git \
    && rm -rf /var/lib/apt/lists/*

# Install PM2 globally
RUN npm install -g pm2

# Install git, openssh-client, and openssh-server
RUN apt-get update && apt-get install -y git openssh-client software-properties-common sudo
# RUN apt-get install -y fish

RUN git clone https://gitea.bramkelchtermans.be/Bram/linux-presets.git --depth 1 && cd linux-presets && chmod +x setup.sh && ./setup.sh --terminal-icon 
RUN rm -rf linux-presets

RUN usermod -aG sudo root
RUN curl -fsSL https://claude.ai/install.sh | bash
RUN echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.config/fish/config.fish


# Create a directory for the SSH keys
RUN mkdir -p /root/.ssh

# Copy the entrypoint script into the container
COPY entrypoint.sh /usr/local/bin/entrypoint.sh
RUN chmod +x /usr/local/bin/entrypoint.sh

# Expose ports
EXPOSE 3000

# Set the entrypoint
ENTRYPOINT ["/usr/local/bin/entrypoint.sh"]
