Skip to content

Commit 6338581

Browse files
committed
two
2 parents 33c1b67 + 6eef09e commit 6338581

File tree

157 files changed

+27264
-6383
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

157 files changed

+27264
-6383
lines changed
+22-71
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,28 @@
11
# The Arduino IDE Linux build workflow job runs in this container.
22
# syntax=docker/dockerfile:1
33

4-
FROM ubuntu:18.04
5-
6-
# See: https://unofficial-builds.nodejs.org/download/release/
7-
ARG node_version="18.17.1"
4+
# See: https://hub.docker.com/_/ubuntu/tags
5+
FROM ubuntu:18.10
86

7+
# This is required in order to use the Ubuntu package repositories for EOL Ubuntu versions:
8+
# https://help.ubuntu.com/community/EOLUpgrades#Update_sources.list
99
RUN \
10-
apt-get \
11-
--yes \
12-
update
10+
sed \
11+
--in-place \
12+
--regexp-extended \
13+
--expression='s/([a-z]{2}\.)?archive.ubuntu.com|security.ubuntu.com/old-releases.ubuntu.com/g' \
14+
"/etc/apt/sources.list"
1315

14-
# This is required to get add-apt-repository
1516
RUN \
1617
apt-get \
1718
--yes \
18-
install \
19-
"software-properties-common=0.96.24.32.22"
19+
update
2020

21-
# Install Git
22-
# The PPA is required to get a modern version of Git. The version in the Ubuntu 18.04 package repository is 2.17.1,
23-
# while action/checkout@v3 requires 2.18 or higher.
2421
RUN \
25-
add-apt-repository \
26-
--yes \
27-
"ppa:git-core/ppa" && \
28-
apt-get \
29-
--yes \
30-
update && \
31-
\
3222
apt-get \
3323
--yes \
3424
install \
35-
"git" && \
36-
\
37-
apt-get \
38-
--yes \
39-
purge \
40-
"software-properties-common"
25+
"git"
4126

4227
# The repository path must be added to safe.directory, otherwise any Git operations on it would fail with a
4328
# "dubious ownership" error. actions/checkout configures this, but it is not applied to containers.
@@ -51,62 +36,28 @@ ENV \
5136

5237
# Install Python
5338
# The Python installed by actions/setup-python has dependency on a higher version of glibc than available in the
54-
# ubuntu:18.04 container.
39+
# container.
5540
RUN \
5641
apt-get \
5742
--yes \
5843
install \
59-
"python3.8-minimal=3.8.0-3ubuntu1~18.04.2" && \
60-
\
61-
ln \
62-
--symbolic \
63-
--force \
64-
"$(which python3.8)" \
65-
"/usr/bin/python3"
44+
"python3.7-minimal=3.7.3-2~18.10"
6645

6746
# Install Theia's package dependencies
6847
# These are pre-installed in the GitHub Actions hosted runner machines.
6948
RUN \
7049
apt-get \
7150
--yes \
7251
install \
73-
"libsecret-1-dev=0.18.6-1" \
74-
"libx11-dev=2:1.6.4-3ubuntu0.4" \
52+
"libsecret-1-dev=0.18.6-3" \
53+
"libx11-dev=2:1.6.7-1" \
7554
"libxkbfile-dev=1:1.0.9-2"
7655

77-
# Install Node.js
78-
# It is necessary to use the "unofficial" linux-x64-glibc-217 build because the official Node.js 18.x is dynamically
79-
# linked against glibc 2.28, while Ubuntu 18.04 has glibc 2.27.
80-
ARG node_installation_path="/tmp/node-installation"
81-
ARG artifact_name="node-v${node_version}-linux-x64-glibc-217"
82-
RUN \
83-
mkdir "$node_installation_path" && \
84-
cd "$node_installation_path" && \
85-
\
86-
apt-get \
87-
--yes \
88-
install \
89-
"wget=1.19.4-1ubuntu2.2" && \
90-
\
91-
archive_name="${artifact_name}.tar.xz" && \
92-
wget \
93-
"https://unofficial-builds.nodejs.org/download/release/v${node_version}/${archive_name}" && \
94-
\
95-
apt-get \
96-
--yes \
97-
purge \
98-
"wget" && \
99-
\
100-
tar \
101-
--file="$archive_name" \
102-
--extract && \
103-
rm "$archive_name"
104-
ENV PATH="${PATH}:${node_installation_path}/${artifact_name}/bin"
105-
106-
# Install Yarn
107-
# Yarn is pre-installed in the GitHub Actions hosted runner machines.
56+
# Target python3 symlink to Python 3.7 installation. It would otherwise target version 3.6 due to the installation of
57+
# the `python3` package as a transitive dependency.
10858
RUN \
109-
npm \
110-
install \
111-
--global \
112-
59+
ln \
60+
--symbolic \
61+
--force \
62+
"$(which python3.7)" \
63+
"/usr/bin/python3"

0 commit comments

Comments
 (0)