aboutsummaryrefslogtreecommitdiffstats
path: root/docker
diff options
context:
space:
mode:
Diffstat (limited to 'docker')
-rwxr-xr-xdocker/entrypoint.sh (renamed from docker/focal/entrypoint.sh)0
-rw-r--r--docker/jammy/Dockerfile (renamed from docker/focal/Dockerfile)27
-rw-r--r--docker/jammy/test-android-no-qt.Dockerfile (renamed from docker/focal/test-android-no-qt.Dockerfile)4
-rw-r--r--docker/jammy/test-android.Dockerfile (renamed from docker/focal/test-android.Dockerfile)12
-rw-r--r--docker/jammy/test-baremetal.Dockerfile (renamed from docker/focal/test-baremetal.Dockerfile)4
-rw-r--r--docker/jammy/test-qt4.Dockerfile (renamed from docker/focal/test-qt4.Dockerfile)6
-rw-r--r--docker/jammy/test-qt6-static.Dockerfile (renamed from docker/focal/test-qt6-static.Dockerfile)25
-rw-r--r--docker/leap/Dockerfile2
-rw-r--r--docker/windowsservercore/Dockerfile18
9 files changed, 58 insertions, 40 deletions
diff --git a/docker/focal/entrypoint.sh b/docker/entrypoint.sh
index 40bc5acb9..40bc5acb9 100755
--- a/docker/focal/entrypoint.sh
+++ b/docker/entrypoint.sh
diff --git a/docker/focal/Dockerfile b/docker/jammy/Dockerfile
index 405fe0a16..cdda42202 100644
--- a/docker/focal/Dockerfile
+++ b/docker/jammy/Dockerfile
@@ -1,7 +1,7 @@
#
# Install Qt and Qbs for Linux
#
-FROM ubuntu:focal
+FROM ubuntu:jammy
LABEL Description="Ubuntu development environment for Qbs with Qt and various dependencies for testing Qbs modules and functionality"
ARG QT_VERSION
ARG QTCREATOR_VERSION
@@ -29,10 +29,10 @@ RUN apt-get update -qq && \
usermod -a -G sudo ${USER_NAME} && \
echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers
-COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh
+COPY docker/entrypoint.sh /sbin/entrypoint.sh
ENTRYPOINT ["/sbin/entrypoint.sh"]
-# Qbs build dependencies
+# # Qbs build dependencies
RUN apt-get update -qq && \
DEBIAN_FRONTEND="noninteractive" apt-get install -qq -y --no-install-recommends \
bison \
@@ -40,8 +40,8 @@ RUN apt-get update -qq && \
ca-certificates \
capnproto \
ccache \
- clang-8 \
- clang-tidy-8 \
+ clang-15 \
+ clang-tidy-15 \
cmake \
curl \
flex \
@@ -58,6 +58,7 @@ RUN apt-get update -qq && \
libprotobuf-dev \
libgrpc++-dev \
libxkbcommon-x11-0 \
+ locales \
nanopb \
ninja-build \
nsis \
@@ -71,21 +72,27 @@ RUN apt-get update -qq && \
subversion \
unzip \
zip && \
- update-alternatives --install /usr/bin/clang clang /usr/bin/clang-8 100 && \
- update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-8 100 && \
- update-alternatives --install /usr/bin/clang-check clang-check /usr/bin/clang-check-8 100 && \
+ update-alternatives --install /usr/bin/clang clang /usr/bin/clang-15 100 && \
+ update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-15 100 && \
+ update-alternatives --install /usr/bin/clang-check clang-check /usr/bin/clang-check-15 100 && \
update-alternatives --install /usr/bin/python python /usr/bin/python3 100 && \
pip install beautifulsoup4 lxml protobuf==3.19.1 pyyaml
-ENV LLVM_INSTALL_DIR=/usr/lib/llvm-8
+# Set the locale
+RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && \
+ locale-gen
+ENV LANG en_US.UTF-8
+ENV LANGUAGE en_US:en
+ENV LC_ALL en_US.UTF-8
+ENV LLVM_INSTALL_DIR=/usr/lib/llvm-15
#
# Install Qt and Qbs for Linux from qt.io
#
COPY scripts/install-qt.sh install-qt.sh
-RUN ./install-qt.sh --version ${QT_VERSION} qtbase qtdeclarative qtscript qttools qtx11extras qtscxml qt5compat icu && \
+RUN ./install-qt.sh --version ${QT_VERSION} qtbase qtdeclarative qttools qtx11extras qtscxml qt5compat icu && \
./install-qt.sh --version ${QTCREATOR_VERSION} qtcreator && \
echo "export PATH=/opt/Qt/${QT_VERSION}/gcc_64/bin:/opt/Qt/Tools/QtCreator/bin:\${PATH}" > /etc/profile.d/qt.sh
diff --git a/docker/focal/test-android-no-qt.Dockerfile b/docker/jammy/test-android-no-qt.Dockerfile
index e1622043a..4e6dadf4f 100644
--- a/docker/focal/test-android-no-qt.Dockerfile
+++ b/docker/jammy/test-android-no-qt.Dockerfile
@@ -1,7 +1,7 @@
#
# Android SDK/NDK for testing Qbs
#
-FROM ubuntu:focal
+FROM ubuntu:jammy
LABEL Description="Ubuntu test environment for Qbs for Android"
# Allow colored output on command line.
@@ -27,7 +27,7 @@ RUN apt-get update -qq && \
usermod -a -G sudo ${USER_NAME} && \
echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers
-COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh
+COPY docker/entrypoint.sh /sbin/entrypoint.sh
ENTRYPOINT ["/sbin/entrypoint.sh"]
# Qbs build dependencies
diff --git a/docker/focal/test-android.Dockerfile b/docker/jammy/test-android.Dockerfile
index 31f4eb773..b17cee65b 100644
--- a/docker/focal/test-android.Dockerfile
+++ b/docker/jammy/test-android.Dockerfile
@@ -1,7 +1,7 @@
#
# Android SDK/NDK + Qt for Android for testing Qbs
#
-FROM ubuntu:focal
+FROM ubuntu:jammy
LABEL Description="Ubuntu test environment for Qbs and Qt for Android"
# Allow colored output on command line.
@@ -27,7 +27,7 @@ RUN apt-get update -qq && \
usermod -a -G sudo ${USER_NAME} && \
echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers
-COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh
+COPY docker/entrypoint.sh /sbin/entrypoint.sh
ENTRYPOINT ["/sbin/entrypoint.sh"]
# Qbs build dependencies
@@ -37,10 +37,18 @@ RUN apt-get update -qq && \
curl \
libasan5 \
libglib2.0-0 \
+ locales \
openjdk-8-jdk-headless \
p7zip-full \
unzip
+# Set the locale
+RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && \
+ locale-gen
+ENV LANG en_US.UTF-8
+ENV LANGUAGE en_US:en
+ENV LC_ALL en_US.UTF-8
+
ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
RUN echo "export JAVA_HOME=${JAVA_HOME}" > /etc/profile.d/android.sh && \
echo "export PATH=${JAVA_HOME}/bin:\${PATH}" >> /etc/profile.d/android.sh
diff --git a/docker/focal/test-baremetal.Dockerfile b/docker/jammy/test-baremetal.Dockerfile
index 5bef208ca..774885797 100644
--- a/docker/focal/test-baremetal.Dockerfile
+++ b/docker/jammy/test-baremetal.Dockerfile
@@ -1,7 +1,7 @@
#
# Baremetal toolchains for testing Qbs
#
-FROM ubuntu:focal
+FROM ubuntu:jammy
LABEL Description="Ubuntu baremetal test environment for Qbs"
# Allow colored output on command line.
@@ -27,7 +27,7 @@ RUN apt-get update -qq && \
usermod -a -G sudo ${USER_NAME} && \
echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers
-COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh
+COPY docker/entrypoint.sh /sbin/entrypoint.sh
ENTRYPOINT ["/sbin/entrypoint.sh"]
# Install baremetal toolchains and Qbs runtime dependencies.
diff --git a/docker/focal/test-qt4.Dockerfile b/docker/jammy/test-qt4.Dockerfile
index e49e255f9..9fa8f5d6b 100644
--- a/docker/focal/test-qt4.Dockerfile
+++ b/docker/jammy/test-qt4.Dockerfile
@@ -1,7 +1,7 @@
#
# Testing Qbs with qt4
#
-FROM ubuntu:focal
+FROM ubuntu:jammy
LABEL Description="Ubuntu qt4 test environment for Qbs"
# Allow colored output on command line.
@@ -28,11 +28,11 @@ RUN apt-get update -qq && \
usermod -a -G sudo ${USER_NAME} && \
echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers
-COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh
+COPY docker/entrypoint.sh /sbin/entrypoint.sh
ENTRYPOINT ["/sbin/entrypoint.sh"]
# Install baremetal toolchains and Qbs runtime dependencies.
-RUN sudo add-apt-repository ppa:gezakovacs/ppa -y && \
+RUN sudo add-apt-repository ppa:ubuntuhandbook1/ppa -y && \
apt-get update -qq && \
apt-get install -qq -y \
build-essential \
diff --git a/docker/focal/test-qt6-static.Dockerfile b/docker/jammy/test-qt6-static.Dockerfile
index 61316e372..37239fd9a 100644
--- a/docker/focal/test-qt6-static.Dockerfile
+++ b/docker/jammy/test-qt6-static.Dockerfile
@@ -1,7 +1,7 @@
#
# Testing Qbs with static qt6
#
-FROM ubuntu:focal
+FROM ubuntu:jammy
LABEL Description="Ubuntu static qt6 test environment for Qbs"
ARG QT_VERSION
ARG QTCREATOR_VERSION
@@ -31,11 +31,11 @@ RUN apt-get update -qq && \
usermod -a -G sudo ${USER_NAME} && \
echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers
-COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh
+COPY docker/entrypoint.sh /sbin/entrypoint.sh
ENTRYPOINT ["/sbin/entrypoint.sh"]
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
-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
+RUN echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ jammy main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null
RUN cat /etc/apt/sources.list.d/kitware.list
RUN apt-get update -qq && \
@@ -43,8 +43,9 @@ RUN apt-get update -qq && \
build-essential \
git \
perl \
+ clang-15 \
cmake \
- python \
+ python3 \
zlib1g-dev \
libzstd-dev \
libdbus-1-dev \
@@ -56,6 +57,7 @@ RUN apt-get update -qq && \
libvulkan-dev \
libicu-dev \
libb2-dev \
+ libclang-15-dev \
libsystemd-dev \
libfontconfig1-dev \
libfreetype6-dev \
@@ -101,6 +103,7 @@ RUN apt-get update -qq && \
libxcb-damage0-dev \
libxcb-dpms0-dev \
libgstreamer1.0-dev \
+ llvm-15-dev \
apt-transport-https
ENV QT_HOME="/home/${USER_NAME}/qt"
@@ -119,7 +122,7 @@ USER root
RUN cd ${QT_HOME}/static-build && cmake --install .
-FROM ubuntu:focal
+FROM ubuntu:jammy
LABEL Description="Ubuntu static qt6 test environment for Qbs"
ARG QT_VERSION
ARG QTCREATOR_VERSION
@@ -153,8 +156,8 @@ RUN apt-get update -qq && \
ca-certificates \
capnproto \
ccache \
- clang-8 \
- clang-tidy-8 \
+ clang-15 \
+ clang-tidy-15 \
cmake \
curl \
flex \
@@ -186,13 +189,13 @@ RUN apt-get update -qq && \
zip \
libb2-1 \
libpcre++ && \
- update-alternatives --install /usr/bin/clang clang /usr/bin/clang-8 100 && \
- update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-8 100 && \
- update-alternatives --install /usr/bin/clang-check clang-check /usr/bin/clang-check-8 100 && \
+ update-alternatives --install /usr/bin/clang clang /usr/bin/clang-15 100 && \
+ update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-15 100 && \
+ update-alternatives --install /usr/bin/clang-check clang-check /usr/bin/clang-check-15 100 && \
update-alternatives --install /usr/bin/python python /usr/bin/python3 100 && \
pip install beautifulsoup4 lxml protobuf pyyaml
-ENV LLVM_INSTALL_DIR=/usr/lib/llvm-8
+ENV LLVM_INSTALL_DIR=/usr/lib/llvm-15
#
# Install Qbs for Linux from qt.io
diff --git a/docker/leap/Dockerfile b/docker/leap/Dockerfile
index 308f854ab..12f789e21 100644
--- a/docker/leap/Dockerfile
+++ b/docker/leap/Dockerfile
@@ -76,7 +76,7 @@ RUN zypper install -y \
#
COPY scripts/install-qt.sh install-qt.sh
-RUN ./install-qt.sh --version ${QT_VERSION} qtbase qtdeclarative qtscript qttools qtx11extras qtscxml qt5compat icu && \
+RUN ./install-qt.sh --version ${QT_VERSION} qtbase qtdeclarative qttools qtx11extras qtscxml qt5compat icu && \
./install-qt.sh --version ${QTCREATOR_VERSION} qtcreator && \
echo "export PATH=/opt/Qt/${QT_VERSION}/gcc_64/bin:/opt/Qt/Tools/QtCreator/bin:\${PATH}" > /etc/profile.d/qt.sh
diff --git a/docker/windowsservercore/Dockerfile b/docker/windowsservercore/Dockerfile
index 50a1400ef..8fce9fa59 100644
--- a/docker/windowsservercore/Dockerfile
+++ b/docker/windowsservercore/Dockerfile
@@ -6,7 +6,7 @@ LABEL Description="Windows Server Core development environment for Qbs with Qt,
RUN reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting" /v Disabled /t REG_DWORD /d 1 /f
RUN reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting" /v DontShowUI /t REG_DWORD /d 1 /f
-# Install VS from the website since chocolatey has broken .NET 4.8 (dotnetfx package) which is a
+# Install VS 2019 from the website since chocolatey has broken .NET 4.8 (dotnetfx package) which is a
# dependency for the visualstudio2019buildtools package
RUN powershell -NoProfile -ExecutionPolicy Bypass -Command \
Invoke-WebRequest "https://aka.ms/vs/16/release/vs_community.exe" \
@@ -14,18 +14,17 @@ RUN powershell -NoProfile -ExecutionPolicy Bypass -Command \
RUN "%TEMP%\vs_community.exe" --quiet --wait --norestart --noUpdateInstaller \
--add Microsoft.VisualStudio.Component.VC.Tools.x86.x64 \
- --add Microsoft.VisualStudio.Component.Windows10SDK.18362
+ --add Microsoft.VisualStudio.Component.Windows10SDK.20348
RUN powershell -NoProfile -ExecutionPolicy Bypass -Command \
$Env:chocolateyVersion = '0.10.15' ; \
$Env:chocolateyUseWindowsCompression = 'false' ; \
"[Net.ServicePointManager]::SecurityProtocol = \"tls12, tls11, tls\"; iex ((New-Object System.Net.WebClient).DownloadString('http://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
-ARG QBS_VERSION
-RUN choco install -y python && \
+RUN choco install -y python --version 3.9 && \
choco install -y 7zip --version 19.0 && \
choco install -y git --version 2.24.0 --params "/GitAndUnixToolsOnPath" && \
- choco install -y qbs --version %QBS_VERSION%
+ choco install -y vswhere
# for building the documentation
RUN pip install beautifulsoup4 lxml
@@ -42,13 +41,14 @@ RUN certutil -generateSSTFromWU roots.sst && \
ARG QT_VERSION
COPY scripts/install-qt.sh install-qt.sh
-RUN bash -c "./install-qt.sh -d /c/Qt --version ${QT_VERSION} --toolchain win64_msvc2019_64 qtbase qtdeclarative qttools qtscript"
+RUN bash -c "./install-qt.sh -d /c/Qt --version ${QT_VERSION} --toolchain win64_msvc2019_64 qtbase qtdeclarative qttools qt5compat"
ENV QTDIR64=C:\\Qt\\${QT_VERSION}\\msvc2019_64
-RUN bash -c "./install-qt.sh -d /c/Qt --version ${QT_VERSION} --toolchain win32_msvc2019 qtbase qtdeclarative qttools qtscript"
-ENV QTDIR=C:\\Qt\\${QT_VERSION}\\msvc2019
+########### Install Qbs #############
+ARG QTCREATOR_VERSION
+RUN bash -c "./install-qt.sh -d /c/Qt --version ${QTCREATOR_VERSION} qtcreator"
+RUN setx PATH "C:\\Qt\\Tools\\QtCreator\\bin;%PATH%"
RUN qbs setup-toolchains --detect && \
qbs setup-qt %QTDIR64%/bin/qmake.exe qt64 && \
- qbs setup-qt %QTDIR%/bin/qmake.exe qt && \
qbs config defaultProfile qt64