Skip to content

Commit b3799c7

Browse files
committed
Use pixi in devcontainer
1 parent 0f9b19b commit b3799c7

File tree

1 file changed

+11
-39
lines changed

1 file changed

+11
-39
lines changed

.devcontainer/Dockerfile

Lines changed: 11 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,23 @@
11
FROM ubuntu:questing
22

33
ARG DEBIAN_FRONTEND=noninteractive
4+
ARG PIXI_VERSION=0.59.0
45

56
SHELL ["/bin/bash", "-c"]
67

7-
# Build tools
8+
# Base utilities; pixi manages the toolchain and dependencies (see docs/onboarding/building.md)
89
RUN apt-get update -qq && apt-get install -y --no-install-recommends \
9-
build-essential \
10-
clang \
11-
clang-format-14 \
12-
cmake \
10+
ca-certificates \
1311
curl \
14-
doxygen \
1512
git \
16-
lcov \
17-
lsb-release \
18-
ninja-build \
19-
pkg-config \
20-
software-properties-common \
21-
valgrind
13+
tini && \
14+
rm -rf /var/lib/apt/lists/*
2215

23-
# DART required dependencies
24-
RUN apt-get update -qq && apt-get install -y --no-install-recommends \
25-
libassimp-dev \
26-
libeigen3-dev \
27-
libfcl-dev \
28-
libfmt-dev
16+
# Install pixi globally so the devcontainer uses the managed workflow
17+
ENV PIXI_HOME="/opt/pixi" PATH="/opt/pixi/bin:${PATH}"
18+
RUN curl -fsSL https://pixi.sh/install.sh | PIXI_VERSION=${PIXI_VERSION} PIXI_HOME=${PIXI_HOME} bash
2919

30-
# DART optional dependencies
31-
RUN apt-get update -qq && apt-get install -y --no-install-recommends \
32-
libtinyxml2-dev \
33-
liburdfdom-dev \
34-
liburdfdom-headers-dev \
35-
libopenscenegraph-dev \
36-
liboctomap-dev \
37-
libode-dev \
38-
libimgui-dev \
39-
libspdlog-dev
20+
WORKDIR /workspaces/dart
4021

41-
# Python binding dependencies
42-
RUN apt-get update -qq && apt-get install -y --no-install-recommends \
43-
libpython3-dev \
44-
python3 \
45-
python3-dev \
46-
python3-numpy \
47-
python3-pip \
48-
python3-pytest \
49-
python3-setuptools && \
50-
PIP_BREAK_SYSTEM_PACKAGES=1 pip3 install --no-cache-dir --ignore-installed nanobind pytest -U && \
51-
rm -rf /var/lib/apt/lists/*
22+
ENTRYPOINT ["/usr/bin/tini", "--"]
23+
CMD ["bash", "-lc", "pixi shell || exec bash"]

0 commit comments

Comments
 (0)