feat(paseo): preinstall the build-essential C toolchain

The image had no compiler at all -- gcc, g++, make, cc and ld were all
missing -- so cgo, npm's node-gyp addons and Python C extensions could
not build. Goes in the existing apt layer to keep a single apt-get
update.
This commit is contained in:
tiennm99 committed 2026-09-16 22:55:56 +07:00
1 parent aa02fd2f5b
commit 92d24c8e64
2 files changed
+7 -1

No files matched your search

+5
View File
@@ -9,9 +9,14 @@ FROM ghcr.io/getpaseo/paseo:latest
# --- system packages -------------------------------------------------------
# Everyday shell tooling. git and curl are already in the base image; sudo is
# not, despite Debian's base-passwd shipping an (empty) sudo group.
#
# build-essential is the C toolchain the language layers below assume but do
# not ship: cgo, npm's node-gyp addons and Python C extensions all shell out to
# gcc and make. Kept in this layer so there is only one apt-get update.
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
less nano jq unzip zip lsof psmisc ugrep bfs zsh sudo \
build-essential \
&& rm -rf /var/lib/apt/lists/* \
&& usermod -aG sudo paseo
+2 -1
View File
@@ -2,7 +2,7 @@
[Paseo](https://paseo.sh) — self-hosted daemon and web UI for running coding
agents. Built from a local `Dockerfile` that adds six agent CLIs, `gh`, Go,
Python, and shell tooling to the
Python, a C toolchain, and shell tooling to the
[official image](https://paseo.sh/docs/docker), which ships none of it.
## Setup
@@ -92,6 +92,7 @@ oh-my-zsh install persists. Anything written outside `$HOME` (`chsh`,
| Go (`GO_VERSION`) | Official go.dev tarball | Debian 12 ships 1.19 |
| Python (`PYTHON_VERSION`) | `uv python install` | Debian 12 ships 3.11 |
| `less nano jq unzip zip lsof psmisc ugrep bfs zsh sudo` | apt | — |
| `build-essential` | apt | — |
Bump a language with a build arg, e.g. `--build-arg GO_VERSION=1.27.1`. `uv`
itself is installed too.