gnome-shell/gnome-shell.spec

247 lines
9.6 KiB
RPMSpec
Raw Normal View History

2021-03-16 15:55:19 +00:00
%global tarball_version %%(echo %{version} | tr '~' '.')
2024-01-07 10:35:29 +00:00
%global major_version %%(cut -d "." -f 1 <<<%{tarball_version})
2021-03-16 15:55:19 +00:00
2009-08-13 00:07:57 +00:00
Name: gnome-shell
2024-01-07 10:35:29 +00:00
Version: 46~alpha
2023-09-06 13:52:42 +00:00
Release: %autorelease
2009-08-13 00:07:57 +00:00
Summary: Window management and application launching for GNOME
2023-11-27 08:00:23 +00:00
License: GPL-2.0-or-later
2016-10-07 12:33:37 +00:00
URL: https://wiki.gnome.org/Projects/GnomeShell
2024-01-07 10:35:29 +00:00
Source0: https://download.gnome.org/sources/gnome-shell/%{major_version}/%{name}-%{tarball_version}.tar.xz
# Replace Epiphany with Firefox in the default favourite apps list
Patch: gnome-shell-favourite-apps-firefox.patch
# No portal helper if WebKitGTK is not installed
Patch: optional-portal-helper.patch
2021-05-13 15:49:09 +00:00
# Some users might have a broken PAM config, so we really need this
# downstream patch to stop trying on configuration errors.
Patch: 0001-gdm-Work-around-failing-fingerprint-auth.patch
Patch: 0001-status-keyboard-Add-a-catch-around-reload-call.patch
Patch: 0002-status-keyboard-Load-keyboard-from-system-settings-i.patch
Patch: 0003-status-keyboard-Use-gnome-desktop-API-for-getting-de.patch
%define eds_version 3.45.1
%define gnome_desktop_version 44.0-7
%define glib2_version 2.56.0
%define gobject_introspection_version 1.49.1
2022-08-11 08:29:37 +00:00
%define gjs_version 1.73.1
2021-01-15 00:43:33 +00:00
%define gtk4_version 4.0.0
2022-02-14 23:09:21 +00:00
%define adwaita_version 1.0.0
2024-01-07 10:35:29 +00:00
%define mutter_version 46~alpha
%define polkit_version 0.100
%define gsettings_desktop_schemas_version 42~beta
2018-02-21 22:39:29 +00:00
%define ibus_version 1.5.2
2022-09-04 14:26:25 +00:00
%define gnome_bluetooth_version 1:42.3
%define gstreamer_version 1.4.5
2020-09-02 02:01:18 +00:00
%define pipewire_version 0.3.0
%define gnome_settings_daemon_version 3.37.1
2019-08-26 22:05:04 +00:00
BuildRequires: bash-completion
2019-03-25 11:12:54 +00:00
BuildRequires: gcc
BuildRequires: meson
BuildRequires: git
BuildRequires: pkgconfig(ibus-1.0) >= %{ibus_version}
2009-08-13 00:07:57 +00:00
BuildRequires: desktop-file-utils
BuildRequires: pkgconfig(libedataserver-1.2) >= %{eds_version}
BuildRequires: pkgconfig(gcr-4)
BuildRequires: pkgconfig(gjs-1.0) >= %{gjs_version}
BuildRequires: pkgconfig(gio-2.0) >= %{glib2_version}
BuildRequires: pkgconfig(gnome-autoar-0)
BuildRequires: pkgconfig(gnome-desktop-4) >= %{gnome_desktop_version}
BuildRequires: pkgconfig(gobject-introspection-1.0) >= %{gobject_introspection_version}
BuildRequires: mesa-libGL-devel
2019-12-12 13:32:46 +00:00
BuildRequires: mesa-libEGL-devel
BuildRequires: pkgconfig(libnm)
BuildRequires: pkgconfig(polkit-agent-1) >= %{polkit_version}
BuildRequires: pkgconfig(libstartup-notification-1.0)
BuildRequires: pkgconfig(libsystemd)
2009-08-13 00:07:57 +00:00
# for screencast recorder functionality
BuildRequires: pkgconfig(gstreamer-base-1.0) >= %{gstreamer_version}
BuildRequires: pkgconfig(libpipewire-0.3) >= %{pipewire_version}
BuildRequires: pkgconfig(gtk4) >= %{gtk4_version}
2016-08-19 20:53:38 +00:00
BuildRequires: gettext >= 0.19.6
BuildRequires: python3
2011-08-31 21:16:08 +00:00
2011-03-24 01:56:43 +00:00
# for barriers
BuildRequires: libXfixes-devel >= 5.0
2009-08-13 00:07:57 +00:00
# used in unused BigThemeImage
BuildRequires: librsvg2-devel
BuildRequires: mutter-devel >= %{mutter_version}
BuildRequires: pkgconfig(libpulse)
2012-12-10 20:34:40 +00:00
%ifnarch s390 s390x ppc ppc64 ppc64p7
BuildRequires: gnome-bluetooth-libs-devel >= %{gnome_bluetooth_version}
2011-04-28 14:43:47 +00:00
%endif
# Bootstrap requirements
BuildRequires: gtk-doc
%ifnarch s390 s390x
Recommends: gnome-bluetooth%{?_isa} >= %{gnome_bluetooth_version}
%endif
2013-06-02 16:47:23 +00:00
Requires: gnome-desktop3%{?_isa} >= %{gnome_desktop_version}
2018-08-10 17:17:32 +00:00
%if 0%{?rhel} != 7
# Disabled on RHEL 7 to allow logging into KDE session by default
Recommends: gnome-session-xsession
%endif
2022-09-02 16:01:19 +00:00
Requires: gcr%{?_isa}
Requires: gobject-introspection%{?_isa} >= %{gobject_introspection_version}
Requires: gjs%{?_isa} >= %{gjs_version}
2021-01-15 00:43:33 +00:00
Requires: gtk4%{?_isa} >= %{gtk4_version}
2022-02-14 23:09:21 +00:00
Requires: libadwaita%{_isa} >= %{adwaita_version}
Requires: libnma-gtk4%{?_isa}
2009-08-13 00:07:57 +00:00
# needed for loading SVG's via gdk-pixbuf
Requires: librsvg2%{?_isa}
Requires: mutter%{?_isa} >= %{mutter_version}
Requires: upower%{?_isa}
Requires: polkit%{?_isa} >= %{polkit_version}
2023-03-06 18:03:38 +00:00
Requires: gnome-desktop4%{?_isa} >= %{gnome_desktop_version}
Requires: glib2%{?_isa} >= %{glib2_version}
Requires: gsettings-desktop-schemas%{?_isa} >= %{gsettings_desktop_schemas_version}
Requires: gnome-settings-daemon%{?_isa} >= %{gnome_settings_daemon_version}
Requires: gstreamer1%{?_isa} >= %{gstreamer_version}
# needed for screen recorder
Requires: gstreamer1-plugins-good%{?_isa}
Requires: pipewire-gstreamer%{?_isa}
Requires: xdg-user-dirs-gtk
2011-07-27 01:49:55 +00:00
# needed for schemas
Requires: at-spi2-atk%{?_isa}
2011-09-07 10:51:55 +00:00
# needed for on-screen keyboard
2018-02-21 22:39:29 +00:00
Requires: ibus%{?_isa} >= %{ibus_version}
# needed for "show keyboard layout"
2023-08-08 11:35:17 +00:00
Requires: tecla
2012-02-10 04:56:59 +00:00
# needed for the user menu
Requires: accountsservice-libs%{?_isa}
Requires: gdm-libs%{?_isa}
# needed for settings items in menus
Requires: gnome-control-center
2014-11-27 15:34:14 +00:00
# needed by some utilities
Requires: python3%{_isa}
# needed for the dual-GPU launch menu
Requires: switcheroo-control
# needed for clocks/weather integration
Requires: geoclue2-libs%{?_isa}
2022-01-14 21:11:30 +00:00
Requires: libgweather4%{?_isa}
# for gnome-extensions CLI tool
Requires: gettext
# needed for thunderbolt support
Recommends: bolt%{?_isa}
# Needed for launching flatpak apps etc
# 1.8.0 is needed for source type support in the screencast portal.
Requires: xdg-desktop-portal-gtk >= 1.8.0
Requires: xdg-desktop-portal-gnome
# needed by the welcome dialog
Recommends: gnome-tour
%if !0%{?rhel}
# needed for captive portal helper
Recommends: webkitgtk6.0%{?_isa}
%endif
2009-08-13 00:07:57 +00:00
2024-01-18 14:26:17 +00:00
# https://github.com/containers/composefs/pull/229#issuecomment-1838735764
%if 0%{?rhel} >= 10
ExcludeArch: %{ix86}
%endif
Provides: desktop-notification-daemon = %{version}-%{release}
Provides: PolicyKit-authentication-agent = %{version}-%{release}
2021-06-11 18:55:10 +00:00
Provides: bundled(gvc)
Provides: bundled(libcroco) = 0.6.13
%if 0%{?rhel}
# In Fedora, fedora-obsolete-packages obsoletes caribou
Obsoletes: caribou < 0.4.21-10
Obsoletes: caribou-antler < 0.4.21-10
Obsoletes: caribou-devel < 0.4.21-10
Obsoletes: caribou-gtk2-module < 0.4.21-10
Obsoletes: caribou-gtk3-module < 0.4.21-10
Obsoletes: python-caribou < 0.4.21-10
Obsoletes: python2-caribou < 0.4.21-10
Obsoletes: python3-caribou < 0.4.21-10
%endif
# https://bugzilla.redhat.com/show_bug.cgi?id=1740897
Conflicts: gnome-shell-extension-background-logo < 3.34.0
2009-08-13 00:07:57 +00:00
%description
GNOME Shell provides core user interface functions for the GNOME 3 desktop,
like switching to windows and launching applications. GNOME Shell takes
advantage of the capabilities of modern graphics hardware and introduces
innovative user interface concepts to provide a visually attractive and
easy to use experience.
%prep
2021-03-16 15:55:19 +00:00
%autosetup -S git -n %{name}-%{tarball_version}
2012-01-20 03:00:58 +00:00
2009-08-13 00:07:57 +00:00
%build
2020-03-30 22:46:16 +00:00
%meson -Dextensions_app=false
%meson_build
2009-08-13 00:07:57 +00:00
%install
%meson_install
2009-08-13 00:07:57 +00:00
# Create empty directories where other packages can drop extensions
mkdir -p %{buildroot}%{_datadir}/gnome-shell/extensions
mkdir -p %{buildroot}%{_datadir}/gnome-shell/search-providers
%find_lang %{name}
%check
2015-11-10 18:12:35 +00:00
desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Shell.desktop
2023-02-14 17:11:34 +00:00
desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Shell.Extensions.desktop
desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Shell.PortalHelper.desktop
2009-08-13 00:07:57 +00:00
%files -f %{name}.lang
2015-03-17 19:24:24 +00:00
%license COPYING
2024-01-08 08:49:47 +00:00
%doc NEWS README.md
%{_bindir}/gnome-shell
2019-08-26 22:05:04 +00:00
%{_bindir}/gnome-extensions
2020-04-29 22:53:39 +00:00
%{_bindir}/gnome-shell-extension-prefs
2011-03-08 05:52:37 +00:00
%{_bindir}/gnome-shell-extension-tool
2023-08-08 11:35:17 +00:00
%{_bindir}/gnome-shell-test-tool
2010-07-13 13:57:29 +00:00
%{_datadir}/glib-2.0/schemas/*.xml
%{_datadir}/glib-2.0/schemas/00_org.gnome.shell.gschema.override
%{_datadir}/applications/org.gnome.Shell.Extensions.desktop
2015-11-10 18:12:35 +00:00
%{_datadir}/applications/org.gnome.Shell.desktop
2014-07-23 23:00:43 +00:00
%{_datadir}/applications/org.gnome.Shell.PortalHelper.desktop
2019-08-26 22:05:04 +00:00
%{_datadir}/bash-completion/completions/gnome-extensions
2021-08-18 00:08:15 +00:00
%{_datadir}/gnome-control-center/keybindings/50-gnome-shell-launchers.xml
2022-02-14 23:09:21 +00:00
%{_datadir}/gnome-control-center/keybindings/50-gnome-shell-screenshots.xml
2012-09-19 13:42:53 +00:00
%{_datadir}/gnome-control-center/keybindings/50-gnome-shell-system.xml
2009-08-13 00:07:57 +00:00
%{_datadir}/gnome-shell/
2021-01-15 00:43:33 +00:00
%{_datadir}/dbus-1/services/org.gnome.ScreenSaver.service
2011-03-08 05:52:37 +00:00
%{_datadir}/dbus-1/services/org.gnome.Shell.CalendarServer.service
2020-03-30 22:46:16 +00:00
%{_datadir}/dbus-1/services/org.gnome.Shell.Extensions.service
2011-08-02 15:10:49 +00:00
%{_datadir}/dbus-1/services/org.gnome.Shell.HotplugSniffer.service
2020-03-30 22:46:16 +00:00
%{_datadir}/dbus-1/services/org.gnome.Shell.Notifications.service
2014-07-23 23:00:43 +00:00
%{_datadir}/dbus-1/services/org.gnome.Shell.PortalHelper.service
2020-09-02 02:01:18 +00:00
%{_datadir}/dbus-1/services/org.gnome.Shell.Screencast.service
2018-10-08 20:22:48 +00:00
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.Extensions.xml
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.Introspect.xml
2016-12-06 23:58:41 +00:00
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.PadOsd.xml
2013-05-29 14:12:09 +00:00
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.Screencast.xml
2013-01-15 12:38:32 +00:00
%{_datadir}/dbus-1/interfaces/org.gnome.Shell.Screenshot.xml
2012-02-26 16:15:42 +00:00
%{_datadir}/dbus-1/interfaces/org.gnome.ShellSearchProvider.xml
2012-12-20 21:47:39 +00:00
%{_datadir}/dbus-1/interfaces/org.gnome.ShellSearchProvider2.xml
%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Shell.Extensions.svg
%{_datadir}/icons/hicolor/symbolic/apps/org.gnome.Shell.Extensions-symbolic.svg
2020-08-13 23:16:53 +00:00
%{_userunitdir}/org.gnome.Shell-disable-extensions.service
%{_userunitdir}/org.gnome.Shell.target
%{_userunitdir}/org.gnome.Shell@wayland.service
%{_userunitdir}/org.gnome.Shell@x11.service
2016-07-21 00:25:00 +00:00
# Co own directory instead of pulling in xdg-desktop-portal - we
# are providing a backend to the portal, not depending on it
%dir %{_datadir}/xdg-desktop-portal/portals/
%{_datadir}/xdg-desktop-portal/portals/gnome-shell.portal
2009-08-13 00:07:57 +00:00
%{_libdir}/gnome-shell/
2011-03-08 05:52:37 +00:00
%{_libexecdir}/gnome-shell-calendar-server
2011-03-24 03:32:15 +00:00
%{_libexecdir}/gnome-shell-perf-helper
2011-08-02 15:10:49 +00:00
%{_libexecdir}/gnome-shell-hotplug-sniffer
2014-07-23 23:00:43 +00:00
%{_libexecdir}/gnome-shell-portal-helper
2019-08-26 22:05:04 +00:00
%{_mandir}/man1/gnome-extensions.1*
%{_mandir}/man1/gnome-shell.1*
2010-07-13 16:59:01 +00:00
2009-08-13 00:07:57 +00:00
%changelog
2023-04-25 08:16:47 +00:00
%autochangelog