diff --git a/.changeset/docker-image-vim.md b/.changeset/docker-image-vim.md new file mode 100644 index 0000000..5c35fcf --- /dev/null +++ b/.changeset/docker-image-vim.md @@ -0,0 +1,5 @@ +--- +"@jmfederico/pi-web": patch +--- + +Include Vim in the default Docker runtime and development images. diff --git a/docker/README.md b/docker/README.md index 17f3a96..8d89d97 100644 --- a/docker/README.md +++ b/docker/README.md @@ -125,7 +125,7 @@ The installer also writes a generated `compose.override.yml` in the install dire ### Base image and tooling -The Docker runtime and development images are openSUSE Tumbleweed based by default. They install Node.js 22, npm, `npx`, and Corepack through zypper, using the openSUSE Node.js build service repository when needed for the selected architecture. The image's `pi-web` account is created with `PI_WEB_UID:PI_WEB_GID` and `/data/home` as its home directory, so shells have a passwd entry instead of showing `I have no name!` while user config stays in the persistent `/data` mount. The image also includes common agent/development tools such as Git/Git LFS, GitHub CLI, OpenSSH, Python with pip/virtualenv and headers, native build tooling, `jq`, `ripgrep`, `fd`, `fzf`, `bat`, ShellCheck, archive tools, network utilities, and the Docker CLI with Compose and Buildx plugins. +The Docker runtime and development images are openSUSE Tumbleweed based by default. They install Node.js 22, npm, `npx`, and Corepack through zypper, using the openSUSE Node.js build service repository when needed for the selected architecture. The image's `pi-web` account is created with `PI_WEB_UID:PI_WEB_GID` and `/data/home` as its home directory, so shells have a passwd entry instead of showing `I have no name!` while user config stays in the persistent `/data` mount. The image also includes common agent/development tools such as Git/Git LFS, GitHub CLI, OpenSSH, Python with pip/virtualenv and headers, native build tooling, `jq`, `ripgrep`, `fd`, `fzf`, `bat`, `vim`, ShellCheck, archive tools, network utilities, and the Docker CLI with Compose and Buildx plugins. Install extra distro packages without writing a hook by setting a whitespace-delimited package list: diff --git a/docker/internal/image/install-opensuse-base b/docker/internal/image/install-opensuse-base index 94acd17..f82c251 100755 --- a/docker/internal/image/install-opensuse-base +++ b/docker/internal/image/install-opensuse-base @@ -83,6 +83,7 @@ packages=( fd fzf bat + vim ShellCheck less file