Skip to content

Commit 7499950

Browse files
committed
WIP
1 parent 622ad12 commit 7499950

2 files changed

Lines changed: 66 additions & 3 deletions

File tree

copilot/Dockerfile

Lines changed: 64 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,68 @@
1-
FROM node:22
1+
FROM librepcb/librepcb-dev:devtools-7
22

3-
RUN npm install -g @github/copilot@1.0.32
3+
# Install APT packages
4+
ARG DEBIAN_FRONTEND=noninteractive
5+
RUN apt-get update -q && apt-get -y -q install --no-install-recommends \
6+
bash \
7+
bash-completion \
8+
ccache \
9+
cmake \
10+
curl \
11+
g++ \
12+
git \
13+
jq \
14+
less \
15+
libocct-*-dev \
16+
libqt6opengl6-dev \
17+
libqt6openglwidgets6 \
18+
libqt6sql6-sqlite \
19+
libqt6svg6-dev \
20+
libtbb-dev \
21+
libxi-dev \
22+
make \
23+
ninja-build \
24+
npm \
25+
occt-misc \
26+
qt6-base-dev \
27+
qt6-image-formats-plugins \
28+
qt6-l10n-tools \
29+
qt6-tools-dev \
30+
qt6-tools-dev-tools \
31+
ripgrep \
32+
socat \
33+
tree \
34+
xvfb \
35+
&& rm -rf /var/lib/apt/lists/*
36+
37+
# Install Rust
38+
# Make .cargo/ writable for everyone to allow running the container as non-root.
39+
ARG RUST_VERSION="1.92.0"
40+
ENV RUSTUP_HOME="/.rustup" \
41+
CARGO_HOME="/.cargo" \
42+
PATH="/.cargo/bin:$PATH"
43+
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \
44+
| sh -s -- -y --default-toolchain $RUST_VERSION --profile minimal --no-modify-path \
45+
&& chmod 777 $RUSTUP_HOME \
46+
&& chmod 777 $CARGO_HOME
47+
48+
# Install UV
49+
# Set its python directory to a known, user-writable path to allow accessing the
50+
# python versions installed during docker build from within CI runs which are
51+
# run as non-root.
52+
ARG UV_VERSION="0.9.21"
53+
ARG UV_URL="https://github.com/astral-sh/uv/releases/download/$UV_VERSION/uv-x86_64-unknown-linux-gnu.tar.gz"
54+
ENV UV_PYTHON_INSTALL_DIR="/.uv/python"
55+
RUN wget -c "${UV_URL}" -O /tmp.tar.gz \
56+
&& tar -xzf /tmp.tar.gz --strip-components=1 -C /usr/local/bin/ \
57+
&& rm /tmp.tar.gz \
58+
&& mkdir -p $UV_PYTHON_INSTALL_DIR && chmod 777 $UV_PYTHON_INSTALL_DIR
59+
60+
# Install NPM packages
61+
RUN npm install -g @github/copilot @anthropic-ai/claude-code
62+
63+
# Add xclip wrapper for copilot
64+
ADD xclip /usr/local/bin/xclip
465

566
WORKDIR /work
667

7-
CMD ["copilot"]
68+
#ENTRYPOINT ["copilot"]

copilot/xclip

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
#!/bin/sh
2+
cat | socat - TCP:172.17.0.1:$CLIPBOARD_PORT

0 commit comments

Comments
 (0)