From 955fe2afab041addd9ede528040cbe4e2c7ef219 Mon Sep 17 00:00:00 2001 From: jakobst1n Date: Sun, 31 May 2026 11:18:00 +0200 Subject: Make a simple devcontainer-system for neovim and opencode --- Common/devcontainer/Dockerfile-base.m4 | 76 ++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 Common/devcontainer/Dockerfile-base.m4 (limited to 'Common/devcontainer/Dockerfile-base.m4') diff --git a/Common/devcontainer/Dockerfile-base.m4 b/Common/devcontainer/Dockerfile-base.m4 new file mode 100644 index 0000000..6cc85f1 --- /dev/null +++ b/Common/devcontainer/Dockerfile-base.m4 @@ -0,0 +1,76 @@ +FROM docker.io/debian:trixie + +ARG DOT_HOME="/root" +ARG DOTFILES_REPO="https://git.jakobstendahl.no/jakobst1n/dotfiles" +ARG GIT_EMAIL="jakob@jakobstendahl.no" +ARG GIT_USER="jakobst1n" + +# Install base requirements +RUN apt-get update && apt-get install -y --no-install-recommends \ + ca-certificates \ + fzf \ + man-db \ + less \ + supervisor \ + git \ + make \ + dialog \ + m4 \ + npm \ + sudo + +# Create and switch to non-root-user +#RUN useradd -d ${DOT_HOME} -m devuser +#RUN usermod -a -G sudo devuser +#RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers + +WORKDIR ${DOT_HOME} +#USER devuser + +# Install dotfiles +RUN mkdir -p ${DOT_HOME}/ +RUN git clone ${DOTFILES_REPO} ${DOT_HOME}/dotfiles +WORKDIR ${DOT_HOME}/dotfiles +RUN cat > config < Makefile +RUN make Makefile +RUN make && rm -rf /tmp/nvim && rm -rf /var/lib/api/lists/* +RUN nvim --headless +qa + +# Create project directory +#RUN mkdir -p ${DOT_HOME}/project +#WORKDIR ${DOT_HOME}/project +RUN mkdir -p /workspace +WORKDIR /workspace + +# Install usefull tools +RUN npm i -g opencode-ai + +# Copy supervisord conf +COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf +#RUN mkdir -p ${DOT_HOME}/.local/share/supervisord && \ +# touch ${DOT_HOME}/.local/share/supervisord/supervisord.log +#RUN touch ${DOT_HOME}/.local/share/supervisord/supervisord.pid && \ +# chown devuser:devuser /var/run/supervisord.pid + +CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/conf.d/supervisord.conf"] -- cgit v1.2.3