From 907d39ab84cf2c8474f73eb915b1bf9ff4c73eca Mon Sep 17 00:00:00 2001 From: Matthieu Gautier Date: Tue, 13 Aug 2024 13:36:23 +0200 Subject: [PATCH] Update flatpak build Fix https://github.com/flathub/org.kiwix.desktop/issues/10 Fix https://github.com/kiwix/kiwix-desktop/issues/961 --- kiwixbuild/dependencies/base.py | 4 ++-- kiwixbuild/dependencies/kiwix_desktop.py | 8 ++------ kiwixbuild/flatpak_builder.py | 14 +++++++------- kiwixbuild/versions.py | 4 ++-- 4 files changed, 13 insertions(+), 17 deletions(-) diff --git a/kiwixbuild/dependencies/base.py b/kiwixbuild/dependencies/base.py index 9282ef2..06e56e6 100644 --- a/kiwixbuild/dependencies/base.py +++ b/kiwixbuild/dependencies/base.py @@ -323,8 +323,8 @@ class Builder: module["subdir"] = self.subsource_dir if getattr(self, "flatpack_build_options", None): module["build-options"] = self.flatpack_build_options - if getattr(self, "configure_option", ""): - module["config-opts"] = self.configure_option.split(" ") + if getattr(self, "configure_options", ""): + module["config-opts"] = list(self.configure_options) def get_env(self, *, cross_comp_flags, cross_compilers, cross_path): env = self.buildEnv.get_env( diff --git a/kiwixbuild/dependencies/kiwix_desktop.py b/kiwixbuild/dependencies/kiwix_desktop.py index c72ff59..67ca3f0 100644 --- a/kiwixbuild/dependencies/kiwix_desktop.py +++ b/kiwixbuild/dependencies/kiwix_desktop.py @@ -14,15 +14,11 @@ class KiwixDesktop(Dependency): make_install_targets = ["install"] configure_env = None - flatpack_build_options = {"env": ["QMAKEPATH=/app/lib"]} + flatpack_build_options = {"env": {"QMAKEPATH": "/app/lib"}} @property def configure_options(self): - if self.buildEnv.configInfo.name == "flatpak": - yield "QMAKE_INCDIR+=/app/include/QtWebEngine" - yield "QMAKE_INCDIR+=/app/include/QtWebEngineCore" - yield "QMAKE_INCDIR+=/app/include/QtWebEngineWidgets" - else: + if self.buildEnv.configInfo.name != "flatpak": yield f"PREFIX={self.buildEnv.install_dir}" if self.buildEnv.configInfo.static: yield "CONFIG+=static" diff --git a/kiwixbuild/flatpak_builder.py b/kiwixbuild/flatpak_builder.py index ea0d934..f07c641 100644 --- a/kiwixbuild/flatpak_builder.py +++ b/kiwixbuild/flatpak_builder.py @@ -37,19 +37,18 @@ MANIFEST = { "runtime": "org.kde.Platform", "runtime-version": base_deps_versions["org.kde"], "base": "io.qt.qtwebengine.BaseApp", - "base-version": base_deps_versions[ - "org.kde" - ], # keep BaseApp (qwebengine) in sync with org.kde + "base-version": base_deps_versions["io.qt.qtwebengine"], "sdk": "org.kde.Sdk", "command": "kiwix-desktop", "rename-icon": "kiwix-desktop", "finish-args": [ + "--device=dri", + "--env=QTWEBENGINEPROCESS_PATH=/app/bin/QtWebEngineProcess", "--socket=wayland", - "--socket=x11", + "--socket=fallback-x11", + "--socket=pulseaudio", "--share=network", "--share=ipc", - "--device=dri", - "--socket=pulseaudio", ], "cleanup": [ "/include", @@ -69,6 +68,7 @@ MANIFEST = { "/share/doc", "/share/man", ], + "cleanup-commands": ["/app/cleanup-BaseApp.sh"], } GET_REF_URL_API_TEMPLATE = "https://api.github.com/repos{repo}/git/refs/tags/{ref}" @@ -297,7 +297,7 @@ class FlatpakBuilder: tlc = Dependency.all_deps[tlcName] builderDef = (cfgName, tlcName) builder = get_target_step(builderDef) - print("build {} ({}):".format(builder.name, cfgName[0])) + print("build {} ({}):".format(builder.name, cfgName)) add_target_step(builderDef, builder) builder.build() print("[GENERATE FLATPAK MANIFEST]") diff --git a/kiwixbuild/versions.py b/kiwixbuild/versions.py index 9f9e6f6..0fdc9bd 100644 --- a/kiwixbuild/versions.py +++ b/kiwixbuild/versions.py @@ -58,8 +58,8 @@ base_deps_versions = { "android-ndk": "r21e", "qt": "5.10.1", "qtwebengine": "5.10.1", - "org.kde": "5.15-21.08", - "io.qt.qtwebengine": "5.15-21.08", + "org.kde": "5.15-23.08", + "io.qt.qtwebengine": "5.15-23.08", "zim-testing-suite": "0.6.0", "emsdk": "3.1.41", }