From 7e066da4a19da3a4fb295d2c9a26b511d839f3b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gon=C3=A7alo=20Negrier=20Duarte?= Date: Mon, 19 Feb 2024 19:00:50 +0000 Subject: [PATCH] add xwayland test to python GUI * fix CI test for X11 being deprecated MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Gonçalo Negrier Duarte --- .github/workflows/build.yml | 3 +++ .github/workflows/build_PR.yml | 3 +++ deploy/Dockerfile.arch | 3 ++- deploy/Dockerfile.fedora | 1 + deploy/Dockerfile.suse | 3 ++- deploy/Dockerfile.ubuntu | 3 ++- deploy/dependencies/install_dependencies_arch.sh | 2 +- deploy/dependencies/install_dependencies_fedora.sh | 2 +- deploy/dependencies/install_dependencies_suse.sh | 2 +- deploy/dependencies/install_dependencies_ubuntu.sh | 2 +- deploy/dependencies/install_xwayland-run.sh | 9 +++++++++ deploy/package_testing/Dockerfile.suse | 3 ++- tests/test_python_gui.sh | 3 ++- tests/test_python_gui_installed.sh | 5 +++-- 14 files changed, 33 insertions(+), 11 deletions(-) create mode 100755 deploy/dependencies/install_xwayland-run.sh diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index eba78b5..3c4ed0c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -69,6 +69,9 @@ jobs: - name: Install Development Dependencies run: ./deploy/dependencies/install_development_dependencies_ubuntu.sh shell: bash + - name: Install xwayland-run + run: ./deploy/dependencies/install_xwayland-run.sh + shell: bash - name: Lint with Linux checkpath if: always() run: ./tests/test_kernel_checkpath.sh diff --git a/.github/workflows/build_PR.yml b/.github/workflows/build_PR.yml index 6d3fdb3..d42d3c7 100644 --- a/.github/workflows/build_PR.yml +++ b/.github/workflows/build_PR.yml @@ -58,6 +58,9 @@ jobs: - name: Install Development Dependencies run: ./deploy/dependencies/install_development_dependencies_ubuntu.sh shell: bash + - name: Install xwayland-run + run: ./deploy/dependencies/install_xwayland-run.sh + shell: bash - name: Lint with Linux checkpath if: always() run: ./tests/test_kernel_checkpath.sh diff --git a/deploy/Dockerfile.arch b/deploy/Dockerfile.arch index f817be4..af2a25c 100644 --- a/deploy/Dockerfile.arch +++ b/deploy/Dockerfile.arch @@ -25,6 +25,7 @@ RUN deploy/dependencies/install_dependencies_arch.sh COPY ./deploy/dependencies ./deploy/dependencies RUN deploy/dependencies/install_development_dependencies_arch.sh +RUN deploy/dependencies/install_xwayland-run.sh COPY . /opt/LinuxLegionLaptop @@ -35,4 +36,4 @@ RUN tests/test_python_cli.sh \ RUN deploy/python_install_installer_pkg.sh \ && tests/test_python_cli_installed.sh \ && tests/test_python_gui_installed.sh -#RUN tests/test_python_run_gui_root.sh \ No newline at end of file +#RUN tests/test_python_run_gui_root.sh diff --git a/deploy/Dockerfile.fedora b/deploy/Dockerfile.fedora index b768358..cbc1b6d 100644 --- a/deploy/Dockerfile.fedora +++ b/deploy/Dockerfile.fedora @@ -33,6 +33,7 @@ RUN deploy/dependencies/install_dependencies_fedora.sh COPY ./deploy/dependencies ./deploy/dependencies RUN deploy/dependencies/install_development_dependencies_fedora.sh +RUN deploy/dependencies/install_xwayland-run.sh COPY . /opt/LinuxLegionLaptop diff --git a/deploy/Dockerfile.suse b/deploy/Dockerfile.suse index 9706de9..850dfde 100644 --- a/deploy/Dockerfile.suse +++ b/deploy/Dockerfile.suse @@ -21,6 +21,7 @@ RUN deploy/dependencies/install_dependencies_suse.sh COPY ./deploy/dependencies ./deploy/dependencies RUN deploy/dependencies/install_development_dependencies_suse.sh +RUN deploy/dependencies/install_xwayland-run.sh COPY . /opt/LinuxLegionLaptop @@ -31,4 +32,4 @@ RUN tests/test_python_cli.sh \ RUN deploy/python_install_pip_pkg.sh \ && tests/test_python_cli_installed.sh \ # && tests/test_python_gui_installed.sh -#RUN tests/test_python_run_gui_root.sh \ No newline at end of file +#RUN tests/test_python_run_gui_root.sh diff --git a/deploy/Dockerfile.ubuntu b/deploy/Dockerfile.ubuntu index ec4ca09..5fa116b 100644 --- a/deploy/Dockerfile.ubuntu +++ b/deploy/Dockerfile.ubuntu @@ -25,6 +25,7 @@ RUN deploy/dependencies/install_dependencies_ubuntu.sh COPY ./deploy/dependencies ./deploy/dependencies RUN deploy/dependencies/install_development_dependencies_ubuntu.sh +RUN deploy/dependencies/install_xwayland-run.sh COPY . /opt/LinuxLegionLaptop @@ -35,4 +36,4 @@ RUN tests/test_python_cli.sh \ RUN deploy/python_install_pip_pkg.sh \ && tests/test_python_cli_installed.sh \ && tests/test_python_gui_installed.sh -#RUN tests/test_python_run_gui_root.sh \ No newline at end of file +#RUN tests/test_python_run_gui_root.sh diff --git a/deploy/dependencies/install_dependencies_arch.sh b/deploy/dependencies/install_dependencies_arch.sh index 850d8ab..1890db1 100755 --- a/deploy/dependencies/install_dependencies_arch.sh +++ b/deploy/dependencies/install_dependencies_arch.sh @@ -1,4 +1,4 @@ #!/bin/bash set -ex sudo pacman -S --disable-download-timeout --noconfirm linux-headers base-devel lm_sensors git dmidecode python-pyqt6 python-yaml python-argcomplete polkit python-build python-installer python-wheel python-setuptools -sudo pacman -S --disable-download-timeout --noconfirm dkms openssl mokutil +sudo pacman -S --disable-download-timeout --noconfirm dkms openssl mokutil meson weston xwayland diff --git a/deploy/dependencies/install_dependencies_fedora.sh b/deploy/dependencies/install_dependencies_fedora.sh index 2521e37..1928456 100755 --- a/deploy/dependencies/install_dependencies_fedora.sh +++ b/deploy/dependencies/install_dependencies_fedora.sh @@ -3,4 +3,4 @@ set -ex sudo dnf install -y kernel-headers kernel-devel dmidecode lm_sensors PyQt6 python3-yaml python3-pip python3-argcomplete python3-wheel polkit sudo dnf groupinstall -y "Development Tools" # sudo dnf group install -y "C Development Tools and Libraries" -sudo dnf install -y dkms openssl mokutil +sudo dnf install -y dkms openssl mokutil meson weston xwayland diff --git a/deploy/dependencies/install_dependencies_suse.sh b/deploy/dependencies/install_dependencies_suse.sh index b1869af..c894076 100755 --- a/deploy/dependencies/install_dependencies_suse.sh +++ b/deploy/dependencies/install_dependencies_suse.sh @@ -11,4 +11,4 @@ fi set -e # allow post-script install to fail (107) because it will try to update initramfs which is not possible inside container sudo zypper --non-interactive install python3-argcomplete -sudo zypper --non-interactive install dkms openssl mokutil +sudo zypper --non-interactive install dkms openssl mokutil menos weston xwayland diff --git a/deploy/dependencies/install_dependencies_ubuntu.sh b/deploy/dependencies/install_dependencies_ubuntu.sh index 917d589..a6ff3f3 100755 --- a/deploy/dependencies/install_dependencies_ubuntu.sh +++ b/deploy/dependencies/install_dependencies_ubuntu.sh @@ -2,5 +2,5 @@ set -ex sudo apt-get update sudo apt-get install -y make gcc linux-headers-$(uname -r) build-essential git lm-sensors wget python3-yaml python3-venv python3-pip python3-wheel python3-argcomplete policykit-1 -sudo apt-get install -y dkms openssl mokutil +sudo apt-get install -y dkms openssl mokutil meson weston xwayland sudo pip install PyQt6 diff --git a/deploy/dependencies/install_xwayland-run.sh b/deploy/dependencies/install_xwayland-run.sh new file mode 100755 index 0000000..ba27a24 --- /dev/null +++ b/deploy/dependencies/install_xwayland-run.sh @@ -0,0 +1,9 @@ +#!/bin/bash +cd /tmp +git clone https://gitlab.freedesktop.org/ofourdan/xwayland-run.git +cd xwayland-run +meson setup --prefix=/usr -Dcompositor=weston . build +sudo meson install -C build + +#Fix wlheadless module not found +export PYTHONPATH="${PYTHONPATH}:/usr/local/lib/python3/dist-packages" diff --git a/deploy/package_testing/Dockerfile.suse b/deploy/package_testing/Dockerfile.suse index 9706de9..850dfde 100644 --- a/deploy/package_testing/Dockerfile.suse +++ b/deploy/package_testing/Dockerfile.suse @@ -21,6 +21,7 @@ RUN deploy/dependencies/install_dependencies_suse.sh COPY ./deploy/dependencies ./deploy/dependencies RUN deploy/dependencies/install_development_dependencies_suse.sh +RUN deploy/dependencies/install_xwayland-run.sh COPY . /opt/LinuxLegionLaptop @@ -31,4 +32,4 @@ RUN tests/test_python_cli.sh \ RUN deploy/python_install_pip_pkg.sh \ && tests/test_python_cli_installed.sh \ # && tests/test_python_gui_installed.sh -#RUN tests/test_python_run_gui_root.sh \ No newline at end of file +#RUN tests/test_python_run_gui_root.sh diff --git a/tests/test_python_gui.sh b/tests/test_python_gui.sh index 3037e14..b8d658d 100755 --- a/tests/test_python_gui.sh +++ b/tests/test_python_gui.sh @@ -3,4 +3,5 @@ set -ex DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) # Smoketest GUI -xvfb-run "${DIR}/../python/legion_linux/legion_linux/legion_gui.py" --automaticclose \ No newline at end of file +#xvfb-run "${DIR}/../python/legion_linux/legion_linux/legion_gui.py" --automaticclose +xwayland-run :12 -- legion_gui --use_legion_cli_to_write --automaticclose diff --git a/tests/test_python_gui_installed.sh b/tests/test_python_gui_installed.sh index 60a4ede..d260f94 100755 --- a/tests/test_python_gui_installed.sh +++ b/tests/test_python_gui_installed.sh @@ -1,5 +1,6 @@ #!/bin/bash set -ex # Smoketest GUI -xvfb-run "legion_gui" --automaticclose -echo "Done" \ No newline at end of file +#xvfb-run "legion_gui" --automaticclose +xwayland-run :12 -- legion_gui --use_legion_cli_to_write --automaticclose +echo "Done"