OILS / deps / Dockerfile.soil-cpp-spec View on Github | oils.pub

54 lines, 40 significant
1# cpp-spec: Similar to Dockerfile.cpp-small, except for pexpect
2
3FROM oilshell/soil-debian-12
4
5# Copy again to prevent unsound caching
6COPY deps/from-apt.sh /home/uke/tmp/deps/from-apt.sh
7
8RUN --mount=type=cache,id=var-cache-apt-debian-12,target=/var/cache/apt,sharing=locked \
9 --mount=type=cache,id=var-lib-apt-debian-12,target=/var/lib/apt,sharing=locked \
10 du --si -s /var/cache/apt /var/lib/apt && \
11 deps/from-apt.sh layer-locales && \
12 deps/from-apt.sh cpp-spec
13
14# Build other dependencies as non-root uke
15USER uke
16
17# Pre-built wedges
18
19COPY --chown=uke \
20 _build/boxed/wedge/cmark/0.29.0 \
21 /home/uke/oils.DEPS/wedge/cmark/0.29.0
22
23COPY --chown=uke \
24 _build/boxed/wedge/re2c/3.0 \
25 /home/uke/oils.DEPS/wedge/re2c/3.0
26
27COPY --chown=uke \
28 _build/boxed/wedge/python3/3.10.4 \
29 /home/uke/oils.DEPS/wedge/python3/3.10.4
30
31# Put python3 in PATH before running install-py3-libs
32RUN mkdir -p /home/uke/oils.DEPS/bin && \
33 ln -s --relative /home/uke/oils.DEPS/wedge/re2c/3.0/bin/re2c /home/uke/oils.DEPS/bin && \
34 ln -s --relative /home/uke/oils.DEPS/wedge/python3/3.10.4/bin/python3 /home/uke/oils.DEPS/bin
35
36COPY --chown=uke \
37 _build/deps-source/mypy/mypy-0.780/ \
38 /home/uke/oils.DEPS/wedge/mypy/0.780/
39
40# 2025-04: build/deps.sh install-py3-libs depends on this - need tree shaking
41COPY stdlib/osh/bash-strict.sh /home/uke/tmp/stdlib/osh/bash-strict.sh
42COPY stdlib/osh/task-five.sh /home/uke/tmp/stdlib/osh/task-five.sh
43COPY stdlib/osh/byo-server.sh /home/uke/tmp/stdlib/osh/byo-server.sh
44COPY stdlib/osh/two.sh /home/uke/tmp/stdlib/osh/two.sh
45COPY test/tsv-lib.sh /home/uke/tmp/test/tsv-lib.sh
46COPY web/table/html.sh /home/uke/tmp/web/table/html.sh
47
48COPY build/deps.sh /home/uke/tmp/build/deps.sh
49COPY build/dev-shell.sh /home/uke/tmp/build/dev-shell.sh
50
51RUN build/deps.sh install-py3-libs \
52 /home/uke/oils.DEPS/wedge/mypy/0.780/ ../oils.DEPS/wedge
53
54CMD ["sh", "-c", "echo 'hello from oilshell/soil-cpp-spec'"]