|
1 | 1 | FROM ubuntu:focal |
2 | 2 | ARG DEBIAN_FRONTEND=noninteractive |
3 | 3 | RUN \ |
4 | | - apt update && apt upgrade -y |
5 | | - #apt install -y \ |
6 | | - #autoconf \ |
7 | | - #automake \ |
8 | | - #build-essential \ |
9 | | - #ca-certificates \ |
10 | | - #curl \ |
11 | | - #desktop-file-utils \ |
12 | | - #fuse \ |
13 | | - #gettext |
14 | | - #gpg \ |
15 | | - #git \ |
16 | | - #libcairo-dev \ |
17 | | - #libfuse2 \ |
18 | | - #libfuse-dev \ |
19 | | - #libgcrypt-dev \ |
20 | | - #libglib2.0-dev \ |
21 | | - #libgpgme-dev \ |
22 | | - #libjpeg-dev \ |
23 | | - #libpng-dev \ |
24 | | - #libssl-dev \ |
25 | | - #libtool \ |
26 | | - #patchelf \ |
27 | | - #python3-pip \ |
28 | | - #sudo \ |
29 | | - #wget \ |
30 | | - #xxd && \ |
31 | | - #apt install -y --reinstall ca-certificates && \ |
32 | | - #update-ca-certificates -f |
| 4 | + apt update && apt upgrade -y && apt install -y \ |
| 5 | + autoconf \ |
| 6 | + automake \ |
| 7 | + build-essential \ |
| 8 | + ca-certificates \ |
| 9 | + curl \ |
| 10 | + desktop-file-utils \ |
| 11 | + fuse \ |
| 12 | + gettext \ |
| 13 | + gpg \ |
| 14 | + git \ |
| 15 | + libcairo-dev \ |
| 16 | + libfuse2 \ |
| 17 | + libfuse-dev \ |
| 18 | + libgcrypt-dev \ |
| 19 | + libglib2.0-dev \ |
| 20 | + libgpgme-dev \ |
| 21 | + libjpeg-dev \ |
| 22 | + libpng-dev \ |
| 23 | + libssl-dev \ |
| 24 | + libtool \ |
| 25 | + patchelf \ |
| 26 | + python3-pip \ |
| 27 | + sudo \ |
| 28 | + wget \ |
| 29 | + xxd && \ |
| 30 | + apt install -y --reinstall ca-certificates && \ |
| 31 | + update-ca-certificates -f |
33 | 32 |
|
34 | | -## Cmake dependencies |
35 | | -#RUN \ |
36 | | - #apt install -y \ |
37 | | - #librhash-dev \ |
38 | | - #libcurl4-openssl-dev \ |
39 | | - #libarchive-dev \ |
40 | | - #libjsoncpp-dev \ |
41 | | - #libuv1-dev |
| 33 | +# Cmake dependencies |
| 34 | +RUN \ |
| 35 | + apt install -y \ |
| 36 | + librhash-dev \ |
| 37 | + libcurl4-openssl-dev \ |
| 38 | + libarchive-dev \ |
| 39 | + libjsoncpp-dev \ |
| 40 | + libuv1-dev |
42 | 41 |
|
43 | | -## https://apt.kitware.com/ |
44 | | -## RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1A127079A92F09ED |
45 | | -## RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null |
46 | | -## RUN echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null |
47 | | -## RUN apt update && \ |
48 | | -## apt-get install kitware-archive-keyring && \ |
49 | | -## apt install -y cmake |
50 | | -## The following signatures couldn't be verified because the public key is not |
51 | | -## available: NO_PUBKEY 1A127079A92F09ED |
| 42 | +# https://apt.kitware.com/ |
| 43 | +# RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1A127079A92F09ED |
| 44 | +# RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null |
| 45 | +# RUN echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null |
| 46 | +# RUN apt update && \ |
| 47 | +# apt-get install kitware-archive-keyring && \ |
| 48 | +# apt install -y cmake |
| 49 | +# The following signatures couldn't be verified because the public key is not |
| 50 | +# available: NO_PUBKEY 1A127079A92F09ED |
52 | 51 |
|
53 | | -#RUN useradd -m builder && passwd -d builder |
54 | | -#RUN echo "builder ALL=(ALL) ALL" >> /etc/sudoers |
55 | | -#WORKDIR /home/builder |
| 52 | +RUN useradd -m builder && passwd -d builder |
| 53 | +RUN echo "builder ALL=(ALL) ALL" >> /etc/sudoers |
| 54 | +WORKDIR /home/builder |
56 | 55 |
|
57 | | -## This would get downloaded during the linuxdeploy cmake config, |
58 | | -## but we'll do it here to potentially help things along |
59 | | -#RUN \ |
60 | | - #git clone --depth=1 --branch v.3.3.3 https://github.com/GreycLab/CImg && \ |
61 | | - #mv CImg/CImg.h /usr/include && \ |
62 | | - #rm -rf CImg |
| 56 | +# This would get downloaded during the linuxdeploy cmake config, |
| 57 | +# but we'll do it here to potentially help things along |
| 58 | +RUN \ |
| 59 | + git clone --depth=1 --branch v.3.3.3 https://github.com/GreycLab/CImg && \ |
| 60 | + mv CImg/CImg.h /usr/include && \ |
| 61 | + rm -rf CImg |
63 | 62 |
|
64 | | -#USER builder |
| 63 | +USER builder |
65 | 64 |
|
66 | | -#ARG CMAKE_VER=3.28.3 |
67 | | -#RUN \ |
68 | | - #curl -LO https://github.com/Kitware/CMake/releases/download/v$CMAKE_VER/cmake-$CMAKE_VER.tar.gz && \ |
69 | | - #tar xvf cmake-$CMAKE_VER.tar.gz && \ |
70 | | - #cd cmake-$CMAKE_VER && \ |
71 | | - #./bootstrap \ |
72 | | - #--prefix=/home/builder/.local \ |
73 | | - #--system-libs \ |
74 | | - #--no-system-cppdap \ |
75 | | - #--parallel=$(nproc) && \ |
76 | | - #make -j $(nproc) && make install && \ |
77 | | - #cd .. && rm -rf cmake-"$CMAKE_VER"* |
| 65 | +ARG CMAKE_VER=3.28.3 |
| 66 | +RUN \ |
| 67 | + curl -LO https://github.com/Kitware/CMake/releases/download/v$CMAKE_VER/cmake-$CMAKE_VER.tar.gz && \ |
| 68 | + tar xvf cmake-$CMAKE_VER.tar.gz && \ |
| 69 | + cd cmake-$CMAKE_VER && \ |
| 70 | + ./bootstrap \ |
| 71 | + --prefix=/home/builder/.local \ |
| 72 | + --system-libs \ |
| 73 | + --no-system-cppdap \ |
| 74 | + --parallel=$(nproc) && \ |
| 75 | + make -j $(nproc) && make install && \ |
| 76 | + cd .. && rm -rf cmake-"$CMAKE_VER"* |
78 | 77 |
|
79 | | -## So pip will not report about the path... |
80 | | -#ENV PATH=/home/builder/.local/bin:$PATH |
81 | | -#RUN python3 -m pip install pip --upgrade --user |
| 78 | +# So pip will not report about the path... |
| 79 | +ENV PATH=/home/builder/.local/bin:$PATH |
| 80 | +RUN python3 -m pip install pip --upgrade --user |
82 | 81 |
|
83 | | -## On arm/v7, pip can't install cmake from source, which is needed to build ninja |
84 | | -#RUN python3 -m pip install meson ninja --upgrade --user |
| 82 | +# On arm/v7, pip can't install cmake from source, which is needed to build ninja |
| 83 | +RUN python3 -m pip install meson ninja --upgrade --user |
85 | 84 |
|
86 | 85 | USER root |
0 commit comments