Add Qt 6 to Linux build images. (#42)
* Add Qt 6 to Linux build images. * Update dependent CI actions.
This commit is contained in:
parent
d6e4e7ff16
commit
a48e53c6d1
8
.github/workflows/ci.yml
vendored
8
.github/workflows/ci.yml
vendored
@ -13,16 +13,16 @@ jobs:
|
|||||||
image: ["linux-appimage", "linux-clang-format", "linux-flatpak", "linux-fresh", "linux-frozen", "linux-mingw", "linux-transifex"]
|
image: ["linux-appimage", "linux-clang-format", "linux-flatpak", "linux-fresh", "linux-frozen", "linux-mingw", "linux-transifex"]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: docker/setup-buildx-action@v1
|
- uses: docker/setup-buildx-action@v2
|
||||||
name: Setup Docker BuildX system
|
name: Setup Docker BuildX system
|
||||||
- name: Login to DockerHub
|
- 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')
|
if: (github.ref == 'refs/heads/master') && (github.repository == 'citra-emu/build-environments')
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||||
- uses: docker/build-push-action@v2
|
- uses: docker/build-push-action@v4
|
||||||
name: Build image
|
name: Build image
|
||||||
with:
|
with:
|
||||||
push: ${{ (github.ref == 'refs/heads/master') && (github.repository == 'citra-emu/build-environments') }}
|
push: ${{ (github.ref == 'refs/heads/master') && (github.repository == 'citra-emu/build-environments') }}
|
||||||
|
@ -35,13 +35,19 @@ RUN apt-get install -y \
|
|||||||
qt5-style-plugins \
|
qt5-style-plugins \
|
||||||
file \
|
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 main contrib non-free' && \
|
||||||
apt-add-repository 'deb http://deb.debian.org/debian bullseye-backports 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 update -y && \
|
||||||
apt-get install -y \
|
apt-get install -y \
|
||||||
libfdk-aac-dev \
|
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
|
# 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/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
|
RUN wget https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage
|
||||||
|
@ -4,4 +4,4 @@ ENV DEBIAN_FRONTEND=noninteractive
|
|||||||
RUN apt-get update && apt-get -y full-upgrade
|
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 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 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
|
||||||
|
@ -16,6 +16,12 @@ RUN apt-get install -y \
|
|||||||
qtmultimedia5-dev \
|
qtmultimedia5-dev \
|
||||||
qttools5-dev \
|
qttools5-dev \
|
||||||
qttools5-dev-tools \
|
qttools5-dev-tools \
|
||||||
|
qt6-base-dev \
|
||||||
|
qt6-base-private-dev \
|
||||||
|
libqt6opengl6-dev \
|
||||||
|
qt6-multimedia-dev \
|
||||||
|
qt6-tools-dev \
|
||||||
|
qt6-tools-dev-tools \
|
||||||
libavcodec-dev \
|
libavcodec-dev \
|
||||||
libavfilter-dev \
|
libavfilter-dev \
|
||||||
libavformat-dev \
|
libavformat-dev \
|
||||||
|
@ -28,6 +28,12 @@ RUN cd /tmp/pkgs && python3 install_package.py \
|
|||||||
qt5-qmltooling-plugins 5.15.3+dfsg-1 jammy \
|
qt5-qmltooling-plugins 5.15.3+dfsg-1 jammy \
|
||||||
qtdeclarative5-dev 5.15.3+dfsg-1 jammy \
|
qtdeclarative5-dev 5.15.3+dfsg-1 jammy \
|
||||||
qtmultimedia5-dev 5.15.3-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 \
|
libicu70 70.1-2 jammy \
|
||||||
cmake 3.22.1-1ubuntu1 jammy \
|
cmake 3.22.1-1ubuntu1 jammy \
|
||||||
libavcodec-dev 7:4.4.2-0ubuntu0.22.04.1 jammy \
|
libavcodec-dev 7:4.4.2-0ubuntu0.22.04.1 jammy \
|
||||||
|
@ -40,6 +40,8 @@ def get_package(pkg, distro):
|
|||||||
url = get_url(pkg, distro)
|
url = get_url(pkg, distro)
|
||||||
subprocess.check_call(['wget', '--quiet', url[0], '-O', url[1]])
|
subprocess.check_call(['wget', '--quiet', url[0], '-O', url[1]])
|
||||||
for dep in list_dependencies(url[1]):
|
for dep in list_dependencies(url[1]):
|
||||||
|
# qt6-base-abi is a virtual package, which breaks the script.
|
||||||
|
if dep[0] != 'qt6-base-abi':
|
||||||
get_package(dep, distro)
|
get_package(dep, distro)
|
||||||
processed_packages.append(pkg)
|
processed_packages.append(pkg)
|
||||||
deb_file_list.append('./' + url[1])
|
deb_file_list.append('./' + url[1])
|
||||||
|
@ -32,6 +32,9 @@ RUN useradd -m -u 1027 -s /bin/bash citra && mkdir -p /tmp/pkgs && \
|
|||||||
mingw-w64-qt5-multimedia \
|
mingw-w64-qt5-multimedia \
|
||||||
mingw-w64-qt5-tools \
|
mingw-w64-qt5-tools \
|
||||||
mingw-w64-qt5-winextras \
|
mingw-w64-qt5-winextras \
|
||||||
|
mingw-w64-qt6-base \
|
||||||
|
mingw-w64-qt6-multimedia \
|
||||||
|
mingw-w64-qt6-tools \
|
||||||
mingw-w64-tools \
|
mingw-w64-tools \
|
||||||
mingw-w64-sdl2 \
|
mingw-w64-sdl2 \
|
||||||
mingw-w64-winpthreads \
|
mingw-w64-winpthreads \
|
||||||
|
@ -1,11 +1,11 @@
|
|||||||
FROM debian:bullseye-slim
|
FROM debian:bullseye-backports
|
||||||
LABEL maintainer="citraemu"
|
LABEL maintainer="citraemu"
|
||||||
|
|
||||||
ENV DEBIAN_FRONTEND=noninteractive
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
ENV CMAKE_VER=3.22.6
|
ENV CMAKE_VER=3.22.6
|
||||||
|
|
||||||
RUN apt-get update && apt-get -y full-upgrade
|
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
|
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
|
# Install CMake from upstream
|
||||||
|
Loading…
x
Reference in New Issue
Block a user