Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -63,8 +63,8 @@ libs (for `start` — see [`docs/OVERVIEW.md`](docs/OVERVIEW.md) for the exact p
headless emulator additionally needs the host to expose `/dev/kvm`.

Select/change them by rerunning `setup`. None of them are mandatory — deselecting everything builds
an image with just the core layer (code-server, Claude Code CLI, `ai-jail`, the GitHub CLI, and the
nested rootless Docker daemon).
an image with just the core layer (code-server, Claude Code CLI, `ai-jail`, the GitHub CLI, Git LFS,
and the nested rootless Docker daemon).

## Versioning

Expand Down
12 changes: 12 additions & 0 deletions core/Dockerfile.frag
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates \
curl \
git \
git-lfs \
gnupg \
htop \
jq \
Expand Down Expand Up @@ -89,6 +90,17 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \
| sh -s -- -y --profile minimal --default-toolchain stable \
&& chmod -R a+w $RUSTUP_HOME $CARGO_HOME

# 1.2 Registers Git LFS's filters system-wide rather than per-repo. The
# `git-lfs` package above only provides the binary; without this the filters
# live in a repo's own .git/config, which for a bind-mounted workspace was
# written on the host, before this image existed. A repo that already tracks
# LFS files then checks out as bare pointer stubs and `git worktree add` fails
# in post-checkout — both silently, since git treats a missing filter as a
# no-op rather than an error. `--system` writes to /etc/gitconfig, so every
# repo mounted in gets working smudge/clean/pre-push/post-checkout filters
# with no per-project step.
RUN git lfs install --system

# 2. Installs Node.js 22 (LTS) — required by the Claude Code CLI
RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
&& apt-get install -y nodejs \
Expand Down
Loading