From 52c33da0654788ebd1c319ee9c0e5864322cf9c3 Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Tue, 18 Feb 2025 11:02:07 -0500 Subject: [PATCH 01/16] Trying to add a Linux test via GitHub Actions --- .github/workflows/test_linux.yml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/workflows/test_linux.yml diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml new file mode 100644 index 00000000..18fc566e --- /dev/null +++ b/.github/workflows/test_linux.yml @@ -0,0 +1,30 @@ +name: Test Linux + +on: [push, pull_request] + +jobs: + test-linux: + name: Test Linux + runs-on: ubuntu-latest + steps: + - name: "Check out the repo" + uses: actions/checkout@v3 + with: + submodules: true + - uses: actions/setup-python@v4 + with: + python-version: '3.11' + + - name: Install system dependencies + run: | + sudo apt update && sudo apt install -y libgl1 libglx-mesa0 + + - name: Install nimble packages and dev tools + run: | + pip install -e .[dev] + pip list + + - name: Run tests + uses: coactions/setup-xvfb@v1 + with: + run: pytest \ No newline at end of file From ca6c8198f9854b9ccf2a26919268503437809124 Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Tue, 18 Feb 2025 11:06:46 -0500 Subject: [PATCH 02/16] Making sure all test packages are installed --- .github/workflows/test_linux.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 18fc566e..1051ecb3 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -21,7 +21,8 @@ jobs: - name: Install nimble packages and dev tools run: | - pip install -e .[dev] + pip install -e . + pip install .[test] pip list - name: Run tests From f6ad216d38631c0c2cbf29c5c1d318967dd939a2 Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 10:36:08 -0500 Subject: [PATCH 03/16] Make PyQt5 explicit in deps --- .github/workflows/test_linux.yml | 2 +- pyproject.toml | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 1051ecb3..8551c07b 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -19,7 +19,7 @@ jobs: run: | sudo apt update && sudo apt install -y libgl1 libglx-mesa0 - - name: Install nimble packages and dev tools + - name: Install packages run: | pip install -e . pip install .[test] diff --git a/pyproject.toml b/pyproject.toml index a64af0d8..1afe10cf 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,6 +7,7 @@ name = "CQ-editor" version = "0.6" dependencies = [ "cadquery", + "PyQt5", "pyqtgraph", "qtawesome==1.4.0", "path", From 44d95477bbe0a4140ed62fd195a6cb726752a5b6 Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 10:40:09 -0500 Subject: [PATCH 04/16] Trying an older runner to see if it fixes the segfault --- .github/workflows/test_linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 8551c07b..ec57fe2b 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -5,7 +5,7 @@ on: [push, pull_request] jobs: test-linux: name: Test Linux - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: "Check out the repo" uses: actions/checkout@v3 From 084a602ed5f6e07d5f3caaebc0dd7ed98bc52c0a Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 10:43:32 -0500 Subject: [PATCH 05/16] Pinning to the latest version of setup-xvfb --- .github/workflows/test_linux.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index ec57fe2b..6800cdf0 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -5,7 +5,7 @@ on: [push, pull_request] jobs: test-linux: name: Test Linux - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - name: "Check out the repo" uses: actions/checkout@v3 @@ -26,6 +26,6 @@ jobs: pip list - name: Run tests - uses: coactions/setup-xvfb@v1 + uses: coactions/setup-xvfb@v1.0.1 with: run: pytest \ No newline at end of file From 1e5d46a8f3d33b57df8c57d6e1082695022db819 Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 10:51:18 -0500 Subject: [PATCH 06/16] Trying to make sure all OpenGL deps are installed --- .github/workflows/test_linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 6800cdf0..2a78ad17 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -17,7 +17,7 @@ jobs: - name: Install system dependencies run: | - sudo apt update && sudo apt install -y libgl1 libglx-mesa0 + sudo apt update && sudo apt install -y libgl1 libglx-mesa0 libgl1-mesa-dri libglu1-mesa libegl1-mesa mesa-utils libopengl0 - name: Install packages run: | From 6dbceb332fe211f3391185a43ccbb789fd532891 Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 10:54:11 -0500 Subject: [PATCH 07/16] Trying with older version of Ubuntu --- .github/workflows/test_linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 2a78ad17..f62a4e40 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -5,7 +5,7 @@ on: [push, pull_request] jobs: test-linux: name: Test Linux - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: "Check out the repo" uses: actions/checkout@v3 From 146759acc4da3cf5ea3124366523f8c707f9df59 Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 10:56:45 -0500 Subject: [PATCH 08/16] Trying to add environment variable to fix segfault --- .github/workflows/test_linux.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index f62a4e40..8013d768 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -26,6 +26,8 @@ jobs: pip list - name: Run tests + env: + LIBGL_ALWAYS_SOFTWARE: "1" uses: coactions/setup-xvfb@v1.0.1 with: run: pytest \ No newline at end of file From 557befac4c9ee182e660e6fa7e2114f98b26a567 Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 11:05:06 -0500 Subject: [PATCH 09/16] Adding more environment variables --- .github/workflows/test_linux.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 8013d768..3ce24c21 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -28,6 +28,8 @@ jobs: - name: Run tests env: LIBGL_ALWAYS_SOFTWARE: "1" + QT_QPA_PLATFORM: "offscreen" + QT_OPENGL: "software" uses: coactions/setup-xvfb@v1.0.1 with: - run: pytest \ No newline at end of file + run: pytest From 21eb5fcd746c5d3fd4b5aa10ca17461061a7d8fb Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 11:08:44 -0500 Subject: [PATCH 10/16] Trying different environment variable config --- .github/workflows/test_linux.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 3ce24c21..8f4fd668 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -28,8 +28,9 @@ jobs: - name: Run tests env: LIBGL_ALWAYS_SOFTWARE: "1" - QT_QPA_PLATFORM: "offscreen" QT_OPENGL: "software" + QT_QPA_PLATFORM: "minimal" + QT_XCB_GL_INTEGRATION: "none" uses: coactions/setup-xvfb@v1.0.1 with: run: pytest From af4c17e8d63716fe11d31d17a9ef8c7c1c156c9e Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 11:16:07 -0500 Subject: [PATCH 11/16] Trying to fix fonts on headless --- .github/workflows/test_linux.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 8f4fd668..95160759 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -17,7 +17,7 @@ jobs: - name: Install system dependencies run: | - sudo apt update && sudo apt install -y libgl1 libglx-mesa0 libgl1-mesa-dri libglu1-mesa libegl1-mesa mesa-utils libopengl0 + sudo apt update && sudo apt install -y libgl1 libglx-mesa0 libgl1-mesa-dri libglu1-mesa libegl1-mesa mesa-utils libopengl0 fontconfig fonts-dejavu-core - name: Install packages run: | From 40ad20ad1903d96f4463092cb4ddd8c57f03db6e Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 11:21:02 -0500 Subject: [PATCH 12/16] Still trying to fix fonts --- .github/workflows/test_linux.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 95160759..da154e2e 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -18,6 +18,7 @@ jobs: - name: Install system dependencies run: | sudo apt update && sudo apt install -y libgl1 libglx-mesa0 libgl1-mesa-dri libglu1-mesa libegl1-mesa mesa-utils libopengl0 fontconfig fonts-dejavu-core + sudo fc-cache -f - name: Install packages run: | @@ -29,7 +30,7 @@ jobs: env: LIBGL_ALWAYS_SOFTWARE: "1" QT_OPENGL: "software" - QT_QPA_PLATFORM: "minimal" + QT_QPA_PLATFORM: "offscreen" QT_XCB_GL_INTEGRATION: "none" uses: coactions/setup-xvfb@v1.0.1 with: From ce2dcabac849eb9199f661b4281973f60f2c4fe5 Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 11:26:01 -0500 Subject: [PATCH 13/16] Trying to switch to the XCB plugin --- .github/workflows/test_linux.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index da154e2e..6bfec7ed 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -17,7 +17,7 @@ jobs: - name: Install system dependencies run: | - sudo apt update && sudo apt install -y libgl1 libglx-mesa0 libgl1-mesa-dri libglu1-mesa libegl1-mesa mesa-utils libopengl0 fontconfig fonts-dejavu-core + sudo apt update && sudo apt install -y libgl1 libglx-mesa0 libgl1-mesa-dri libglu1-mesa libegl1-mesa mesa-utils libopengl0 fontconfig fonts-dejavu-core libxkbcommon-x11-0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 sudo fc-cache -f - name: Install packages @@ -30,8 +30,7 @@ jobs: env: LIBGL_ALWAYS_SOFTWARE: "1" QT_OPENGL: "software" - QT_QPA_PLATFORM: "offscreen" - QT_XCB_GL_INTEGRATION: "none" + QT_QPA_PLATFORM: "xcb" uses: coactions/setup-xvfb@v1.0.1 with: run: pytest From ddbc46dda11e50237dc5535a3ab4ba43af3d20ce Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 11:28:43 -0500 Subject: [PATCH 14/16] Trying even more environment variables --- .github/workflows/test_linux.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 6bfec7ed..796d22ee 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -29,8 +29,11 @@ jobs: - name: Run tests env: LIBGL_ALWAYS_SOFTWARE: "1" + MESA_LOADER_DRIVER_OVERRIDE: "swrast" + GALLIUM_DRIVER: "llvmpipe" QT_OPENGL: "software" QT_QPA_PLATFORM: "xcb" + QT_XCB_GL_INTEGRATION: "none" uses: coactions/setup-xvfb@v1.0.1 with: run: pytest From a69b9fe275ee32e1f17ba3267c3aafa90ee18545 Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 11:33:50 -0500 Subject: [PATCH 15/16] Different configuration --- .github/workflows/test_linux.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test_linux.yml b/.github/workflows/test_linux.yml index 796d22ee..c8b904cc 100644 --- a/.github/workflows/test_linux.yml +++ b/.github/workflows/test_linux.yml @@ -17,7 +17,14 @@ jobs: - name: Install system dependencies run: | - sudo apt update && sudo apt install -y libgl1 libglx-mesa0 libgl1-mesa-dri libglu1-mesa libegl1-mesa mesa-utils libopengl0 fontconfig fonts-dejavu-core libxkbcommon-x11-0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 + sudo apt update && sudo apt install -y \ + xvfb xauth \ + libgl1 libglx-mesa0 libgl1-mesa-dri libglu1-mesa libegl1-mesa mesa-utils libopengl0 \ + libx11-6 libx11-xcb1 libxext6 libxrender1 libsm6 libice6 libxxf86vm1 libxdamage1 libxfixes3 \ + libxcb-glx0 libxcb-dri2-0 libxcb-dri3-0 libxcb-present0 libxcb-shape0 libxcb-shm0 libxcb-sync1 \ + libxcb-xfixes0 libxkbcommon-x11-0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 \ + libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 \ + fontconfig fonts-dejavu-core sudo fc-cache -f - name: Install packages @@ -31,9 +38,9 @@ jobs: LIBGL_ALWAYS_SOFTWARE: "1" MESA_LOADER_DRIVER_OVERRIDE: "swrast" GALLIUM_DRIVER: "llvmpipe" + LIBGL_DRIVERS_PATH: "/usr/lib/x86_64-linux-gnu/dri" QT_OPENGL: "software" QT_QPA_PLATFORM: "xcb" - QT_XCB_GL_INTEGRATION: "none" uses: coactions/setup-xvfb@v1.0.1 with: run: pytest From 11844d969bac23899ff1c130d66471692341632a Mon Sep 17 00:00:00 2001 From: Jeremy Wright Date: Fri, 16 Jan 2026 11:52:41 -0500 Subject: [PATCH 16/16] Trying to suppress the ipython banner --- cq_editor/widgets/console.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cq_editor/widgets/console.py b/cq_editor/widgets/console.py index f28cfbfe..95bf7dcb 100644 --- a/cq_editor/widgets/console.py +++ b/cq_editor/widgets/console.py @@ -49,6 +49,8 @@ def __init__(self, customBanner=None, namespace=dict(), *args, **kwargs): self.kernel_manager = kernel_manager = QtInProcessKernelManager() kernel_manager.start_kernel(show_banner=False) + kernel_manager.kernel.shell.display_banner = False + kernel_manager.kernel.shell.banner1 = "" kernel_manager.kernel.gui = "qt" kernel_manager.kernel.shell.banner1 = ""