11FROM ubuntu:noble
22
3+ ARG TARGETARCH
34ARG DEBIAN_FRONTEND=noninteractive
45ENV TZ=GMT
56
67# Install all required packages
78RUN apt-get update \
89 && apt-get install -y --no-install-recommends openjdk-17-jdk wget git gdebi-core \
9- build-essential ocaml libnum-ocaml-dev \
10- python3-dev nodejs npm python3-venv \
11- tzdata ca-certificates p11-kit
10+ build-essential tzdata ca-certificates p11-kit
1211
1312RUN python3 -m venv /opt/venv
1413
1514ENV PATH="/opt/venv/bin:$PATH"
1615
17- RUN pip install pandas plotnine scipy jupyter
18-
19- # Set locale
2016ENV LANG=C.UTF-8
2117
22- ARG TARGETARCH
23-
2418# Install srcML
2519RUN if [ "${TARGETARCH}" = "arm64" ]; then \
2620 wget https://github.com/srcML/srcML/releases/download/v1.1.0/srcml_1.1.0-1_ubuntu24.10_arm64.deb && \
@@ -30,29 +24,9 @@ RUN if [ "${TARGETARCH}" = "arm64" ]; then \
3024 gdebi srcml_1.1.0-1_ubuntu24.04_amd64.deb -n; \
3125 fi
3226
33- # Install cgum
34- RUN git clone https://github.com/GumTreeDiff/cgum.git /opt/cgum --depth 1 \
35- && make -C /opt/cgum \
36- && ln -s /opt/cgum/cgum /usr/bin/cgum
37-
38- # Install pythonparser
39- RUN git clone https://github.com/GumTreeDiff/pythonparser.git /opt/pythonparser --depth 1 \
40- && ln -s /opt/pythonparser/pythonparser /usr/bin/pythonparser \
41- && pip3 install parso
42-
43- # Install jsparser
44- RUN git clone https://github.com/GumTreeDiff/jsparser.git /opt/jsparser --depth 1 \
45- && ln -s /opt/jsparser/jsparser /usr/bin/jsparser \
46- && npm --prefix /opt/jsparser/ install /opt/jsparser/
47-
48- # Install tree-sitter-parser
49- RUN git clone --recurse-submodules --shallow-submodules https://github.com/GumTreeDiff/tree-sitter-parser.git /opt/tree-sitter-parser --depth 1 \
50- && ln -s /opt/tree-sitter-parser/tree-sitter-parser.py /usr/bin/tree-sitter-parser.py \
51- && pip3 install tree_sitter pyyaml
52-
5327# Install gumtree
5428COPY . /opt/gumtree
55- RUN /opt/gumtree/gradlew -PtestNative -p /opt/gumtree build \
29+ RUN /opt/gumtree/gradlew -PtestExternal -p /opt/gumtree build \
5630 && ln -s /opt/gumtree/dist/build/install/gumtree/bin/gumtree /usr/bin/gumtree
5731
5832# Define volume diff to make available files to diff
0 commit comments