1 %define major_version 3.12
2 # Minimum GNOME Shell version supported
3 %define global min_gs_version %{major_version}.0
5 Summary: Modify and extend GNOME Shell functionality and behavior
6 Name: gnome-shell-extensions
7 Version: %{major_version}.2
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.12/%{name}-%{version}.tar.xz
13 # Source0-md5: 4b3ba9920840c3ac63ce6934a7a415f6
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
46 Summary: Files common to GNOME Shell Extensions
48 Group: X11/Applications
49 Requires: gnome-shell >= %{min_gs_version}
50 Obsoletes: gnome-shell-extension-alternative-status-menu < 3.10.1
51 Obsoletes: gnome-shell-extension-default-min-max < 3.8.3.1
52 Obsoletes: gnome-shell-extension-dock < 3.8.0
53 Obsoletes: gnome-shell-extension-gajim < 3.8.0
54 Obsoletes: gnome-shell-extension-static-workspaces < 3.8.3.1
55 Obsoletes: gnome-shell-extension-xrandr-indicator < 3.10.1
58 GNOME Shell Extensions is a collection of extensions providing
59 additional and optional functionality to GNOME Shell. Common files and
60 directories needed by extensions are provided here.
62 %package -n gnome-classic-session
63 Summary: GNOME "classic" mode session
65 Group: X11/Applications
66 Requires(post,postun): glib2 >= 1:2.26.0
67 Requires: %{ext_prefix}-alternate-tab = %{version}-%{release}
68 Requires: %{ext_prefix}-apps-menu = %{version}-%{release}
69 Requires: %{ext_prefix}-launch-new-instance = %{version}-%{release}
70 Requires: %{ext_prefix}-places-menu = %{version}-%{release}
71 Requires: %{ext_prefix}-window-list = %{version}-%{release}
72 Requires: gnome-session >= 1:3.12.0
74 %description -n gnome-classic-session
75 This package contains the required components for the GNOME Shell
76 "classic" mode, which aims to provide a GNOME 2-like user interface.
78 %package -n %{ext_prefix}-alternate-tab
79 Summary: Classic Alt+Tab behavior. Window based instead of app based
81 Group: X11/Applications
82 Requires: %{name}-common = %{version}-%{release}
84 %description -n %{ext_prefix}-alternate-tab
85 Lets you use classic Alt+Tab (window-based instead of app-based) in
86 GNOME Shell. GNOME Shell groups multiple instances of the same
87 application together. This extension disables grouping.
89 %package -n %{ext_prefix}-apps-menu
90 Summary: Application menu for GNOME Shell
92 Group: X11/Applications
93 Requires: %{name}-common = %{version}-%{release}
95 %description -n %{ext_prefix}-apps-menu
96 Add a GNOME 2.x style menu for applications.
98 %package -n %{ext_prefix}-auto-move-windows
99 Summary: Assign specific workspaces to applications
101 Group: X11/Applications
102 Requires: %{name}-common = %{version}-%{release}
104 %description -n %{ext_prefix}-auto-move-windows
105 Lets you manage your workspaces more easily, assigning a specific
106 workspace to each application as soon as it creates a window, in a
107 manner configurable with a GSettings key.
109 %package -n %{ext_prefix}-drive-menu
110 Summary: Disk device manager in the system status area
112 Group: X11/Applications
113 Requires: %{name}-common = %{version}-%{release}
115 %description -n %{ext_prefix}-drive-menu
116 Adds a menu in the system status area that tracks removable disk
117 devices attached and offers to browse them and eject/unmount them.
119 %package -n %{ext_prefix}-launch-new-instance
120 Summary: Always launch a new application instance for GNOME Shell
122 Group: X11/Applications
123 Requires: %{name}-common = %{version}-%{release}
125 %description -n %{ext_prefix}-launch-new-instance
126 This GNOME Shell extension modifies the behavior of clicking in the
127 dash and app launcher to always launch a new application instance.
129 %package -n %{ext_prefix}-native-window-placement
130 Summary: Arrange windows in overview in a more native way
132 Group: X11/Applications
133 Requires: %{name}-common = %{version}-%{release}
135 %description -n %{ext_prefix}-native-window-placement
136 This extension employs an algorithm (taken from KDE) for layouting the
137 thumbnails in the overview that more closely reflects the positions
138 and relative sizes of the actual windows, instead of using a fixed
141 %package -n %{ext_prefix}-places-menu
142 Summary: Places menu indicator in the system status area
144 Group: X11/Applications
145 Requires: %{name}-common = %{version}-%{release}
147 %description -n %{ext_prefix}-places-menu
148 Adds a menu in the system status area that resembles the Places menu
151 %package -n %{ext_prefix}-systemMonitor
152 Summary: Monitor your system status
154 Group: X11/Applications
155 Requires: %{name}-common = %{version}-%{release}
158 %description -n %{ext_prefix}-systemMonitor
159 Monitor your system status
161 %package -n %{ext_prefix}-user-theme
162 Summary: Lets the user select a custom theme for the shell
164 Group: X11/Applications
165 Requires: %{name}-common = %{version}-%{release}
167 %description -n %{ext_prefix}-user-theme
168 Lets the user select a custom theme for the Gnome shell. It will allow
169 you to apply a style from
170 /.themes/[themeName]/gnome-shell/gnome-shell.css
172 %package -n %{ext_prefix}-window-list
173 Summary: Display a window list at the bottom of the screen in GNOME Shell
175 Group: X11/Applications
176 Requires: %{name}-common = %{version}-%{release}
178 %description -n %{ext_prefix}-window-list
179 This GNOME Shell extension displays a window list at the bottom of the
182 %package -n %{ext_prefix}-windowsNavigator
183 Summary: Keyboard selection of windows and work-spaces in overlay mode
185 Group: X11/Applications
186 Requires: %{name}-common = %{version}-%{release}
188 %description -n %{ext_prefix}-windowsNavigator
189 Allow keyboard selection of windows and work-spaces in overlay mode in
190 GNOME Shell. Switch to overview mode (press the windows or alt+f1 key)
191 and press the alt key to show numbers over windows. Press any number
192 to switch to the corresponding window.
194 %package -n %{ext_prefix}-workspace-indicator
195 Summary: Workspace Indicator
197 Group: X11/Applications
198 Requires: %{name}-common = %{version}-%{release}
200 %description -n %{ext_prefix}-workspace-indicator
201 Put an indicator on the panel signaling in which workspace you are,
202 and give you the possibility of switching to another one.
215 --enable-extensions="all"
220 rm -rf $RPM_BUILD_ROOT
223 DESTDIR=$RPM_BUILD_ROOT
225 # Drop useless example extension
226 %{__rm} -r $RPM_BUILD_ROOT%{_datadir}/gnome-shell/extensions/example*
227 %{__rm} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.example.gschema.xml
232 rm -rf $RPM_BUILD_ROOT
234 %post -n gnome-classic-session
235 %glib_compile_schemas
237 %postun -n gnome-classic-session
238 %glib_compile_schemas
240 %post -n %{ext_prefix}-auto-move-windows
241 %glib_compile_schemas
243 %postun -n %{ext_prefix}-auto-move-windows
244 %glib_compile_schemas
246 %post -n %{ext_prefix}-native-window-placement
247 %glib_compile_schemas
249 %postun -n %{ext_prefix}-native-window-placement
250 %glib_compile_schemas
252 %post -n %{ext_prefix}-user-theme
253 %glib_compile_schemas
255 %postun -n %{ext_prefix}-user-theme
256 %glib_compile_schemas
258 %post -n %{ext_prefix}-window-list
259 %glib_compile_schemas
261 %postun -n %{ext_prefix}-window-list
262 %glib_compile_schemas
264 %files common -f %{name}.lang
265 %defattr(644,root,root,755)
266 %doc COPYING NEWS README
267 %dir %{_datadir}/gnome-shell/extensions
269 %files -n gnome-classic-session
270 %defattr(644,root,root,755)
271 %{_desktopdir}/gnome-shell-classic.desktop
272 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.classic-overrides.gschema.xml
273 %{_datadir}/gnome-session/sessions/gnome-classic.session
274 %dir %{_datadir}/gnome-shell/modes
275 %{_datadir}/gnome-shell/modes/classic.json
276 %{_datadir}/gnome-shell/theme/*.svg
277 %{_datadir}/gnome-shell/theme/gnome-classic.css
278 %{_datadir}/xsessions/gnome-classic.desktop
280 %files -n %{ext_prefix}-alternate-tab
281 %defattr(644,root,root,755)
282 %{_datadir}/gnome-shell/extensions/alternate-tab*
284 %files -n %{ext_prefix}-apps-menu
285 %defattr(644,root,root,755)
286 %{_datadir}/gnome-shell/extensions/apps-menu*
288 %files -n %{ext_prefix}-auto-move-windows
289 %defattr(644,root,root,755)
290 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.auto-move-windows.gschema.xml
291 %{_datadir}/gnome-shell/extensions/auto-move-windows*
293 %files -n %{ext_prefix}-drive-menu
294 %defattr(644,root,root,755)
295 %{_datadir}/gnome-shell/extensions/drive-menu*
297 %files -n %{ext_prefix}-launch-new-instance
298 %defattr(644,root,root,755)
299 %{_datadir}/gnome-shell/extensions/launch-new-instance*
301 %files -n %{ext_prefix}-native-window-placement
302 %defattr(644,root,root,755)
303 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.native-window-placement.gschema.xml
304 %{_datadir}/gnome-shell/extensions/native-window-placement*
306 %files -n %{ext_prefix}-places-menu
307 %defattr(644,root,root,755)
308 %{_datadir}/gnome-shell/extensions/places-menu*
310 %files -n %{ext_prefix}-systemMonitor
311 %defattr(644,root,root,755)
312 %{_datadir}/gnome-shell/extensions/systemMonitor*
314 %files -n %{ext_prefix}-user-theme
315 %defattr(644,root,root,755)
316 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.user-theme.gschema.xml
317 %{_datadir}/gnome-shell/extensions/user-theme*
319 %files -n %{ext_prefix}-window-list
320 %defattr(644,root,root,755)
321 %{_datadir}/gnome-shell/extensions/window-list*
322 %{_datadir}/glib-2.0/schemas/org.gnome.shell.extensions.window-list.gschema.xml
324 %files -n %{ext_prefix}-windowsNavigator
325 %defattr(644,root,root,755)
326 %{_datadir}/gnome-shell/extensions/windowsNavigator*
328 %files -n %{ext_prefix}-workspace-indicator
329 %defattr(644,root,root,755)
330 %{_datadir}/gnome-shell/extensions/workspace-indicator*