Add Qt 6 to Linux build images. (#42)

* Add Qt 6 to Linux build images.

* Update dependent CI actions.
This commit is contained in:
Steveice10 2023-04-14 20:50:11 -07:00 committed by GitHub
parent d6e4e7ff16
commit a48e53c6d1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 45 additions and 22 deletions

View File

@ -13,16 +13,16 @@ jobs:
image: ["linux-appimage", "linux-clang-format", "linux-flatpak", "linux-fresh", "linux-frozen", "linux-mingw", "linux-transifex"]
steps:
- uses: actions/checkout@v2
- uses: docker/setup-buildx-action@v1
- uses: actions/checkout@v3
- uses: docker/setup-buildx-action@v2
name: Setup Docker BuildX system
- name: Login to DockerHub
uses: docker/login-action@v1
uses: docker/login-action@v2
if: (github.ref == 'refs/heads/master') && (github.repository == 'citra-emu/build-environments')
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- uses: docker/build-push-action@v2
- uses: docker/build-push-action@v4
name: Build image
with:
push: ${{ (github.ref == 'refs/heads/master') && (github.repository == 'citra-emu/build-environments') }}

View File

@ -35,13 +35,19 @@ RUN apt-get install -y \
qt5-style-plugins \
file \
&& \
# Install updated version of cmake and missing libfdk-aac-dev
# Install updated version of cmake and missing libfdk-aac-dev, qt6
apt-add-repository 'deb http://deb.debian.org/debian bullseye main contrib non-free' && \
apt-add-repository 'deb http://deb.debian.org/debian bullseye-backports main contrib non-free' && \
apt-get update -y && \
apt-get install -y \
libfdk-aac-dev \
cmake/bullseye-backports
cmake/bullseye-backports \
qt6-base-dev \
qt6-base-private-dev \
libqt6opengl6-dev \
qt6-multimedia-dev \
qt6-tools-dev \
qt6-tools-dev-tools
# Downloading Tools for Building AppImages
RUN wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage
RUN wget https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage

View File

@ -4,4 +4,4 @@ ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get -y full-upgrade
RUN apt-get install -y p7zip-full wget git flatpak flatpak-builder ca-certificates sshfs curl dnsutils gnupg2 sudo
RUN flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
RUN flatpak install -y flathub org.kde.Platform//5.15-22.08 org.kde.Sdk//5.15-22.08
RUN flatpak install -y flathub org.kde.Platform//5.15-22.08 org.kde.Sdk//5.15-22.08 org.kde.Platform//6.4 org.kde.Sdk//6.4

View File

@ -16,6 +16,12 @@ RUN apt-get install -y \
qtmultimedia5-dev \
qttools5-dev \
qttools5-dev-tools \
qt6-base-dev \
qt6-base-private-dev \
libqt6opengl6-dev \
qt6-multimedia-dev \
qt6-tools-dev \
qt6-tools-dev-tools \
libavcodec-dev \
libavfilter-dev \
libavformat-dev \

View File

@ -20,17 +20,23 @@ RUN apt-get update && apt-get install -y \
glslang-dev \
glslang-tools
RUN cd /tmp/pkgs && python3 install_package.py \
libsdl2-dev 2.0.20+dfsg-2build1 jammy \
qtbase5-dev 5.15.3+dfsg-2 jammy \
qtbase5-private-dev 5.15.3+dfsg-2 jammy \
libqt5opengl5-dev 5.15.3+dfsg-2 jammy \
qt5-qmltooling-plugins 5.15.3+dfsg-1 jammy \
qtdeclarative5-dev 5.15.3+dfsg-1 jammy \
qtmultimedia5-dev 5.15.3-1 jammy \
libicu70 70.1-2 jammy \
cmake 3.22.1-1ubuntu1 jammy \
libavcodec-dev 7:4.4.2-0ubuntu0.22.04.1 jammy \
libavformat-dev 7:4.4.2-0ubuntu0.22.04.1 jammy \
RUN cd /tmp/pkgs && python3 install_package.py \
libsdl2-dev 2.0.20+dfsg-2build1 jammy \
qtbase5-dev 5.15.3+dfsg-2 jammy \
qtbase5-private-dev 5.15.3+dfsg-2 jammy \
libqt5opengl5-dev 5.15.3+dfsg-2 jammy \
qt5-qmltooling-plugins 5.15.3+dfsg-1 jammy \
qtdeclarative5-dev 5.15.3+dfsg-1 jammy \
qtmultimedia5-dev 5.15.3-1 jammy \
qt6-base-dev 6.2.4+dfsg-2ubuntu1 jammy \
qt6-base-private-dev 6.2.4+dfsg-2ubuntu1 jammy \
libqt6opengl6-dev 6.2.4+dfsg-2ubuntu1 jammy \
qt6-qmltooling-plugins 6.2.4+dfsg-3ubuntu1 jammy \
qt6-declarative-dev 6.2.4+dfsg-3ubuntu1 jammy \
qt6-multimedia-dev 6.2.4-1 jammy \
libicu70 70.1-2 jammy \
cmake 3.22.1-1ubuntu1 jammy \
libavcodec-dev 7:4.4.2-0ubuntu0.22.04.1 jammy \
libavformat-dev 7:4.4.2-0ubuntu0.22.04.1 jammy \
libswscale-dev 7:4.4.2-0ubuntu0.22.04.1 jammy
RUN rm -rf /tmp/pkgs

View File

@ -40,7 +40,9 @@ def get_package(pkg, distro):
url = get_url(pkg, distro)
subprocess.check_call(['wget', '--quiet', url[0], '-O', url[1]])
for dep in list_dependencies(url[1]):
get_package(dep, distro)
# qt6-base-abi is a virtual package, which breaks the script.
if dep[0] != 'qt6-base-abi':
get_package(dep, distro)
processed_packages.append(pkg)
deb_file_list.append('./' + url[1])

View File

@ -32,6 +32,9 @@ RUN useradd -m -u 1027 -s /bin/bash citra && mkdir -p /tmp/pkgs && \
mingw-w64-qt5-multimedia \
mingw-w64-qt5-tools \
mingw-w64-qt5-winextras \
mingw-w64-qt6-base \
mingw-w64-qt6-multimedia \
mingw-w64-qt6-tools \
mingw-w64-tools \
mingw-w64-sdl2 \
mingw-w64-winpthreads \

View File

@ -1,11 +1,11 @@
FROM debian:bullseye-slim
FROM debian:bullseye-backports
LABEL maintainer="citraemu"
ENV DEBIAN_FRONTEND=noninteractive
ENV CMAKE_VER=3.22.6
RUN apt-get update && apt-get -y full-upgrade
RUN apt-get install -y git p7zip-full libqt5opengl5-dev qtmultimedia5-dev qttools5-dev qttools5-dev-tools python3-pip cmake curl unzip zip
RUN apt-get install -y git p7zip-full libqt5opengl5-dev qtmultimedia5-dev qttools5-dev qttools5-dev-tools libqt6opengl6-dev qt6-multimedia-dev qt6-tools-dev qt6-tools-dev-tools python3-pip cmake curl unzip zip
RUN curl -O -L https://github.com/transifex/cli/releases/latest/download/tx-linux-amd64.tar.gz && tar xf tx-linux-amd64.tar.gz tx && mv tx /usr/bin/tx && rm tx-linux-amd64.tar.gz
# Install CMake from upstream