1 %define clutter_version 1.12.2
2 %define cjs_version 2.3.1
3 %define cinnamon_desktop_version 2.3.0
4 %define gobject_introspection_version 1.34.2
5 %define muffin_version 2.3.0
6 %define json_glib_version 0.13.2
7 Summary: Window management and application launching for GNOME
11 License: GPL v2+ and LGPL v2+
12 Group: X11/Applications
13 Source0: https://github.com/linuxmint/Cinnamon/archive/%{version}/%{name}-%{version}.tar.gz
14 # Source0-md5: 3ef4250eb889c4f8e99e85601a6d750d
15 Source1: polkit-%{name}-authentication-agent-1.desktop
16 Source2: %{name}-fedora.gschema.override
17 Patch0: background.patch
18 Patch1: autostart.patch
19 Patch2: %{name}-settings-apps.patch
20 Patch3: set_wheel.patch
21 Patch4: network-user-connections.patch
22 Patch5: revert_25aef37.patch
23 Patch6: %{name}-gtk-3.14.patch
24 Patch7: default_panal_launcher.patch
25 Patch8: remove_session_bits.patch
26 Patch9: show_brightness_fix.patch
27 URL: http://cinnamon.linuxmint.com/
28 BuildRequires: GConf2-devel
29 BuildRequires: NetworkManager-devel
30 BuildRequires: cinnamon-desktop-devel >= %{cinnamon_desktop_version}
31 BuildRequires: cinnamon-menus-devel
32 BuildRequires: cjs-devel >= %{cjs_version}
33 BuildRequires: clutter-devel >= %{clutter_version}
34 BuildRequires: dbus-glib-devel
35 BuildRequires: desktop-file-utils
36 BuildRequires: gnome-menus-devel
37 BuildRequires: gobject-introspection >= %{gobject_introspection_version}
38 BuildRequires: json-glib-devel >= %{json_glib_version}
39 BuildRequires: polkit-devel
40 BuildRequires: udev-glib-devel
41 BuildRequires: upower-devel
42 # for screencast recorder functionality
43 BuildRequires: gstreamer-devel
44 BuildRequires: intltool
45 BuildRequires: libcanberra-devel
46 BuildRequires: libcroco-devel
47 BuildRequires: libgnome-keyring-devel
48 BuildRequires: libsoup-devel
49 # used in unused BigThemeImage
50 BuildRequires: librsvg-devel
51 BuildRequires: muffin-devel >= %{muffin_version}
52 BuildRequires: pulseaudio-devel
53 # Bootstrap requirements
54 BuildRequires: gnome-common
55 BuildRequires: gtk-doc
57 BuildRequires: colord-devel
58 BuildRequires: lcms2-devel
59 BuildRequires: libnotify-devel
60 BuildRequires: libwacom-devel
61 BuildRequires: xorg-driver-input-wacom-devel
62 BuildRequires: xorg-lib-libXtst-devel
63 Requires: gnome-menus >= 3.0.0-2
64 Requires: muffin >= %{muffin_version}
65 # wrapper script uses to restart old GNOME session if run --replace
66 # from the command line
67 Requires: gobject-introspection >= %{gobject_introspection_version}
68 # needed for loading SVG's via gdk-pixbuf
70 # needed as it is now split from Clutter
71 Requires: json-glib >= %{json_glib_version}
72 Requires: polkit >= 0.100
74 # needed for session files
75 Requires: cinnamon-session
78 # needed for on-screen keyboard
80 # needed for the user menu
81 Requires: accountsservice-libs
84 Requires: cinnamon-control-center
85 Requires: cinnamon-translations
87 Requires: opencv-python
89 Requires: python-gnome-gconf
91 Requires: python-pexpect
92 Requires: python-pillow
93 Requires: python-pygobject
94 # RequiredComponents in the session files
95 Requires: cinnamon-screensaver
98 # metacity is needed for fallback
102 # needed for theme overrides
103 Requires: gnome-themes
104 Requires: nimbus-icon-theme
105 Requires: zukitwo-gtk2-theme
106 Requires: zukitwo-gtk3-theme
108 # required for keyboard applet
111 # required for network applet
112 Requires: network-manager-applet
113 Requires: nm-connection-editor
115 # required for looking glass
116 Requires: python-inotify
118 Provides: desktop-notification-daemon
119 Obsoletes: cinnamon <= 1.8.0-1
120 Obsoletes: cinnamon-2d
121 Obsoletes: cinnamon-menu-editor
122 Obsoletes: cinnamon-settings
125 Cinnamon is a Linux desktop which provides advanced innovative
126 features and a traditional user experience.
128 The desktop layout is similar to Gnome 2. The underlying technology is
129 forked from Gnome Shell. The emphasis is put on making users feel at
130 home and providing them with an easy to use and comfortable desktop
134 %setup -q -n Cinnamon-%{version}
146 sed -i -e 's@gksu@pkexec@g' files/usr/bin/cinnamon-settings-users
148 # cleanup backups after patching
149 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
152 NOCONFIGURE=1 ./autogen.sh
154 --disable-silent-rules \
157 --disable-schemas-compile \
158 --enable-introspection=yes \
159 --enable-compile-warnings=no
164 rm -rf $RPM_BUILD_ROOT
166 DESTDIR=$RPM_BUILD_ROOT
168 # Remove shebang from files
169 sed -i -e '1{\@^#!%{_bindir}/env python@d}' $RPM_BUILD_ROOT%{_prefix}/lib/cinnamon-settings/*/*.py
172 chmod +x $RPM_BUILD_ROOT%{_prefix}/lib/cinnamon-settings/bin/{install,remove}Schema.py
175 %{__rm} $RPM_BUILD_ROOT%{_libdir}/cinnamon/libcinnamon.la
176 %{__rm} $RPM_BUILD_ROOT%{_libdir}/cinnamon/libcinnamon-js.la
178 install -D %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/glib-2.0/schemas/cinnamon-fedora.gschema.override
180 # install polkik autostart desktop file
181 install -D -p %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
183 desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/cinnamon.desktop
184 desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/cinnamon2d.desktop
185 desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/cinnamon-settings*.desktop
186 desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/cinnamon-menu-editor.desktop
187 desktop-file-validate $RPM_BUILD_ROOT%{_desktopdir}/polkit-cinnamon-authentication-agent-1.desktop
190 sed -i -e 's@/usr/lib/cinnamon-control-center@%{_libdir}/cinnamon-control-center@g' \
191 $RPM_BUILD_ROOT%{_prefix}/lib/cinnamon-settings/bin/capi.py
193 # create directory for lang files
194 install -d $RPM_BUILD_ROOT%{_datadir}/cinnamon/locale
196 # to fix man page brp check
197 touch $RPM_BUILD_ROOT%{_mandir}/man1/gnome-session.1
200 rm -rf $RPM_BUILD_ROOT
203 %update_icon_cache hicolor
206 if [ $1 -eq 0 ]; then
207 %update_icon_cache hicolor
208 %glib_compile_schemas
212 %update_icon_cache hicolor
213 %glib_compile_schemas
216 %defattr(644,root,root,755)
217 %doc COPYING README NEWS AUTHORS
218 /etc/xdg/menus/cinnamon-applications-merged
219 /etc/xdg/menus/cinnamon-applications.menu
220 %attr(755,root,root) %{_bindir}/cinnamon
221 %attr(755,root,root) %{_bindir}/cinnamon-desktop-editor
222 %attr(755,root,root) %{_bindir}/cinnamon-extension-tool
223 %attr(755,root,root) %{_bindir}/cinnamon-json-makepot
224 %attr(755,root,root) %{_bindir}/cinnamon-launcher
225 %attr(755,root,root) %{_bindir}/cinnamon-looking-glass
226 %attr(755,root,root) %{_bindir}/cinnamon-menu-editor
227 %attr(755,root,root) %{_bindir}/cinnamon-preview-gtk-theme
228 %attr(755,root,root) %{_bindir}/cinnamon-screensaver-lock-dialog
229 %attr(755,root,root) %{_bindir}/cinnamon-session-cinnamon
230 %attr(755,root,root) %{_bindir}/cinnamon-session-cinnamon2d
231 %attr(755,root,root) %{_bindir}/cinnamon-settings
232 %attr(755,root,root) %{_bindir}/cinnamon-settings-users
233 %attr(755,root,root) %{_bindir}/cinnamon-slideshow
234 %attr(755,root,root) %{_bindir}/cinnamon2d
235 %{_mandir}/man1/cinnamon-extension-tool.1*
236 %{_mandir}/man1/cinnamon-launcher.1*
237 %{_mandir}/man1/cinnamon-menu-editor.1*
238 %{_mandir}/man1/cinnamon-settings.1*
239 %{_mandir}/man1/cinnamon.1*
240 %{_mandir}/man1/cinnamon2d.1
241 %{_mandir}/man1/gnome-session-cinnamon.1
242 %{_mandir}/man1/gnome-session-cinnamon2d.1
243 %{_mandir}/man1/gnome-session.1
244 %{_desktopdir}/cinnamon-menu-editor.desktop
245 %{_desktopdir}/cinnamon-settings*.desktop
246 %{_desktopdir}/cinnamon.desktop
247 %{_desktopdir}/cinnamon2d.desktop
248 %{_desktopdir}/polkit-cinnamon-authentication-agent-1.desktop
249 %{_datadir}/dbus-1/services/org.Cinnamon.HotplugSniffer.service
250 %{_datadir}/dbus-1/services/org.Cinnamon.Melange.service
251 %{_datadir}/dbus-1/services/org.Cinnamon.Slideshow.service
252 %{_datadir}/desktop-directories/cinnamon-*.directory
253 %{_datadir}/glib-2.0/schemas/cinnamon-fedora.gschema.override
254 %{_datadir}/glib-2.0/schemas/org.cinnamon.gschema.xml
255 %{_datadir}/cinnamon-session/sessions/cinnamon.session
256 %{_datadir}/cinnamon-session/sessions/cinnamon2d.session
257 %{_iconsdir}/hicolor/*/categories/*.svg
258 %{_iconsdir}/hicolor/*/emblems/cs-*.svg
259 %{_datadir}/polkit-1/actions/org.cinnamon.settings-users.policy
260 %{_datadir}/xsessions/cinnamon.desktop
261 %{_datadir}/xsessions/cinnamon2d.desktop
263 %dir %{_libdir}/cinnamon
264 %{_libdir}/cinnamon/Cinnamon-0.1.typelib
265 %{_libdir}/cinnamon/CinnamonJS-0.1.typelib
266 %{_libdir}/cinnamon/Gvc-1.0.typelib
267 %{_libdir}/cinnamon/St-1.0.typelib
268 %{_libdir}/cinnamon/cinnamon-hotplug-sniffer
269 %{_libdir}/cinnamon/cinnamon-perf-helper
271 %attr(755,root,root) %{_libdir}/cinnamon/libcinnamon-js.so
272 %attr(755,root,root) %{_libdir}/cinnamon/libcinnamon.so
274 %dir %{_datadir}/cinnamon
275 %{_datadir}/cinnamon/applets
276 %{_datadir}/cinnamon/bumpmaps
277 %{_datadir}/cinnamon/desklets
278 %{_datadir}/cinnamon/faces
279 %{_datadir}/cinnamon/icons
280 %{_datadir}/cinnamon/js
281 %{_datadir}/cinnamon/search_providers
282 %{_datadir}/cinnamon/theme
283 %{_datadir}/cinnamon/thumbnails
285 %{_prefix}/lib/cinnamon-desktop-editor
286 %{_prefix}/lib/cinnamon-json-makepot
287 %{_prefix}/lib/cinnamon-looking-glass
288 %{_prefix}/lib/cinnamon-menu-editor
289 %{_prefix}/lib/cinnamon-screensaver-lock-dialog
290 %{_prefix}/lib/cinnamon-settings-users
291 %dir %{_prefix}/lib/cinnamon-settings
292 %dir %{_prefix}/lib/cinnamon-settings/bin
293 %{_prefix}/lib/cinnamon-settings/bin/*.ui
294 %attr(755,root,root) %{_prefix}/lib/cinnamon-settings/bin/*.py
295 %{_prefix}/lib/cinnamon-settings/*.ui
296 %{_prefix}/lib/cinnamon-settings/*.py
297 %{_prefix}/lib/cinnamon-settings/data
298 %{_prefix}/lib/cinnamon-settings/modules
299 %{_prefix}/lib/cinnamon-slideshow