FROM code-core
USER root
ENV HOME=/root

# Install alpine packages
RUN apk add --no-cache procps curl curl-doc make make-doc git git-doc

# Install neovim plugins
WORKDIR /usr/local/share/nvim/site/pack/plugins/opt
RUN printf '%s\n' \
  christoomey/vim-tmux-navigator benmills/vimux ap/vim-buftabline \
  nvim-tree/nvim-tree.lua nvim-tree/nvim-web-devicons ctrlpvim/ctrlp.vim \
  hrsh7th/nvim-cmp ray-x/lsp_signature.nvim hrsh7th/cmp-buffer \
  hrsh7th/cmp-path hrsh7th/cmp-nvim-lua hrsh7th/cmp-nvim-lsp \
  neovim/nvim-lspconfig hrsh7th/vim-vsnip hrsh7th/cmp-vsnip \
  jiangmiao/auto-pairs tpope/vim-surround tpope/vim-repeat \
  rebelot/kanagawa.nvim \
  | xargs -n1 -P0 -I'{}' git clone --depth 1 'https://github.com/{}'
RUN printf 'helptags %s\n' */doc | nvim --noplugin -es

# Add neovim config
COPY nvim /etc/xdg/nvim

# Configure environment
USER 1000:1000
ENV HOME=/tmp
