From 05722a9a0783e72bbb359dc7126bd37306ad50a5 Mon Sep 17 00:00:00 2001 From: Markus Volk Date: Fri, 17 May 2024 08:09:32 +0200 Subject: malcontent: add recipe malcontent is an optional dependency for flatpak and gnome-software - Building the malcontent gtk4-ui leads to circular dependency malcontent <-> flatpak Add a separate package for malcontent-ui to avoid this and to make malcontent-control buildable. Signed-off-by: Markus Volk Signed-off-by: Khem Raj --- .../malcontent/malcontent-ui_0.12.0.bb | 48 ++++++++++++++++++++++ meta-oe/recipes-gnome/malcontent/malcontent.inc | 3 ++ .../recipes-gnome/malcontent/malcontent_0.12.0.bb | 44 ++++++++++++++++++++ 3 files changed, 95 insertions(+) create mode 100644 meta-oe/recipes-gnome/malcontent/malcontent-ui_0.12.0.bb create mode 100644 meta-oe/recipes-gnome/malcontent/malcontent.inc create mode 100644 meta-oe/recipes-gnome/malcontent/malcontent_0.12.0.bb diff --git a/meta-oe/recipes-gnome/malcontent/malcontent-ui_0.12.0.bb b/meta-oe/recipes-gnome/malcontent/malcontent-ui_0.12.0.bb new file mode 100644 index 000000000..13bfe7853 --- /dev/null +++ b/meta-oe/recipes-gnome/malcontent/malcontent-ui_0.12.0.bb @@ -0,0 +1,48 @@ +SUMMARY = "User-Interface for malcontent." +HOMEPAGE = "https://gitlab.freedesktop.org/pwithnall/malcontent" +LICENSE = "LGPL-2.1-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +require malcontent.inc + +DEPENDS = " \ + malcontent \ + accountsservice \ + glib-2.0 \ + glib-testing \ + dbus \ + desktop-file-utils-native \ + itstool-native \ + libpam \ + polkit \ + appstream \ + flatpak \ + libadwaita \ + gtk4 \ +" + +GIR_MESON_OPTION = "" + +GTKIC_VERSION = "4" +inherit meson pkgconfig gtk-icon-cache gobject-introspection gettext features_check + +REQUIRED_DISTRO_FEATURES = "pam polkit gobject-introspection" + +EXTRA_OEMESON = "-Dui=enabled" + +do_install() { + install -d ${D}${datadir}/gir-1.0 ${D}${libdir}/girepository-1.0 ${D}${bindir} + install -d ${D}${datadir}/polkit-1/actions ${D}${datadir}/metainfo ${D}${datadir}/applications + install -m 0644 ${B}/libmalcontent-ui/MalcontentUi-1.gir ${D}${datadir}/gir-1.0 + install -m 0644 ${B}/libmalcontent-ui/MalcontentUi-1.typelib ${D}${libdir}/girepository-1.0 + ln -sf libmalcontent-ui-1.so.1 ${D}${libdir}/libmalcontent-ui-1.so + install -m 0644 ${B}/libmalcontent-ui/libmalcontent-ui-1.so.1 ${D}${libdir} + install -m 0644 ${B}/libmalcontent-ui/libmalcontent-ui-1.so.0.12.0 ${D}${libdir} + install -m 0755 ${B}/malcontent-control/malcontent-control ${D}${bindir} + install -m 0644 ${B}/malcontent-control/org.freedesktop.MalcontentControl.policy ${D}${datadir}/polkit-1/actions + install -m 0644 ${B}/malcontent-control/org.freedesktop.MalcontentControl.appdata.xml ${D}${datadir}/metainfo + install -m 0644 ${B}/malcontent-control/org.freedesktop.MalcontentControl.desktop ${D}${datadir}/applications +} + +FILES:${PN} += "${bindir} ${libdir} ${datadir}" + diff --git a/meta-oe/recipes-gnome/malcontent/malcontent.inc b/meta-oe/recipes-gnome/malcontent/malcontent.inc new file mode 100644 index 000000000..0446005a3 --- /dev/null +++ b/meta-oe/recipes-gnome/malcontent/malcontent.inc @@ -0,0 +1,3 @@ +SRC_URI = "git://gitlab.freedesktop.org/pwithnall/malcontent.git;protocol=https;branch=main" +S = "${WORKDIR}/git" +SRCREV = "3ba80995bb25b7aeda7e21d547f9e39ff9a81736" diff --git a/meta-oe/recipes-gnome/malcontent/malcontent_0.12.0.bb b/meta-oe/recipes-gnome/malcontent/malcontent_0.12.0.bb new file mode 100644 index 000000000..c4bc50fa8 --- /dev/null +++ b/meta-oe/recipes-gnome/malcontent/malcontent_0.12.0.bb @@ -0,0 +1,44 @@ +SUMMARY = "malcontent implements support for restricting the type of content." +HOMEPAGE = "https://gitlab.freedesktop.org/pwithnall/malcontent" +LICENSE = "LGPL-2.1-only" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +require malcontent.inc + +DEPENDS = " \ + accountsservice \ + glib-2.0 \ + glib-testing \ + dbus \ + itstool-native \ + libpam \ + polkit \ +" + +GIR_MESON_OPTION = "" + +inherit meson pkgconfig gobject-introspection gettext features_check useradd + +REQUIRED_DISTRO_FEATURES = "pam polkit gobject-introspection" + +PACKAGECONFIG ?= "ui" +PACKAGECONFIG[ui] = ",,,malcontent-ui" + +EXTRA_OEMESON = "-Dui=disabled" + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM:${PN} = "--system --no-create-home --user-group --home-dir ${sysconfdir}/polkit-1 --shell /bin/nologin polkitd" + +do_install:append() { + # Fix up permissions on polkit rules.d to work with rpm4 constraints + chmod 700 ${D}/${datadir}/polkit-1/rules.d + chown polkitd:root ${D}/${datadir}/polkit-1/rules.d +} + +FILES:${PN} += " \ + ${libdir}/security/pam_malcontent.so \ + ${datadir}/accountsservice \ + ${datadir}/help \ + ${datadir}/dbus-1 \ + ${datadir}/polkit-1 \ +" -- cgit v1.2.3-54-g00ecf