3 %bcond_without apidocs # API documentation
5 %define clutter_ver 1.21.5
6 # max(ecal_req, eds_req)
7 %define evolution_data_server_ver 3.33.1
10 %define glib_ver 1:2.57.2
11 %define gnome_bluetooth_ver 3.9.0
12 %define gnome_desktop_ver 3.36.0
13 %define gsettings_desktop_schemas_ver 42
14 %define gtk_ver 3.15.0
15 %define ibus_ver 1.5.19
16 %define json_glib_ver 0.13.90
17 %define libsecret_ver 0.18
18 %define mutter_ver 42.0
19 %define NetworkManager_ver 1.10.4
20 %define polkit_ver 0.100
21 %define pulseaudio_ver 13
22 %define startup_notification_ver 0.11
24 Summary: Window manager and application launcher for GNOME
25 Summary(pl.UTF-8): Zarządca okien i uruchamiania aplikacji dla GNOME
30 Group: X11/Window Managers
31 Source0: https://download.gnome.org/sources/gnome-shell/42/%{name}-%{version}.tar.xz
32 # Source0-md5: cefa5c78071f885d1298e1e949afbf7d
33 Patch0: %{name}-no-update.patch
34 URL: https://wiki.gnome.org/Projects/GnomeShell
35 BuildRequires: NetworkManager-devel >= %{NetworkManager_ver}
36 BuildRequires: asciidoc
37 BuildRequires: at-spi2-atk-devel
38 BuildRequires: bash-completion-devel >= 2.0
39 BuildRequires: clutter-devel >= %{clutter_ver}
40 BuildRequires: evolution-data-server-devel >= %{evolution_data_server_ver}
41 BuildRequires: gcr-devel >= %{gcr_ver}
42 BuildRequires: gdk-pixbuf2-devel >= 2.0
43 BuildRequires: gettext-tools >= 0.19.6
44 BuildRequires: gjs-devel >= %{gjs_ver}
45 BuildRequires: glib2-devel >= %{glib_ver}
46 BuildRequires: gnome-autoar-devel
47 BuildRequires: gnome-bluetooth3-devel >= %{gnome_bluetooth_ver}
48 BuildRequires: gnome-control-center-devel
49 BuildRequires: gnome-desktop-devel >= %{gnome_desktop_ver}
50 BuildRequires: gobject-introspection-devel >= 1.50.0
51 BuildRequires: gsettings-desktop-schemas-devel >= %{gsettings_desktop_schemas_ver}
52 BuildRequires: gstreamer-devel >= 1.0.0
53 BuildRequires: gstreamer-plugins-base-devel >= 1.0.0
54 BuildRequires: gtk+3-devel >= %{gtk_ver}
55 BuildRequires: gtk4-devel >= 4
56 %{?with_apidocs:BuildRequires: gtk-doc >= 1.15}
57 BuildRequires: ibus-devel >= %{ibus_ver}
58 BuildRequires: json-glib-devel >= %{json_glib_ver}
59 BuildRequires: libcanberra-devel
60 BuildRequires: libcanberra-gtk3-devel
61 BuildRequires: libsecret-devel >= %{libsecret_ver}
62 # or libsoup3 with -Dsoup2=false, must be in sync with libgweather
63 BuildRequires: libsoup-devel >= 2.4
64 BuildRequires: libxml2-devel >= 2.0
65 BuildRequires: libxslt-progs
66 BuildRequires: meson >= 0.58.0
67 BuildRequires: mutter-devel >= %{mutter_ver}
68 BuildRequires: ninja >= 1.5
69 BuildRequires: pipewire-devel >= 0.3
70 BuildRequires: pkgconfig >= 1:0.22
71 BuildRequires: polkit-devel >= %{polkit_ver}
72 BuildRequires: pulseaudio-devel >= %{pulseaudio_ver}
73 BuildRequires: python3 >= 1:3
74 BuildRequires: python3-pygobject3 >= 3
75 BuildRequires: rpm-build >= 4.6
76 BuildRequires: rpm-pythonprov
77 BuildRequires: rpmbuild(macros) >= 1.752
79 BuildRequires: sed >= 4.0
80 BuildRequires: startup-notification-devel >= %{startup_notification_ver}
81 BuildRequires: systemd-devel
82 BuildRequires: systemd-units
83 BuildRequires: tar >= 1:1.22
84 BuildRequires: xorg-lib-libX11-devel
85 BuildRequires: xorg-lib-libXfixes-devel
87 Requires(post,postun): glib2 >= %{glib_ver}
89 Requires: NetworkManager-libs >= %{NetworkManager_ver}
90 Requires: adwaita-icon-theme
91 Requires: at-spi2-atk >= 2.4.0
92 Requires: clutter >= %{clutter_ver}
93 Requires: evolution-data-server >= %{evolution_data_server_ver}
94 Requires: gcr >= %{gcr_ver}
95 Requires: gjs >= %{gjs_ver}
96 Requires: glib2 >= %{glib_ver}
97 Requires: gnome-bluetooth3-libs >= %{gnome_bluetooth_ver}
98 Requires: gnome-desktop >= %{gnome_desktop_ver}
99 Requires: gnome-settings-daemon >= 3.8.0
100 Requires: gsettings-desktop-schemas >= %{gsettings_desktop_schemas_ver}
101 Requires: gtk+3 >= %{gtk_ver}
102 Requires: ibus >= %{ibus_ver}
103 Requires: json-glib >= %{json_glib_ver}
104 Requires: libsecret >= %{libsecret_ver}
105 Requires: mutter >= %{mutter_ver}
106 Requires: nautilus >= 3.8.0
107 Requires: polkit >= %{polkit_ver}
108 Requires: pulseaudio-libs >= %{pulseaudio_ver}
109 Requires: startup-notification >= %{startup_notification_ver}
110 # gjs->gir->TelepathyGLib
111 Requires: telepathy-glib >= 0.17.5
112 # gjs->gir->TelepathyLogger
113 Requires: telepathy-logger-libs >= 0.2
114 Requires: telepathy-mission-control
115 Suggests: gnome-contacts >= 3.2.0
116 Suggests: gnome-icon-theme-symbolic >= 3.8.0
117 Provides: gdm-wm = 3.8.0
118 Obsoletes: browser-plugin-gnome-shell < 3.32.2-1
119 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
122 GNOME Shell is the defining technology of the GNOME 3 desktop user
123 experience. It provides core interface functions like switching to
124 windows and launching applications. GNOME Shell takes advantage of the
125 capabilities of modern graphics hardware and introduces innovative
126 user interface concepts to provide a delightful and easy to use
129 %description -l pl.UTF-8
130 GNOME Shell to technologia definiująca doznania użytkownika środowiska
131 graficznego GNOME 3. Zapewnia podstawowe funkcje interfejsu, takie jak
132 przełączanie między oknami czy uruchamianie aplikacji. GNOME Shell
133 wykorzystuje mozliwości współczesnego sprzętu graficznego i wprowadza
134 innowacyjne koncepcje interfejsu użytkownika, zapewniające przyjemne
135 doznania i łatwość użycia.
137 %package -n bash-completion-gnome-shell
138 Summary: Bash completion for GNOME Shell commands
139 Summary(pl.UTF-8): Bashowe dopełnianie parametrów poleceń GNOME Shell
140 Group: Applications/Shells
141 Requires: %{name} = %{version}-%{release}
142 Requires: bash-completion >= 2.0
145 %description -n bash-completion-gnome-shell
146 Bash completion for GNOME Shell commands.
148 %description -n bash-completion-gnome-shell -l pl.UTF-8
149 Bashowe dopełnianie parametrów poleceń GNOME Shell.
152 Summary: Development files for GNOME Shell
153 Summary(pl.UTF-8): Pliki programistyczne dla GNOME Shell
154 Group: Development/Libraries
158 This package provides development files for GNOME Shell.
160 %description devel -l pl.UTF-8
161 Ten pakiet dostarcza pliki programistyczne dla GNOME Shell.
164 Summary: GNOME Shell API documentation
165 Summary(pl.UTF-8): Dokumentacja API GNOME Shell
167 Requires: gtk-doc-common
171 This package provides GNOME Shell API documentation.
173 %description apidocs -l pl.UTF-8
174 Ten pakiet dostarcza dokumentację API GNOME Shell.
180 %{__sed} -i -e '/^libshew =/ s/ library/ shared_library/' subprojects/shew/src/meson.build
184 %{?with_apidocs:-Dgtk_doc=true} \
187 %meson_build -C build
190 rm -rf $RPM_BUILD_ROOT
191 install -d $RPM_BUILD_ROOT%{_datadir}/gnome-shell/{extensions,search-providers}
193 %meson_install -C build
195 # evolution already ships this file
196 %{__rm} $RPM_BUILD_ROOT%{_desktopdir}/evolution-calendar.desktop
198 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gnome-shell/libgnome-shell*.a
203 rm -rf $RPM_BUILD_ROOT
206 %glib_compile_schemas
209 if [ "$1" = "0" ]; then
210 %glib_compile_schemas
213 %files -f %{name}.lang
214 %defattr(644,root,root,755)
216 %attr(755,root,root) %{_bindir}/gnome-extensions
217 %attr(755,root,root) %{_bindir}/gnome-extensions-app
218 %attr(755,root,root) %{_bindir}/gnome-shell
219 %attr(755,root,root) %{_bindir}/gnome-shell-extension-prefs
220 %attr(755,root,root) %{_bindir}/gnome-shell-extension-tool
221 %attr(755,root,root) %{_bindir}/gnome-shell-perf-tool
222 %attr(755,root,root) %{_libexecdir}/gnome-shell-calendar-server
223 %attr(755,root,root) %{_libexecdir}/gnome-shell-hotplug-sniffer
224 %attr(755,root,root) %{_libexecdir}/gnome-shell-overrides-migration.sh
225 %attr(755,root,root) %{_libexecdir}/gnome-shell-perf-helper
226 %attr(755,root,root) %{_libexecdir}/gnome-shell-portal-helper
227 %dir %{_libdir}/gnome-shell
228 %attr(755,root,root) %{_libdir}/gnome-shell/libgnome-shell.so
229 %attr(755,root,root) %{_libdir}/gnome-shell/libgnome-shell-menu.so
230 %attr(755,root,root) %{_libdir}/gnome-shell/libgvc.so
231 %attr(755,root,root) %{_libdir}/gnome-shell/libshew-0.so
232 %attr(755,root,root) %{_libdir}/gnome-shell/libst-1.0.so
233 %{_libdir}/gnome-shell/Gvc-1.0.typelib
234 %{_libdir}/gnome-shell/Shell-0.1.typelib
235 %{_libdir}/gnome-shell/St-1.0.typelib
236 %dir %{_libdir}/gnome-shell/girepository-1.0
237 %{_libdir}/gnome-shell/girepository-1.0/Shew-0.typelib
238 %{_datadir}/dbus-1/interfaces/org.gnome.Shell.Introspect.xml
239 %{_datadir}/dbus-1/services/org.gnome.Extensions.service
240 %{_datadir}/dbus-1/services/org.gnome.ScreenSaver.service
241 %{_datadir}/dbus-1/services/org.gnome.Shell.CalendarServer.service
242 %{_datadir}/dbus-1/services/org.gnome.Shell.Extensions.service
243 %{_datadir}/dbus-1/services/org.gnome.Shell.HotplugSniffer.service
244 %{_datadir}/dbus-1/services/org.gnome.Shell.Notifications.service
245 %{_datadir}/dbus-1/services/org.gnome.Shell.PortalHelper.service
246 %{_datadir}/dbus-1/services/org.gnome.Shell.Screencast.service
247 %{_datadir}/glib-2.0/schemas/00_org.gnome.shell.gschema.override
248 %{_datadir}/glib-2.0/schemas/org.gnome.shell.gschema.xml
249 %{_datadir}/gnome-control-center/keybindings/*.xml
250 %{_datadir}/gnome-shell
251 %{_datadir}/metainfo/org.gnome.Extensions.metainfo.xml
252 %{_datadir}/xdg-desktop-portal/portals/gnome-shell.portal
253 %{_desktopdir}/org.gnome.Extensions.desktop
254 %{_desktopdir}/org.gnome.Shell.desktop
255 %{_desktopdir}/org.gnome.Shell.Extensions.desktop
256 %{_desktopdir}/org.gnome.Shell.PortalHelper.desktop
257 %{_iconsdir}/hicolor/scalable/apps/org.gnome.Extensions.Devel.svg
258 %{_iconsdir}/hicolor/scalable/apps/org.gnome.Extensions.svg
259 %{_iconsdir}/hicolor/scalable/apps/org.gnome.Shell.Extensions.svg
260 %{_iconsdir}/hicolor/symbolic/apps/org.gnome.Extensions-symbolic.svg
261 %{_iconsdir}/hicolor/symbolic/apps/org.gnome.Shell.Extensions-symbolic.svg
262 %{_mandir}/man1/gnome-extensions.1*
263 %{_mandir}/man1/gnome-shell.1*
264 %{_sysconfdir}/xdg/autostart/gnome-shell-overrides-migration.desktop
265 %{systemduserunitdir}/org.gnome.Shell.target
266 %{systemduserunitdir}/org.gnome.Shell-disable-extensions.service
267 %{systemduserunitdir}/org.gnome.Shell@wayland.service
268 %{systemduserunitdir}/org.gnome.Shell@x11.service
270 %files -n bash-completion-gnome-shell
271 %defattr(644,root,root,755)
272 %{bash_compdir}/gnome-extensions
275 %defattr(644,root,root,755)
276 %{_datadir}/dbus-1/interfaces/org.gnome.Shell.Extensions.xml
277 %{_datadir}/dbus-1/interfaces/org.gnome.Shell.PadOsd.xml
278 %{_datadir}/dbus-1/interfaces/org.gnome.Shell.Screencast.xml
279 %{_datadir}/dbus-1/interfaces/org.gnome.Shell.Screenshot.xml
280 %{_datadir}/dbus-1/interfaces/org.gnome.ShellSearchProvider.xml
281 %{_datadir}/dbus-1/interfaces/org.gnome.ShellSearchProvider2.xml
285 %defattr(644,root,root,755)