public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Yaakov Selkowitz <yselkowi@redhat.com>
To: git-commits@fedoraproject.org
Subject: [rpms/gnome-shell] rawhide: Build gnome-extensions-app as a subpackage
Date: Tue, 23 Jun 2026 16:21:26 GMT	[thread overview]
Message-ID: <178223168659.1.11708457763327228088.rpms-gnome-shell-295a2e994994@fedoraproject.org> (raw)

            A new commit has been pushed.

            Repo   : rpms/gnome-shell
            Branch : rawhide
            Commit : 295a2e9949941e21caf31a007c2aae56aec48a77
            Author : Yaakov Selkowitz <yselkowi@redhat.com>
            Date   : 2026-06-15T10:05:27-04:00
            Stats  : +48/-2 in 1 file(s)
            URL    : https://src.fedoraproject.org/rpms/gnome-shell/c/295a2e9949941e21caf31a007c2aae56aec48a77?branch=rawhide

            Log:
            Build gnome-extensions-app as a subpackage

While extensions-app can be built independently for the benefit of
flatpaks, having to maintain two different source packages for the same
sources is bothersome, and extensions-app updates are sometimes forgotten.
This allows building everything once, with some shuffling of subpackages to
handle the data and library used by both the shell and app.

It is possible to build the entire gnome-shell in /app, the only issue is
that the systemd unit files are assumed by the sources to go into the same
prefix as the rest, where our systemd directory macros are fixed in /usr.
(The alternative would be to make the directory configurable in meson, and
pass %_userunitdir during the build.)

---
diff --git a/gnome-shell.spec b/gnome-shell.spec
index 2782803..652c662 100644
--- a/gnome-shell.spec
+++ b/gnome-shell.spec
@@ -81,6 +81,7 @@ Conflicts: %{name} < 48~rc-5
 Recommends:     gnome-bluetooth%{?_isa} >= %{gnome_bluetooth_version}
 %endif
 Requires:       %{name}-common = %{version}-%{release}
+Requires:       %{name}-libs = %{version}-%{release}
 Requires:       gcr%{?_isa}
 Requires:       gjs%{?_isa} >= %{gjs_version}
 Requires:       gtk4%{?_isa} >= %{gtk4_version}
@@ -177,6 +178,26 @@ BuildArch: noarch
 %description common
 %{summary}
 
+%package libs
+Summary: Common libraries used by %{name} components
+Conflicts: %{name} < 50.2-3
+
+%description libs
+%{summary}
+
+%package -n gnome-extensions-app
+Summary: Manage GNOME Shell extensions
+Requires:       gjs
+Requires:       libadwaita >= %{adwaita_version}
+Requires:       %{name}-common = %{version}-%{release}
+Requires:       %{name}-libs = %{version}-%{release}
+BuildArch: noarch
+
+%description -n gnome-extensions-app
+GNOME Extensions is an application for configuring and removing
+GNOME Shell extensions.
+
+
 %prep
 # check for human errors
 if [ `echo "%{version}" | grep -cE "\.alpha|\.beta|\.rc"` = "1" ]; then echo "Error: Use tilde in Version field in front of alpha/beta/rc; checked '%{version}'" 1>&2; exit 1; fi
@@ -185,12 +206,15 @@ if [ `echo "%{version}" | grep -cE "\.alpha|\.beta|\.rc"` = "1" ]; then echo "Er
 
 %build
 %meson \
-  -Dextensions_app=false \
+  -Dextensions_app=true \
 %if %{portal_helper}
   -Dportal_helper=true \
 %else
   -Dportal_helper=false \
 %endif
+%if 0%{?flatpak}
+  -Dsystemd=false \
+%endif
   %{nil}
 %meson_build
 
@@ -224,6 +248,7 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Shell.Porta
 %{_datadir}/gnome-control-center/keybindings/50-gnome-shell-screenshots.xml
 %{_datadir}/gnome-control-center/keybindings/50-gnome-shell-system.xml
 %{_datadir}/gnome-shell/
+%exclude %{_datadir}/gnome-shell/org.gnome.Extensions*
 %{_datadir}/dbus-1/services/org.gnome.ScreenSaver.service
 %{_datadir}/dbus-1/services/org.gnome.Shell.CalendarServer.service
 %{_datadir}/dbus-1/services/org.gnome.Shell.Extensions.service
@@ -243,10 +268,14 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Shell.Porta
 %{_datadir}/desktop-directories/X-GNOME-Shell-Utilities.directory
 %{_datadir}/icons/hicolor/scalable/apps/org.gnome.Shell.Extensions.svg
 %{_datadir}/icons/hicolor/symbolic/apps/org.gnome.Shell.Extensions-symbolic.svg
+%if ! 0%{?flatpak}
 %{_userunitdir}/org.gnome.Shell-disable-extensions.service
 #{_userunitdir}/org.gnome.Shell.target
 %{_userunitdir}/org.gnome.Shell@.service
+%endif
 %{_libdir}/gnome-shell/
+%exclude %{_libdir}/gnome-shell/libshew-0.so
+%exclude %{_libdir}/gnome-shell/girepository-1.0/Shew-0.typelib
 %{_libexecdir}/gnome-shell-calendar-server
 %{_libexecdir}/gnome-shell-perf-helper
 %{_libexecdir}/gnome-shell-hotplug-sniffer
@@ -261,8 +290,25 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Shell.Porta
 %{_libexecdir}/gnome-shell-portal-helper
 %endif
 
-%files common
+%files common -f %{name}.lang
 %{_datadir}/glib-2.0/schemas/*.xml
+%dir %{_datadir}/gnome-shell
+
+%files libs
+%{_libdir}/gnome-shell/libshew-0.so
+%{_libdir}/gnome-shell/girepository-1.0/Shew-0.typelib
+
+%files -n gnome-extensions-app
+%license COPYING
+%{_bindir}/gnome-extensions-app
+%{_datadir}/applications/org.gnome.Extensions.desktop
+%{_datadir}/dbus-1/services/org.gnome.Extensions.service
+%{_datadir}/glib-2.0/schemas/org.gnome.Extensions.gschema.xml
+%{_datadir}/metainfo/org.gnome.Extensions.metainfo.xml
+%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Extensions.svg
+%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Extensions.Devel.svg
+%{_datadir}/icons/hicolor/symbolic/apps/org.gnome.Extensions-symbolic.svg
+%{_datadir}/gnome-shell/org.gnome.Extensions*
 
 %changelog
 %autochangelog

                 reply	other threads:[~2026-06-23 16:21 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=178223168659.1.11708457763327228088.rpms-gnome-shell-295a2e994994@fedoraproject.org \
    --to=yselkowi@redhat.com \
    --cc=git-commits@fedoraproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox