32 lines
1.2 KiB
Docker
32 lines
1.2 KiB
Docker
# ========================================= #
|
|
# Containerfile v1.0; job79 #
|
|
# Configure and setup a neovim devcontainer #
|
|
# for go and nodejs development. #
|
|
# ========================================= #
|
|
FROM quay.io/fedora/fedora:41
|
|
|
|
# === setup system ===
|
|
RUN dnf update -y && \
|
|
dnf copr enable -y atim/lazygit && \
|
|
dnf -y install neovim unzip \
|
|
bash-completion zoxide fd-find chafa lazygit procps \
|
|
git go npm
|
|
|
|
# === setup container user ===
|
|
RUN useradd -ms /bin/bash user && usermod -aG wheel user && sed -i '/NOPASSWD/s/^#//g' /etc/sudoers
|
|
RUN mkdir /run/user/1000 && chown user:user /run/user/1000
|
|
USER user
|
|
WORKDIR /home/user
|
|
COPY config/user/bashrc /home/user/.bashrc
|
|
COPY config/user/profile /home/user/.bash_profile
|
|
|
|
# === setup neovim ===
|
|
RUN git clone --depth 1 https://github.com/LazyVim/starter ~/.config/nvim
|
|
COPY --chown=user:user config/nvim/plugins /home/user/.config/nvim/lua/plugins
|
|
COPY --chown=user:user config/nvim/config /home/user/.config/nvim/lua/config
|
|
COPY --chown=user:user config/nvim/lazyvim.json /home/user/.config/nvim/lazyvim.json
|
|
|
|
# === setup container ===
|
|
ENV TZ="Europe/Amsterdam"
|
|
VOLUME /home/user/.local /home/user/.cache
|