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 40
13 %define gsettings_desktop_schemas_ver 46
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 46.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
23 %define systemd_ver 1:246
25 Summary: Window manager and application launcher for GNOME
26 Summary(pl.UTF-8): Zarządca okien i uruchamiania aplikacji dla GNOME
31 Group: X11/Window Managers
32 Source0: https://download.gnome.org/sources/gnome-shell/46/%{name}-%{version}.tar.xz
33 # Source0-md5: ebb54596ebd8b65552cb63bb56d3226a
34 Patch0: %{name}-no-update.patch
35 URL: https://wiki.gnome.org/Projects/GnomeShell
36 BuildRequires: NetworkManager-devel >= %{NetworkManager_ver}
37 BuildRequires: asciidoc
38 BuildRequires: at-spi2-atk-devel
39 BuildRequires: bash-completion-devel >= 1:2.0
40 BuildRequires: clutter-devel >= %{clutter_ver}
41 BuildRequires: evolution-data-server-devel >= %{evolution_data_server_ver}
42 BuildRequires: gcr4-devel >= %{gcr_ver}
43 BuildRequires: gdk-pixbuf2-devel >= 2.0
44 BuildRequires: gettext-tools >= 0.19.6
45 %{?with_apidocs:BuildRequires: gi-docgen}
46 BuildRequires: gjs-devel >= %{gjs_ver}
47 BuildRequires: glib2-devel >= %{glib_ver}
48 BuildRequires: gnome-autoar-devel
49 BuildRequires: gnome-bluetooth3-devel >= %{gnome_bluetooth_ver}
50 BuildRequires: gnome-control-center-devel
51 BuildRequires: gnome-desktop4-devel >= %{gnome_desktop_ver}
52 BuildRequires: gobject-introspection-devel >= 1.50.0
53 BuildRequires: gsettings-desktop-schemas-devel >= %{gsettings_desktop_schemas_ver}
54 BuildRequires: gstreamer-devel >= 1.0.0
55 BuildRequires: gstreamer-plugins-base-devel >= 1.0.0
56 BuildRequires: gtk4-devel >= %{gtk_ver}
57 BuildRequires: ibus-devel >= %{ibus_ver}
58 BuildRequires: json-glib-devel >= %{json_glib_ver}
59 BuildRequires: libsecret-devel >= %{libsecret_ver}
60 # or libsoup 2.4 with -Dsoup2=true, must be in sync with libgweather
61 BuildRequires: libsoup3-devel >= 3.0
62 BuildRequires: libxml2-devel >= 2.0
63 BuildRequires: libxslt-progs
64 BuildRequires: meson >= 0.58.0
65 BuildRequires: mutter-devel >= %{mutter_ver}
66 BuildRequires: ninja >= 1.5
67 BuildRequires: pipewire-devel >= 0.3.49
68 BuildRequires: pkgconfig >= 1:0.22
69 BuildRequires: polkit-devel >= %{polkit_ver}
70 BuildRequires: pulseaudio-devel >= %{pulseaudio_ver}
71 BuildRequires: python3 >= 1:3
72 BuildRequires: python3-pygobject3 >= 3
73 BuildRequires: rpm-build >= 4.6
74 BuildRequires: rpm-pythonprov
75 BuildRequires: rpmbuild(macros) >= 2.029
77 BuildRequires: sed >= 4.0
78 BuildRequires: startup-notification-devel >= %{startup_notification_ver}
79 BuildRequires: systemd-devel >= %{systemd_ver}
80 BuildRequires: systemd-units >= %{systemd_ver}
81 BuildRequires: tar >= 1:1.22
82 BuildRequires: xorg-lib-libX11-devel
83 BuildRequires: xorg-lib-libXfixes-devel
85 Requires(post,postun): glib2 >= %{glib_ver}
87 Requires: NetworkManager-libs >= %{NetworkManager_ver}
88 Requires: adwaita-icon-theme
89 Requires: at-spi2-atk >= 2.4.0
90 Requires: clutter >= %{clutter_ver}
91 Requires: evolution-data-server >= %{evolution_data_server_ver}
92 Requires: gcr4 >= %{gcr_ver}
93 Requires: gjs >= %{gjs_ver}
94 Requires: glib2 >= %{glib_ver}
95 Requires: gnome-bluetooth3-libs >= %{gnome_bluetooth_ver}
96 Requires: gnome-desktop4 >= %{gnome_desktop_ver}
97 Requires: gnome-settings-daemon >= 3.8.0
98 Requires: gsettings-desktop-schemas >= %{gsettings_desktop_schemas_ver}
99 Requires: gtk4 >= %{gtk_ver}
100 Requires: ibus >= %{ibus_ver}
101 Requires: json-glib >= %{json_glib_ver}
102 Requires: libsecret >= %{libsecret_ver}
103 Requires: mutter >= %{mutter_ver}
104 Requires: nautilus >= 3.8.0
105 Requires: polkit >= %{polkit_ver}
106 Requires: pulseaudio-libs >= %{pulseaudio_ver}
107 Requires: startup-notification >= %{startup_notification_ver}
108 # gjs->gir->TelepathyGLib
109 Requires: telepathy-glib >= 0.17.5
110 # gjs->gir->TelepathyLogger
111 Requires: telepathy-logger-libs >= 0.2
112 Requires: telepathy-mission-control
113 Suggests: gnome-contacts >= 3.2.0
114 Suggests: gnome-icon-theme-symbolic >= 3.8.0
115 Provides: gdm-wm = 3.8.0
116 Obsoletes: browser-plugin-gnome-shell < 3.32.2-1
117 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 >= 1: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
196 install -d $RPM_BUILD_ROOT%{_gidocdir}
197 %{__mv} $RPM_BUILD_ROOT%{_docdir}/{shell,st} $RPM_BUILD_ROOT%{_gidocdir}
201 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gnome-shell/lib*.a
203 # not supported by glibc (as of 2.37)
204 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/ie
209 rm -rf $RPM_BUILD_ROOT
212 %glib_compile_schemas
215 if [ "$1" = "0" ]; then
216 %glib_compile_schemas
219 %files -f %{name}.lang
220 %defattr(644,root,root,755)
222 %attr(755,root,root) %{_bindir}/gnome-extensions
223 %attr(755,root,root) %{_bindir}/gnome-extensions-app
224 %attr(755,root,root) %{_bindir}/gnome-shell
225 %attr(755,root,root) %{_bindir}/gnome-shell-extension-prefs
226 %attr(755,root,root) %{_bindir}/gnome-shell-extension-tool
227 %attr(755,root,root) %{_bindir}/gnome-shell-test-tool
228 %attr(755,root,root) %{_libexecdir}/gnome-shell-calendar-server
229 %attr(755,root,root) %{_libexecdir}/gnome-shell-hotplug-sniffer
230 %attr(755,root,root) %{_libexecdir}/gnome-shell-perf-helper
231 %attr(755,root,root) %{_libexecdir}/gnome-shell-portal-helper
232 %dir %{_libdir}/gnome-shell
233 %attr(755,root,root) %{_libdir}/gnome-shell/libgnome-shell-menu.so
234 %attr(755,root,root) %{_libdir}/gnome-shell/libgvc.so
235 %attr(755,root,root) %{_libdir}/gnome-shell/libshell-%{apiver}.so
236 %attr(755,root,root) %{_libdir}/gnome-shell/libshew-0.so
237 %attr(755,root,root) %{_libdir}/gnome-shell/libst-%{apiver}.so
238 %{_libdir}/gnome-shell/Gvc-1.0.typelib
239 %{_libdir}/gnome-shell/Shell-%{apiver}.typelib
240 %{_libdir}/gnome-shell/St-%{apiver}.typelib
241 %dir %{_libdir}/gnome-shell/girepository-1.0
242 %{_libdir}/gnome-shell/girepository-1.0/Shew-0.typelib
243 %{_datadir}/dbus-1/interfaces/org.gnome.Shell.Introspect.xml
244 %{_datadir}/dbus-1/services/org.gnome.Extensions.service
245 %{_datadir}/dbus-1/services/org.gnome.ScreenSaver.service
246 %{_datadir}/dbus-1/services/org.gnome.Shell.CalendarServer.service
247 %{_datadir}/dbus-1/services/org.gnome.Shell.Extensions.service
248 %{_datadir}/dbus-1/services/org.gnome.Shell.HotplugSniffer.service
249 %{_datadir}/dbus-1/services/org.gnome.Shell.Notifications.service
250 %{_datadir}/dbus-1/services/org.gnome.Shell.PortalHelper.service
251 %{_datadir}/dbus-1/services/org.gnome.Shell.Screencast.service
252 %{_datadir}/glib-2.0/schemas/00_org.gnome.shell.gschema.override
253 %{_datadir}/glib-2.0/schemas/org.gnome.Extensions.gschema.xml
254 %{_datadir}/glib-2.0/schemas/org.gnome.shell.gschema.xml
255 %{_datadir}/gnome-control-center/keybindings/*.xml
256 %{_datadir}/gnome-shell
257 %{_datadir}/metainfo/org.gnome.Extensions.metainfo.xml
258 %{_desktopdir}/org.gnome.Extensions.desktop
259 %{_desktopdir}/org.gnome.Shell.desktop
260 %{_desktopdir}/org.gnome.Shell.Extensions.desktop
261 %{_desktopdir}/org.gnome.Shell.PortalHelper.desktop
262 %{_iconsdir}/hicolor/scalable/apps/org.gnome.Extensions.Devel.svg
263 %{_iconsdir}/hicolor/scalable/apps/org.gnome.Extensions.svg
264 %{_iconsdir}/hicolor/scalable/apps/org.gnome.Shell.Extensions.svg
265 %{_iconsdir}/hicolor/symbolic/apps/org.gnome.Extensions-symbolic.svg
266 %{_iconsdir}/hicolor/symbolic/apps/org.gnome.Shell.Extensions-symbolic.svg
267 %{_mandir}/man1/gnome-extensions.1*
268 %{_mandir}/man1/gnome-shell.1*
269 %{systemduserunitdir}/org.gnome.Shell.target
270 %{systemduserunitdir}/org.gnome.Shell-disable-extensions.service
271 %{systemduserunitdir}/org.gnome.Shell@wayland.service
272 %{systemduserunitdir}/org.gnome.Shell@x11.service
274 %files -n bash-completion-gnome-shell
275 %defattr(644,root,root,755)
276 %{bash_compdir}/gnome-extensions
279 %defattr(644,root,root,755)
280 %{_datadir}/dbus-1/interfaces/org.gnome.Shell.Extensions.xml
281 %{_datadir}/dbus-1/interfaces/org.gnome.Shell.PadOsd.xml
282 %{_datadir}/dbus-1/interfaces/org.gnome.Shell.Screencast.xml
283 %{_datadir}/dbus-1/interfaces/org.gnome.Shell.Screenshot.xml
284 %{_datadir}/dbus-1/interfaces/org.gnome.ShellSearchProvider.xml
285 %{_datadir}/dbus-1/interfaces/org.gnome.ShellSearchProvider2.xml
289 %defattr(644,root,root,755)