FROM rockylinux:9.3 ARG VERSION="v0.10.0" ARG NVIM="/nvim-linux64/bin/nvim" RUN yum install -y wget git npm gcc go unzip # This part installs my dotfiles. # If you want to do this with yours, you need to install your configuration files to ~/.config/nvim. # You also need to make sure to sync your nvim packages, in this case, using lazy. # downlad neovim binary RUN wget "https://github.com/neovim/neovim/releases/download/${VERSION}/nvim-linux64.tar.gz" RUN tar -xvf nvim-linux64.tar.gz # clone and install dotfiles RUN git clone https://git.kehilush.com/omri/dots RUN mkdir -p ~/.config && cp -r dots/.config/nvim ~/.config # download nvim packages RUN $NVIM --headless -c 'Lazy sync' +q # mason python RUN $NVIM --headless -c "MasonInstall pyright mypy ruff debugpy" +q # mason go RUN $NVIM --headless -c "MasonInstall gopls delve gofumpt goimports-reviser golangci-lint" +q # mason lua RUN $NVIM --headless -c "MasonInstall stylua lua-language-server" +q # mason random formatters RUN $NVIM --headless -c "MasonInstall taplo yamlfmt rustfmt" +q # archive everything RUN mkdir /archive RUN mkdir -p /archive/.local/share RUN cp -r /nvim-linux64 /archive/.local/share RUN cp -r ~/.local/share/nvim /archive/.local/share RUN mkdir -p /archive/.config RUN cp -r ~/.config/nvim /archive/.config COPY install.sh /archive/install.sh RUN chmod +x /archive/install.sh # export everything RUN mkdir /out CMD tar -czf /out/nvim.tar.gz /archive