From 9d50bd8efcc2683b5b0ac6b2a914c219ee212360 Mon Sep 17 00:00:00 2001 From: pml68 Date: Mon, 25 Nov 2024 00:35:44 +0100 Subject: feat: add Dockerfile for building docker image --- Dockerfile | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 Dockerfile (limited to 'Dockerfile') diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..64da700 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,61 @@ +FROM alpine:edge AS base +WORKDIR /root +SHELL ["/bin/sh", "-c"] + +RUN apk add --no-cache git \ + lazygit \ + neovim \ + man-pages \ + alpine-sdk \ + bash \ + eza \ + ncurses \ + util-linux-misc \ + curl \ + --update + +# install deps needed by neovim +RUN apk add --no-cache wget \ + gzip \ + neovim-doc \ + ripgrep \ + rust \ + python3 \ + openjdk21 \ + openjdk17 \ + gradle \ + dotnet8-sdk \ + clang19-extra-tools \ + nodejs \ + npm + +# install TeX +RUN apk add --no-cache texlive \ + texlive-binextra \ + texmf-dist-fontsextra \ + texmf-dist-fontutils \ + texmf-dist-fontsrecommended \ + texmf-dist-formatsextra \ + texmf-dist-langenglish \ + texmf-dist-langeuropean \ + texmf-dist-latexextra \ + texmf-dist-latexrecommended \ + texmf-dist-pictures \ + texmf-dist-plaingeneric + +# pre-download lazy.nvim +RUN git clone --filter=blob:none https://github.com/folke/lazy.nvim.git --branch=stable /root/.local/share/nvim/lazy/lazy.nvim + +# copy config files +COPY .bashrc .bashrc +COPY . .config/nvim + +FROM base +SHELL ["/bin/bash", "-c"] +WORKDIR /root +RUN nvim --headless +"Lazy! sync" +qa; exit 0 + +# symlink the clangd executable, since it can't be installed with mason +RUN ln -sf /usr/bin/clangd /root/.local/share/nvim/mason/bin/clangd + +CMD ["/bin/bash"] -- cgit v1.2.3