1 %define major_version 3.14
2 # Minimum GNOME Shell version supported
3 %define global min_gs_version %{major_version}.1
5 Summary: Modify and extend GNOME Shell functionality and behavior
6 Name: gnome-shell-extensions
7 Version: %{major_version}.1
9 Group: X11/Applications
10 # The entire source code is GPLv2+ except lib/convenience.js which is BSD
11 License: GPLv2+ and BSD
12 Source0: http://ftp.gnome.org/pub/GNOME/sources/gnome-shell-extensions/3.14/%{name}-%{version}.tar.xz
13 # Source0-md5: 450ba17f6213728f20b4223cda113f2f
14 URL: http://live.gnome.org/GnomeShell/Extensions
15 BuildRequires: autoconf >= 2.63
16 BuildRequires: automake >= 1:1.10
17 BuildRequires: gnome-common
18 BuildRequires: gnome-desktop-devel
19 BuildRequires: intltool
20 BuildRequires: libgtop-devel >= 2.28.3
21 BuildRequires: pkgconfig >= 1:0.22
22 Requires: gnome-shell >= %{min_gs_version}
23 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
25 %define ext_prefix gnome-shell-extension
28 GNOME Shell Extensions is a collection of extensions providing
29 additional and optional functionality to GNOME Shell.
37 - native-window-placement
39 - screenshot-window-sizer
47 Summary: Files common to GNOME Shell Extensions
49 Group: X11/Applications
50 Requires: gnome-shell >= %{min_gs_version}
51 Obsoletes: gnome-shell-extension-alternative-status-menu < 3.10.1
52 Obsoletes: gnome-shell-extension-default-min-max < 3.8.3.1
53 Obsoletes: gnome-shell-extension-dock < 3.8.0
54 Obsoletes: gnome-shell-extension-gajim < 3.8.0
55 Obsoletes: gnome-shell-extension-static-workspaces < 3.8.3.1
56 Obsoletes: gnome-shell-extension-xrandr-indicator < 3.10.1
59 GNOME Shell Extensions is a collection of extensions providing
60 additional and optional functionality to GNOME Shell. Common files and
61 directories needed by extensions are provided here.
63 %package -n gnome-classic-session
64 Summary: GNOME "classic" mode session
66 Group: X11/Applications
67 Requires(post,postun): glib2 >= 1:2.26.0
68 Requires: %{ext_prefix}-alternate-tab = %{version}-%{release}
69 Requires: %{ext_prefix}-apps-menu = %{version}-%{release}
70 Requires: %{ext_prefix}-launch-new-instance = %{version}-%{release}
71 Requires: %{ext_prefix}-places-menu = %{version}-%{release}
72 Requires: %{ext_prefix}-window-list = %{version}-%{release}
73 Requires: gnome-session >= 1:3.14.0
75 %description -n gnome-classic-session
76 This package contains the required components for the GNOME Shell
77 "classic" mode, which aims to provide a GNOME 2-like user interface.
79 %package -n %{ext_prefix}-alternate-tab
80 Summary: Classic Alt+Tab behavior. Window based instead of app based
82 Group: X11/Applications
83 Requires: %{name}-common = %{version}-%{release}
85 %description -n %{ext_prefix}-alternate-tab
86 Lets you use classic Alt+Tab (window-based instead of app-based) in
87 GNOME Shell. GNOME Shell groups multiple instances of the same
88 application together. This extension disables grouping.
90 %package -n %{ext_prefix}-apps-menu
91 Summary: Application menu for GNOME Shell
93 Group: X11/Applications
94 Requires: %{name}-common = %{version}-%{release}
96 %description -n %{ext_prefix}-apps-menu
97 Add a GNOME 2.x style menu for applications.
99 %package -n %{ext_prefix}-auto-move-windows
100 Summary: Assign specific workspaces to applications
102 Group: X11/Applications
103 Requires: %{name}-common = %{version}-%{release}
105 %description -n %{ext_prefix}-auto-move-windows
106 Lets you manage your workspaces more easily, assigning a specific
107 workspace to each application as soon as it creates a window, in a
108 manner configurable with a GSettings key.
110 %package -n %{ext_prefix}-drive-menu
111 Summary: Disk device manager in the system status area
113 Group: X11/Applications
114 Requires: %{name}-common = %{version}-%{release}
116 %description -n %{ext_prefix}-drive-menu
117 Adds a menu in the system status area that tracks removable disk
118 devices attached and offers to browse them and eject/unmount them.
120 %package -n %{ext_prefix}-launch-new-instance
121 Summary: Always launch a new application instance for GNOME Shell
123 Group: X11/Applications
124 Requires: %{name}-common = %{version}-%{release}
126 %description -n %{ext_prefix}-launch-new-instance
127 This GNOME Shell extension modifies the behavior of clicking in the
128 dash and app launcher to always launch a new application instance.
130 %package -n %{ext_prefix}-native-window-placement
131 Summary: Arrange windows in overview in a more native way
133 Group: X11/Applications
134 Requires: %{name}-common = %{version}-%{release}
136 %description -n %{ext_prefix}-native-window-placement
137 This extension employs an algorithm (taken from KDE) for layouting the
138 thumbnails in the overview that more closely reflects the positions
139 and relative sizes of the actual windows, instead of using a fixed
142 %package -n %{ext_prefix}-places-menu
143 Summary: Places menu indicator in the system status area
145 Group: X11/Applications
146 Requires: %{name}-common = %{version}-%{release}
148 %description -n %{ext_prefix}-places-menu
149 Adds a menu in the system status area that resembles the Places menu
152 %package -n %{ext_prefix}-screenshot-window-sizer
153 Summary: Screenshot window sizer for GNOME Shell
155 Group: X11/Applications
156 Requires: %{name}-common = %{version}-%{release}
158 %description -n %{ext_prefix}-screenshot-window-sizer
159 This GNOME Shell extension allows to easily resize windows for GNOME
160 Software screenshots.
162 %package -n %{ext_prefix}-systemMonitor
163 Summary: Monitor your system status
165 Group: X11/Applications
166 Requires: %{name}-common = %{version}-%{release}
169 %description -n %{ext_prefix}-systemMonitor
170 Monitor your system status
172 %package -n %{ext_prefix}-user-theme
173 Summary: Lets the user select a custom theme for the shell
175 Group: X11/Applications
176 Requires: %{name}-common = %{version}-%{release}
178 %description -n %{ext_prefix}-user-theme
179 Lets the user select a custom theme for the Gnome shell. It will allow
180 you to apply a style from
181 /.themes/[themeName]/gnome-shell/gnome-shell.css
183 %package -n %{ext_prefix}-window-list
184 Summary: Display a window list at the bottom of the screen in GNOME Shell
186 Group: X11/Applications
187 Requires: %{name}-common = %{version}-%{release}
189 %description -n %{ext_prefix}-window-list
190 This GNOME Shell extension displays a window list at the bottom of the
193 %package -n %{ext_prefix}-windowsNavigator
194 Summary: Keyboard selection of windows and work-spaces in overlay mode
196 Group: X11/Applications
197 Requires: %{name}-common = %{version}-%{release}
199 %description -n %{ext_prefix}-windowsNavigator
200 Allow keyboard selection of windows and work-spaces in overlay mode in
201 GNOME Shell. Switch to overview mode (press the windows or alt+f1 key)
202 and press the alt key to show numbers over windows. Press any number
203 to switch to the corresponding window.
205 %package -n %{ext_prefix}-workspace-indicator
206 Summary: Workspace Indicator
208 Group: X11/Applications
209 Requires: %{name}-common = %{version}-%{release}
211 %description -n %{ext_prefix}-workspace-indicator
212 Put an indicator on the panel signaling in which workspace you are,
213 and give you the possibility of switching to another one.
226 --enable-extensions="all"
231 rm -rf $RPM_BUILD_ROOT
234 DESTDIR=$RPM_BUILD_ROOT
236 # Drop useless example extension
237 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/gnome-shell/extensions/example*
238 %{__rm} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.example.gschema.xml
243 rm -rf $RPM_BUILD_ROOT
245 %post -n gnome-classic-session
246 %glib_compile_schemas
248 %postun -n gnome-classic-session
249 %glib_compile_schemas
251 %post -n %{ext_prefix}-auto-move-windows
252 %glib_compile_schemas
254 %postun -n %{ext_prefix}-auto-move-windows
255 %glib_compile_schemas
257 %post -n %{ext_prefix}-native-window-placement
258 %glib_compile_schemas
260 %postun -n %{ext_prefix}-native-window-placement
261 %glib_compile_schemas
263 %post -n %{ext_prefix}-screenshot-window-sizer
264 %glib_compile_schemas
266 %postun -n %{ext_prefix}-screenshot-window-sizer
267 %glib_compile_schemas
269 %post -n %{ext_prefix}-user-theme
270 %glib_compile_schemas
272 %postun -n %{ext_prefix}-user-theme
273 %glib_compile_schemas
275 %post -n %{ext_prefix}-window-list
276 %glib_compile_schemas
278 %postun -n %{ext_prefix}-window-list
279 %glib_compile_schemas
281 %files common -f %{name}.lang
282 %defattr(644,root,root,755)
283 %doc COPYING NEWS README
284 %dir %{_datadir}/gnome-shell/extensions
286 %files -n gnome-classic-session
287 %defattr(644,root,root,755)
288 %{_desktopdir}/gnome-shell-classic.desktop
289 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.classic-overrides.gschema.xml
290 %{_datadir}/gnome-session/sessions/gnome-classic.session
291 %dir %{_datadir}/gnome-shell/modes
292 %{_datadir}/gnome-shell/modes/classic.json
293 %{_datadir}/gnome-shell/theme/*.svg
294 %{_datadir}/gnome-shell/theme/gnome-classic.css
295 %{_datadir}/xsessions/gnome-classic.desktop
297 %files -n %{ext_prefix}-alternate-tab
298 %defattr(644,root,root,755)
299 %{_datadir}/gnome-shell/extensions/alternate-tab*
301 %files -n %{ext_prefix}-apps-menu
302 %defattr(644,root,root,755)
303 %{_datadir}/gnome-shell/extensions/apps-menu*
305 %files -n %{ext_prefix}-auto-move-windows
306 %defattr(644,root,root,755)
307 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.auto-move-windows.gschema.xml
308 %{_datadir}/gnome-shell/extensions/auto-move-windows*
310 %files -n %{ext_prefix}-drive-menu
311 %defattr(644,root,root,755)
312 %{_datadir}/gnome-shell/extensions/drive-menu*
314 %files -n %{ext_prefix}-launch-new-instance
315 %defattr(644,root,root,755)
316 %{_datadir}/gnome-shell/extensions/launch-new-instance*
318 %files -n %{ext_prefix}-native-window-placement
319 %defattr(644,root,root,755)
320 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.native-window-placement.gschema.xml
321 %{_datadir}/gnome-shell/extensions/native-window-placement*
323 %files -n %{ext_prefix}-places-menu
324 %defattr(644,root,root,755)
325 %{_datadir}/gnome-shell/extensions/places-menu*
327 %files -n %{ext_prefix}-screenshot-window-sizer
328 %defattr(644,root,root,755)
329 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.screenshot-window-sizer.gschema.xml
330 %{_datadir}/gnome-shell/extensions/screenshot-window-sizer*
332 %files -n %{ext_prefix}-systemMonitor
333 %defattr(644,root,root,755)
334 %{_datadir}/gnome-shell/extensions/systemMonitor*
336 %files -n %{ext_prefix}-user-theme
337 %defattr(644,root,root,755)
338 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.user-theme.gschema.xml
339 %{_datadir}/gnome-shell/extensions/user-theme*
341 %files -n %{ext_prefix}-window-list
342 %defattr(644,root,root,755)
343 %{_datadir}/gnome-shell/extensions/window-list*
344 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.window-list.gschema.xml
346 %files -n %{ext_prefix}-windowsNavigator
347 %defattr(644,root,root,755)
348 %{_datadir}/gnome-shell/extensions/windowsNavigator*
350 %files -n %{ext_prefix}-workspace-indicator
351 %defattr(644,root,root,755)
352 %{_datadir}/gnome-shell/extensions/workspace-indicator*