1 |
%global _internal_version 056cf22 |
2 |
|
3 |
%{?filter_setup: |
4 |
%filter_from_provides /^libcinnamon.so/d; |
5 |
%filter_from_requires /^libcinnamon.so/d; |
6 |
%filter_setup |
7 |
} |
8 |
|
9 |
Name: cinnamon |
10 |
Version: 1.8.2 |
11 |
Release: %mkrel 1 |
12 |
Summary: Window management and application launching for GNOME |
13 |
|
14 |
Group: Graphical desktop/GNOME |
15 |
# cinnamon-menu-editor is LGPLv2+ |
16 |
License: GPLv2+ and LGPLv2+ |
17 |
URL: http://cinnamon.linuxmint.com |
18 |
# To generate tarball |
19 |
# wget https://github.com/linuxmint/Cinnamon/tarball/%%{_internal_version} -O cinnamon-%%{version}.git%%{_internal_version}.tar.gz |
20 |
Source: cinnamon-%{version}.tar.gz |
21 |
Source5: 10cinnamon |
22 |
Source6: 11cinnamon2d |
23 |
|
24 |
# Fix menu structure |
25 |
#Patch0: cinnamon-1.4.1_menu.patch |
26 |
Patch1: cinnamon-1.5.0_datetime_setting.patch |
27 |
#Patch6: cinnamon-rm-thread-init.patch |
28 |
|
29 |
# upstream patches and pending pulls |
30 |
#Patch7: cinnamon-muffin-api.patch |
31 |
#Patch8: cinnamon-menu-speedup.patch |
32 |
|
33 |
|
34 |
%global clutter_version 1.7.5 |
35 |
%global gobject_introspection_version 0.10.1 |
36 |
%global muffin_version 1.7.3 |
37 |
%global eds_version 2.91.6 |
38 |
%global json_glib_version 0.13.2 |
39 |
|
40 |
|
41 |
BuildRequires: clutter-devel >= %{clutter_version} |
42 |
BuildRequires: dbus-glib-devel |
43 |
BuildRequires: desktop-file-utils |
44 |
BuildRequires: gjs-devel >= 0.7.14-6 |
45 |
BuildRequires: glib2-devel |
46 |
BuildRequires: libGConf2-devel |
47 |
BuildRequires: gnome-menus-devel >= 3.1.5-2.fc16 |
48 |
BuildRequires: gnome-desktop3-devel |
49 |
BuildRequires: gobject-introspection >= %{gobject_introspection_version} |
50 |
BuildRequires: pkgconfig(json-glib-1.0) >= %{json_glib_version} |
51 |
BuildRequires: upower-devel |
52 |
BuildRequires: pkgconfig(libnm-glib) |
53 |
BuildRequires: polkit-1-devel |
54 |
BuildRequires: libgudev-devel |
55 |
# for screencast recorder functionality |
56 |
BuildRequires: pkgconfig(gstreamer-1.0) |
57 |
BuildRequires: gtk+3-devel |
58 |
BuildRequires: intltool |
59 |
BuildRequires: libcanberra-devel |
60 |
BuildRequires: libcroco-devel |
61 |
BuildRequires: libgnome-keyring-devel |
62 |
BuildRequires: libsoup-devel |
63 |
BuildRequires: pkgconfig(libnm-glib-vpn) |
64 |
|
65 |
|
66 |
# for barriers |
67 |
BuildRequires: libxfixes-devel >= 5.0 |
68 |
# used in unused BigThemeImage |
69 |
BuildRequires: librsvg2-devel |
70 |
BuildRequires: muffin-devel >= %{muffin_version} |
71 |
BuildRequires: libpulseaudio-devel |
72 |
%ifnarch s390 s390x |
73 |
BuildRequires: gnome-bluetooth-devel >= 2.91 |
74 |
BuildRequires: gnome-bluetooth >= 2.91 |
75 |
%endif |
76 |
# Bootstrap requirements |
77 |
BuildRequires: gtk-doc gnome-common |
78 |
Requires: gnome-menus%{?_isa} >= 3.0.0-2 |
79 |
# wrapper script uses to restart old GNOME session if run --replace |
80 |
# from the command line |
81 |
Requires: gobject-introspection%{?_isa} >= %{gobject_introspection_version} |
82 |
# needed for loading SVG's via gdk-pixbuf |
83 |
#Requires: librsvg2%{?_isa} |
84 |
# needed as it is now split from Clutter |
85 |
Requires: json-glib%{?_isa} >= %{json_glib_version} |
86 |
# might be still be needed. |
87 |
Requires: muffin%{?_isa} >= %{muffin_version} |
88 |
Requires: upower%{?_isa} |
89 |
Requires: polkit%{?_isa} >= 0.100 |
90 |
# needed for session files |
91 |
# gnome-session version fixes location of helper app |
92 |
Requires: gnome-session >= 3.6.2-2.mga3 |
93 |
# needed for schemas |
94 |
Requires: at-spi2-atk |
95 |
# needed for on-screen keyboard |
96 |
Requires: caribou%{?_isa} |
97 |
# needed for settings |
98 |
Requires: python-gobject |
99 |
Requires: dbus-python |
100 |
Requires: nautilus |
101 |
Requires: python-lxml |
102 |
Requires: gnome-python-gconf |
103 |
Requires: python-imaging |
104 |
# needed for cinnamon-menu |
105 |
# https://bugzilla.redhat.com/show_bug.cgi?id=872694 |
106 |
#Requires: gnome-panel |
107 |
|
108 |
#Filter out private typelib. Muffin has an internal Meta |
109 |
#symbol that can conflict with mutter. This removes that |
110 |
#symbol from the RPM. |
111 |
|
112 |
%define _requires_exceptions typelib(Meta) |
113 |
|
114 |
%description |
115 |
Cinnamon is a Linux desktop which provides advanced |
116 |
innovative features and a traditional user experience. |
117 |
|
118 |
The desktop layout is similar to Gnome 2. |
119 |
The underlying technology is forked from Gnome Shell. |
120 |
The emphasis is put on making users feel at home and providing |
121 |
them with an easy to use and comfortable desktop experience. |
122 |
|
123 |
%prep |
124 |
%setup -q -n linuxmint-Cinnamon-%{_internal_version} |
125 |
#%patch0 -p1 |
126 |
%patch1 -p1 |
127 |
#%patch6 -p1 |
128 |
#%patch7 -p1 |
129 |
#%patch8 -p1 |
130 |
|
131 |
# upstream patches and pending pulls |
132 |
|
133 |
# remove gschema |
134 |
rm -rf data/org.cinnamon.gschema.xml |
135 |
# make changes for settings move to /usr/share |
136 |
mv files/usr/lib/cinnamon-settings files%{_datadir} |
137 |
sed -i -e 's@/usr/lib@/usr/share@g' files%{_bindir}/cinnamon-settings \ |
138 |
files%{_datadir}/cinnamon-settings/cinnamon-settings.py \ |
139 |
js/ui/panel.js cinnamon.pot |
140 |
# make changes for menu-editor move to /usr/share |
141 |
mv files/usr/lib/cinnamon-menu-editor files%{_datadir} |
142 |
rm -rf files/usr/lib |
143 |
#sed -i -e 's@/usr/lib@/usr/share@g' files%{_bindir}/cinnamon-menu-editor \ |
144 |
# files%{_datadir}/cinnamon-menu-editor/Alacarte/MainWindow.py |
145 |
sed -i -e 's@-OOt@-t@g' files%{_bindir}/cinnamon-menu-editor |
146 |
sed -i -e 's@/usr/lib/gnome-session@%{_libexecdir}@g' files%{_datadir}/gnome-session/sessions/cinnamon.session |
147 |
%{__mkdir_p} files%{_sysconfdir}/X11/wmsession.d |
148 |
install -pm 644 %SOURCE5 %SOURCE6 files%{_sysconfdir}/X11/wmsession.d |
149 |
# files replaced with fedora files |
150 |
rm -f files%{_datadir}/desktop-directories/cinnamon-{menu-applications,utility,utility-accessibility,development,education,game,graphics,network,audio-video,office,system-tools,other}.directory |
151 |
|
152 |
rm -f configure |
153 |
rm -rf debian/ |
154 |
|
155 |
NOCONFIGURE=1 ./autogen.sh |
156 |
|
157 |
%build |
158 |
export CFLAGS="$RPM_OPT_FLAGS -Wno-error=deprecated-declarations" |
159 |
%configure2_5x --disable-static --enable-compile-warnings=yes |
160 |
%make V=1 |
161 |
|
162 |
%install |
163 |
%make install DESTDIR=$RPM_BUILD_ROOT INSTALL='install -p' |
164 |
|
165 |
# Remove .la file |
166 |
rm -rf $RPM_BUILD_ROOT/%{_libdir}/cinnamon/libcinnamon.la |
167 |
|
168 |
# Remove firefox plugin |
169 |
rm -rf $RPM_BUILD_ROOT/%{_libdir}/mozilla |
170 |
|
171 |
desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/cinnamon.desktop |
172 |
desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/cinnamon2d.desktop |
173 |
|
174 |
desktop-file-install \ |
175 |
--add-category="Utility" \ |
176 |
--remove-category="DesktopSettings" \ |
177 |
--remove-key="Encoding" \ |
178 |
--add-only-show-in="GNOME" \ |
179 |
--delete-original \ |
180 |
--dir=$RPM_BUILD_ROOT%{_datadir}/applications \ |
181 |
$RPM_BUILD_ROOT%{_datadir}/applications/* |
182 |
|
183 |
|
184 |
%find_lang %{name} |
185 |
|
186 |
%postun |
187 |
if [ $1 -eq 0 ] ; then |
188 |
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || : |
189 |
fi |
190 |
|
191 |
%posttrans |
192 |
/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || : |
193 |
|
194 |
%files -f %{name}.lang |
195 |
%doc COPYING README |
196 |
%{_bindir}/cinnamon |
197 |
%{_bindir}/cinnamon-looking-glass |
198 |
%{_bindir}/cinnamon2d |
199 |
%{_bindir}/gnome-session-cinnamon |
200 |
%{_bindir}/gnome-session-cinnamon2d |
201 |
%{_bindir}/cinnamon-launcher |
202 |
%{_bindir}/cinnamon-menu-editor |
203 |
%{_bindir}/cinnamon-settings |
204 |
%{_bindir}/cinnamon-extension-tool |
205 |
%{_bindir}/cinnamon-screensaver-lock-dialog |
206 |
%{_sysconfdir}/xdg/menus/cinnamon-applications.menu |
207 |
%{_sysconfdir}/xdg/menus/cinnamon-applications-merged |
208 |
%{_sysconfdir}/X11/wmsession.d/*cinnamon* |
209 |
%{_datadir}/desktop-directories/cinnamon-*.directory |
210 |
%{_datadir}/glib-2.0/schemas/*.xml |
211 |
%{_datadir}/applications/cinnamon.desktop |
212 |
%{_datadir}/applications/cinnamon2d.desktop |
213 |
%{_datadir}/applications/cinnamon-settings.desktop |
214 |
%{_datadir}/applications/cinnamon-add-panel-launcher.desktop |
215 |
%{_datadir}/applications/cinnamon-menu-editor.desktop |
216 |
%{_datadir}/xsessions/cinnamon*.desktop |
217 |
%{_datadir}/gnome-session/sessions/cinnamon*.session |
218 |
%{_datadir}/cinnamon/ |
219 |
%{_datadir}/cinnamon-menu-editor/ |
220 |
%{_datadir}/cinnamon-settings/ |
221 |
%{_datadir}/dbus-1/services/org.Cinnamon.HotplugSniffer.service |
222 |
%{_libdir}/cinnamon/ |
223 |
%{_libexecdir}/cinnamon/cinnamon-perf-helper |
224 |
%{_libexecdir}/cinnamon/cinnamon-hotplug-sniffer |
225 |
%{_mandir}/man1/*.1.* |
226 |
|
227 |
|