feat: upgrade runtimes and neovim config (#216)

# Runtime

<details>
<summary><h2>Upgrades</h2></summary>

* `docker` from 28.0.1 to 28.0.4
* `docker compose` from 2.33.1 to 2.35.0
* `docker buildx` from 0.21.2 to 0.22.0
* `aqua:astral-sh/uv` from 0.6.12 to 0.6.16
* `aqua:aws/aws-cli` from 2.25.9 to 2.26.7
* `aqua:dagger/dagger` from 0.18.1 to 0.18.4
* `aqua:derailed/k9s` from 0.40.10 to 0.50.4
* `aqua:evilmartians/lefthook` from 1.11.11 to 1.11.6
* `aqua:eza-community/eza` from 0.21.0 to 0.21.1
* `aqua:github-cli` from 2.69.0 to 2.70.0
* `aqua:go-task/task` from 3.42.1 to 3.43.2
* `aqua:hashicorp/terraform` from 1.11.3 to 1.11.4
* `aqua:helm/helm` from 3.17.2 to 3.17.3
* `aqua:junegunn/fzf` from 0.61.0 to 0.61.3
* `aqua:sbstp/kubie` from 0.25.1 to 0.25.2
* `aqua:tilt-dev/tilt` from 0.34.0 to 0.34.2
* `aqua:xo/usql` from 0.19.19 to 0.19.21
* `npm:@anthropic-ai/claude-code` from 0.2.61 to 0.2.78
* `pipx:aider-chat` from 0.80.2 to 0.82.2
* `pipx:vectorcode` from 0.5.5 to 0.5.6
* `r` from 4.4.3 to 4.5.0
</details>

<details>
<summary><h2>Additions</h2></summary>

* `exercism`
* `neovim`
  * move from `ppa` to release package
* `supabase`
</details>

# Others

<details>
<summary><h2><code>neovim</code></h2></summary>

* Upgrade to latest [commit in `master`](d350db2449)
* Add `harper.ls` to check on writing
* Use [`virtual_lines`](https://neovim.io/doc/user/diagnostic.html#vim.diagnostic.Opts.VirtualLines) on [`vim.diagnostic`](https://neovim.io/doc/user/diagnostic.html#vim.diagnostic.Opts)
* Configure `supermaven` as a source in `blink.cmp`
* Use `lackluster` as colorscheme
* Configure `gemini` ai models in `avante`
</details>

<details>
<summary><h2>Autocompletion</h2></summary>

* `exercism`
* `supabase`
</details>

<details>
<summary><h2><code>aider</code></h2></summary>

* Configure `gemini`
</details>

Co-authored-by: Joao P Dubas <joao.dubas@gmail.com>
Reviewed-on: #216
Co-authored-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
Co-committed-by: Joao P Dubas <joao.dubas+gitea@gmail.com>
This commit is contained in:
2025-04-24 11:43:39 +00:00
committed by João Paulo Dubas
parent f20ec96f4b
commit 016271c3be
6 changed files with 122 additions and 60 deletions

View File

@@ -17,7 +17,6 @@ ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update \
&& apt-get install -y software-properties-common \
&& add-apt-repository ppa:fish-shell/release-3 \
&& add-apt-repository ppa:neovim-ppa/unstable \
&& apt-get update \
&& apt-get install -y --no-install-recommends \
autoconf \
@@ -70,7 +69,6 @@ RUN apt-get update \
m4 \
make \
ncal \
neovim \
net-tools \
openjdk-17-jdk \
openssh-client \
@@ -107,17 +105,31 @@ RUN apt-get update \
&& echo 'permit persist :wheel as root' > /etc/doas.conf
# command line utilities
ENV DO_VERSION 28.0.1
ENV DO_VERSION 28.0.4
ENV DO_URL https://download.docker.com/linux/static/stable/x86_64/docker-${DO_VERSION}.tgz
ENV DC_VERSION v2.33.1
ENV DC_VERSION v2.35.0
ENV DC_URL https://github.com/docker/compose/releases/download/${DC_VERSION}/docker-compose-linux-x86_64
ENV BX_VERSION v0.21.2
ENV BX_VERSION v0.22.0
ENV BX_URL https://github.com/docker/buildx/releases/download/${BX_VERSION}/buildx-${BX_VERSION}.linux-amd64
ENV EXERCISM_VERSION 3.5.4
ENV EXERCISM_FILE exercism-${EXERCISM_VERSION}-linux-x86_64.tar.gz
ENV EXERCISM_URL https://github.com/exercism/cli/releases/download/v${EXERCISM_VERSION}/${EXERCISM_FILE}
ENV NVIM_VERSION v0.11.0
ENV NVIM_FILE nvim-linux-x86_64.tar.gz
ENV NVIM_URL https://github.com/neovim/neovim/releases/download/${NVIM_VERSION}/${NVIM_FILE}
RUN curl -sS https://starship.rs/install.sh | sh -s -- --yes \
&& mkdir /tmp/download \
&& echo 'install docker' \
&& curl -L ${DO_URL} | tar -zx -C /tmp/download \
&& chgrp --recursive docker /tmp/download \
&& mv /tmp/download/docker/* /usr/local/bin \
&& echo 'install exercism' \
&& curl -L -XGET ${EXERCISM_URL} | tar -xz -C /tmp/download \
&& mv /tmp/download/exercism /usr/local/bin \
&& echo 'install neovim' \
&& curl -L -XGET ${NVIM_URL} | tar -xz -C /tmp/download \
&& mv /tmp/download/nvim-linux-x86_64 /usr/local/src/nvim \
&& ln -s /usr/local/src/nvim/bin/nvim /usr/local/bin/nvim \
&& rm -rf /tmp/download \
&& mkdir -p /usr/local/lib/docker/cli-plugins \
&& curl -L ${DC_URL} -o /usr/local/lib/docker/cli-plugins/docker-compose \
@@ -182,7 +194,7 @@ RUN fish -c true \
&& echo 'alias nh="nvim --listen 0.0.0.0:6666 --headless &> /dev/null"' >> ${XDG_CONFIG_HOME}/fish/config.fish
# git configuration
ENV NEOVIM_KICKSTART_VERSION e947649cb0ee5ac3c75593288df04d4f58359106
ENV NEOVIM_KICKSTART_VERSION d350db2449da40df003c40d440f909d74e2d4e70
COPY ./patch/kickstart.nvim/updates.patch /tmp
COPY ./config/nvim/lua/custom/plugins/init.lua /tmp
RUN git clone https://github.com/nvim-lua/kickstart.nvim.git "${XDG_CONFIG_HOME}"/nvim \