From cad0c54ea0bba52313f5169365f2c969756fdcd6 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Wed, 18 Oct 2023 18:08:36 -0400 Subject: [PATCH] Disable backend components in flatpak builds GOA is a session service, and therefore flatpak apps which use libgoa do not run their own daemon instance, but expect to talk to the service over dbus. As such, the backend/daemon components are unnecessary for flatpak builds, and omitting them saves both space and dependencies. The alternative would be to have a separate -libs subpackage for libgoa, which would be all that is pulled in to flatpaks, but for RPM installs it would create a circular dependency (g-o-a uses symbols in libgoa, and libgoa requires the g-o-a dbus service at runtime). --- gnome-online-accounts.spec | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/gnome-online-accounts.spec b/gnome-online-accounts.spec index 6bed811..c34befc 100644 --- a/gnome-online-accounts.spec +++ b/gnome-online-accounts.spec @@ -6,7 +6,7 @@ Name: gnome-online-accounts Version: 3.48.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Single sign-on framework for GNOME License: LGPL-2.0-or-later @@ -23,25 +23,27 @@ BuildRequires: pkgconfig(gcr-3) BuildRequires: pkgconfig(gio-2.0) >= %{glib2_version} BuildRequires: pkgconfig(glib-2.0) >= %{glib2_version} BuildRequires: pkgconfig(gobject-2.0) >= %{glib2_version} -BuildRequires: pkgconfig(gtk+-3.0) >= %{gtk3_version} BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: gettext >= %{gettext_version} BuildRequires: gtk-doc BuildRequires: krb5-devel BuildRequires: meson +BuildRequires: vala +%if !0%{?flatpak} +BuildRequires: pkgconfig(gtk+-3.0) >= %{gtk3_version} BuildRequires: pkgconfig(webkit2gtk-4.1) >= %{webkit2gtk_version} BuildRequires: pkgconfig(json-glib-1.0) BuildRequires: pkgconfig(libsecret-1) BuildRequires: pkgconfig(libsoup-3.0) >= %{libsoup_version} BuildRequires: pkgconfig(rest-1.0) BuildRequires: pkgconfig(libxml-2.0) -BuildRequires: vala +%endif Requires: glib2%{?_isa} >= %{glib2_version} +%if !0%{?flatpak} Requires: gtk3%{?_isa} >= %{gtk3_version} Requires: libsoup3%{?_isa} >= %{libsoup_version} Requires: webkit2gtk4.1%{?_isa} >= %{webkit2gtk_version} -%if !0%{?flatpak} Requires: gvfs-goa %endif @@ -68,6 +70,9 @@ developing applications that use %{name}. %build %meson \ +%if 0%{?flatpak} + -Dgoabackend=false \ +%else -Dexchange=true \ -Dfedora=true \ -Dgoogle=true \ @@ -78,6 +83,7 @@ developing applications that use %{name}. -Downcloud=true \ -Dwindows_live=true \ -Dman=true \ +%endif -Dgtk_doc=true \ %{nil} @@ -95,6 +101,7 @@ developing applications that use %{name}. %{_libdir}/girepository-1.0/Goa-1.0.typelib %{_libdir}/libgoa-1.0.so.0 %{_libdir}/libgoa-1.0.so.0.0.0 +%if !0%{?flatpak} %{_libdir}/libgoa-backend-1.0.so.1 %{_libdir}/libgoa-backend-1.0.so.1.0.0 %dir %{_libdir}/goa-1.0 @@ -104,25 +111,31 @@ developing applications that use %{name}. %{_prefix}/libexec/goa-identity-service %{_datadir}/dbus-1/services/org.gnome.OnlineAccounts.service %{_datadir}/dbus-1/services/org.gnome.Identity.service -%{_datadir}/icons/hicolor/*/apps/goa-*.svg %{_datadir}/glib-2.0/schemas/org.gnome.online-accounts.gschema.xml %{_mandir}/man8/goa-daemon.8* +%endif +%{_datadir}/icons/hicolor/*/apps/goa-*.svg %files devel %{_includedir}/goa-1.0/ %{_libdir}/libgoa-1.0.so -%{_libdir}/libgoa-backend-1.0.so %dir %{_datadir}/gir-1.0 %{_datadir}/gir-1.0/Goa-1.0.gir %{_libdir}/pkgconfig/goa-1.0.pc +%if !0%{?flatpak} +%{_libdir}/libgoa-backend-1.0.so %{_libdir}/pkgconfig/goa-backend-1.0.pc %dir %{_datadir}/gtk-doc %dir %{_datadir}/gtk-doc/html %{_datadir}/gtk-doc/html/goa/ +%endif %{_libdir}/goa-1.0/include %{_datadir}/vala/ %changelog +* Wed Oct 18 2023 Yaakov Selkowitz - 3.48.0-3 +- Disable backend components in flatpak builds + * Wed Jul 19 2023 Fedora Release Engineering - 3.48.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild