diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 67af2c4e..f585dc95 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -135,6 +135,15 @@ make colors-check This is run in CI and ensures that generation was correct by re-running it and validating that no changes were made. +### Using the local container image + +You can build and use the included container image to run the previous commands. + +```sh +docker build -t nvim-web-devicons:latest . +docker run --rm -ti --user "`id -u`:`id -g`" -v "$(pwd):/host" -w /host nvim-web-devicons:latest make +``` + ## Test Run `:NvimWebDeviconsHiTest` to view the icons and their highlighting. diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..2de804f1 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,21 @@ +FROM debian:stable-slim + +ENV DEBIAN_FRONTEND=noninteractive + +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + make gcc curl npm luarocks git \ + && rm -rf /var/lib/apt/lists/* + +# Neovim +RUN curl -L 'https://github.com/neovim/neovim/releases/download/stable/nvim-linux-x86_64.tar.gz' \ + | tar zx --directory /usr/local --strip-components=1 + +## luacheck +RUN luarocks install luacheck + +## stylua wrapper (npx to avoid cargo deps) +RUN set -eux; \ + printf '#!/bin/sh\nnpx --yes @johnnymorganz/stylua-bin "$@"\n' > /usr/local/bin/stylua; \ + chmod +x /usr/local/bin/stylua; \ + npx --yes @johnnymorganz/stylua-bin --help >/dev/null 2>&1