From d3629472d68f006c819aeb4c2d1286a99495b35a Mon Sep 17 00:00:00 2001 From: Furgo <148809153+furgo16@users.noreply.github.com> Date: Tue, 13 Jan 2026 06:02:40 +0100 Subject: [PATCH 1/3] CI: upgrade Ubuntu native build to 24.04 --- .github/workflows/sub_buildUbuntu.yml | 9 ++++---- package/ubuntu/install-apt-packages.sh | 29 +++++++------------------- 2 files changed, 12 insertions(+), 26 deletions(-) diff --git a/.github/workflows/sub_buildUbuntu.yml b/.github/workflows/sub_buildUbuntu.yml index 586c10efc9..4350270aad 100644 --- a/.github/workflows/sub_buildUbuntu.yml +++ b/.github/workflows/sub_buildUbuntu.yml @@ -22,9 +22,9 @@ # *************************************************************************** # This is a build and test workflow for CI of FreeCAD. -# This workflow aims at building and testing FreeCAD on Ubuntu 22.04 using GCC. +# This workflow aims at building and testing FreeCAD on Ubuntu 24.04 using GCC. -name: Build Ubuntu 22.04 +name: Build Ubuntu 24.04 on: workflow_call: @@ -47,7 +47,7 @@ on: jobs: Build: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 continue-on-error: ${{ inputs.allowedToFail }} env: CCACHE_COMPILERCHECK: "%compiler% -dumpfullversion -dumpversion" # default:mtime @@ -94,7 +94,8 @@ jobs: sudo apt-get update -y -qq sudo apt-get install -y -qq python3-pip python3 -m pip install --upgrade pip - python3 -m pip install ifcopenshell==0.8.2 + python3 -m pip install ifcopenshell==0.8.2 --break-system-packages + python3 -m pip install pyside6==6.4.2 --break-system-packages - name: Make needed directories, files and initializations id: Init diff --git a/package/ubuntu/install-apt-packages.sh b/package/ubuntu/install-apt-packages.sh index 9122e692eb..a9e9bc9abb 100755 --- a/package/ubuntu/install-apt-packages.sh +++ b/package/ubuntu/install-apt-packages.sh @@ -4,12 +4,6 @@ set -euo pipefail # Update package lists quietly sudo apt-get update -qq -if apt-cache show libvtk9-dev >/dev/null 2>&1; then - vtk_dev="libvtk9-dev" -else - vtk_dev="libvtk7-dev" -fi - packages=( ccache cmake @@ -35,13 +29,10 @@ packages=( libopencv-dev libproj-dev libpcl-dev - libpyside2-dev - libqt5opengl5-dev - libqt5svg5-dev - libqt5x11extras5-dev - libshiboken2-dev + libqt6opengl6-dev + libqt6svg6-dev libspnav-dev - ${vtk_dev} + libvtk9-dev libx11-dev libxerces-c-dev libyaml-cpp-dev @@ -50,8 +41,6 @@ packages=( netgen-headers ninja-build occt-draw - pyqt5-dev-tools - pyside2-tools python3-dev python3-defusedxml python3-git @@ -62,14 +51,10 @@ packages=( python3-pivy python3-ply python3-pybind11 - python3-pyside2.qtcore - python3-pyside2.qtgui - python3-pyside2.qtnetwork - python3-pyside2.qtsvg - python3-pyside2.qtwidgets - qtbase5-dev - qttools5-dev - shiboken2 + qt6-base-dev + qt6-l10n-tools + qt6-tools-dev + qt6-tools-dev-tools swig xvfb ) From b7a4df9bf2a2d389f9298a602b927e1d380d2a92 Mon Sep 17 00:00:00 2001 From: Furgo <148809153+furgo16@users.noreply.github.com> Date: Tue, 13 Jan 2026 06:03:18 +0100 Subject: [PATCH 2/3] CI: reenable Ubuntu native build --- .github/workflows/CI_master.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/CI_master.yml b/.github/workflows/CI_master.yml index dccd743ae2..2d8c6dbfb0 100644 --- a/.github/workflows/CI_master.yml +++ b/.github/workflows/CI_master.yml @@ -52,12 +52,12 @@ jobs: with: artifactBasename: Pixi-${{ github.run_id }} -# Ubuntu: -# needs: [Prepare] -# if: "!startsWith(github.head_ref, 'refs/heads/backport-')" -# uses: ./.github/workflows/sub_buildUbuntu.yml -# with: -# artifactBasename: Ubuntu-${{ github.run_id }} + Ubuntu: + needs: [Prepare] + if: "!startsWith(github.head_ref, 'refs/heads/backport-')" + uses: ./.github/workflows/sub_buildUbuntu.yml + with: + artifactBasename: Ubuntu-${{ github.run_id }} Windows: needs: [Prepare] @@ -83,6 +83,7 @@ jobs: needs: [ Prepare, Pixi, + Ubuntu, Windows, Lint ] From 944188790dfd4dc2b41b7979233756d261a0ca69 Mon Sep 17 00:00:00 2001 From: Furgo <148809153+furgo16@users.noreply.github.com> Date: Tue, 13 Jan 2026 10:16:03 +0100 Subject: [PATCH 3/3] CI: abandon PySide6 pip approach, try KDE Neon repos --- .github/workflows/sub_buildUbuntu.yml | 1 - package/ubuntu/install-apt-packages.sh | 12 ++++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/.github/workflows/sub_buildUbuntu.yml b/.github/workflows/sub_buildUbuntu.yml index 4350270aad..a171ab8dd9 100644 --- a/.github/workflows/sub_buildUbuntu.yml +++ b/.github/workflows/sub_buildUbuntu.yml @@ -95,7 +95,6 @@ jobs: sudo apt-get install -y -qq python3-pip python3 -m pip install --upgrade pip python3 -m pip install ifcopenshell==0.8.2 --break-system-packages - python3 -m pip install pyside6==6.4.2 --break-system-packages - name: Make needed directories, files and initializations id: Init diff --git a/package/ubuntu/install-apt-packages.sh b/package/ubuntu/install-apt-packages.sh index a9e9bc9abb..9b6c044855 100755 --- a/package/ubuntu/install-apt-packages.sh +++ b/package/ubuntu/install-apt-packages.sh @@ -1,6 +1,11 @@ #!/bin/bash set -euo pipefail +# Add the KDE Neon repository for up-to-date and matching Qt6 and PySide packages +# Ubuntu 24.04 does not have PySide6 packages available +sudo wget -qO- http://archive.neon.kde.org/public.key | sudo gpg --dearmor -o /usr/share/keyrings/neon-keyring.gpg +echo "deb [signed-by=/usr/share/keyrings/neon-keyring.gpg] http://archive.neon.kde.org/user noble main" | sudo tee /etc/apt/sources.list.d/neon-qt.list + # Update package lists quietly sudo apt-get update -qq @@ -29,6 +34,7 @@ packages=( libopencv-dev libproj-dev libpcl-dev + libpyside6-dev libqt6opengl6-dev libqt6svg6-dev libspnav-dev @@ -41,6 +47,7 @@ packages=( netgen-headers ninja-build occt-draw + pyside6-tools python3-dev python3-defusedxml python3-git @@ -51,6 +58,11 @@ packages=( python3-pivy python3-ply python3-pybind11 + python3-pyside6.qtcore + python3-pyside6.qtgui + python3-pyside6.qtnetwork + python3-pyside6.qtsvg + python3-pyside6.qtwidgets qt6-base-dev qt6-l10n-tools qt6-tools-dev