-
Notifications
You must be signed in to change notification settings - Fork 21
Expand file tree
/
Copy pathDockerfile
More file actions
38 lines (33 loc) · 1.83 KB
/
Dockerfile
File metadata and controls
38 lines (33 loc) · 1.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
FROM ubuntu:noble
LABEL maintainer="Alexandre Vanhecke <alexandre1.vanhecke@epitech.eu>"
RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections \
&& apt-get update -y \
&& apt-get install -y --no-install-recommends software-properties-common apt-utils wget \
&& add-apt-repository -y -s universe \
&& add-apt-repository -y -s ppa:epitech/ppa \
&& wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | tee /etc/apt/trusted.gpg.d/llvm.asc \
&& echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/llvm.asc] https://apt.llvm.org/noble/ llvm-toolchain-noble-20 main" | tee /etc/apt/sources.list.d/llvm.list \
&& apt-get update \
&& apt-get upgrade -y \
&& apt-get install -y \
epitech-full \
clang-20 \
python3-clang-20 \
locales \
&& apt-get clean -y \
&& rm -rf /var/lib/apt/lists/* \
&& rm -rf /usr/share/doc/*
RUN localedef -i en_US -f UTF-8 en_US.UTF-8 \
&& stack upgrade --force-download \
&& update-alternatives --install /usr/bin/clang clang /usr/bin/clang-20 100 \
&& update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-20 100 \
&& update-alternatives --install /usr/bin/scan-build scan-build /usr/bin/scan-build-20 100 \
&& update-alternatives --install /usr/bin/llvm-cov llvm-cov /usr/bin/llvm-cov-20 900
# Layer to update banana (and epiclang) only, check version at https://launchpad.net/~epitech/+archive/ubuntu/ppa
RUN apt-get update -y \
&& apt-get install -y banana-coding-style-checker=20260302102037 epiclang=20251021115803 \
&& apt-get clean -y \
&& rm -rf /var/lib/apt/lists/* \
&& rm -rf /usr/share/doc/*
ENV LANG=en_US.utf8 LANGUAGE=en_US:en LC_ALL=en_US.utf8 PKG_CONFIG_PATH=/usr/local/lib/pkgconfig CC=clang CXX=clang++
WORKDIR /usr/app