%global _internal_version 8a53cfb %define date 20130918 Name: cinnamon Version: 1.9.2 Release: %mkrel -c %{date}git%{_internal_version} 1 Summary: Window management and application launching for Cinnamon Group: Graphical desktop/Cinnamon # cinnamon-menu-editor is LGPLv2+ License: GPLv2+ and LGPLv2+ URL: http://cinnamon.linuxmint.com # To generate tarball Source0: %{name}-%{version}.git%{_internal_version}.tar.gz #SourceGet0: https://github.com/linuxmint/Cinnamon/tarball/%{_internal_version} Source1: cinnamon-mageia.gschema.override Source5: 10cinnamon Source6: 11cinnamon2d Patch0: background.patch Patch2: autostart_nemo.patch %global clutter_version 1.7.5 %global gobject_introspection_version 0.10.1 %global muffin_version 1.7.3 %global eds_version 2.91.6 %global json_glib_version 0.13.2 %global polkit_version 0.100 BuildRequires: pkgconfig(clutter-x11-1.0) >= %{clutter_version} BuildRequires: pkgconfig(dbus-glib-1) BuildRequires: desktop-file-utils BuildRequires: glib2-devel BuildRequires: pkgconfig(gconf-2.0) BuildRequires: pkgconfig(libgnome-menu-3.0) >= 3.1.5-2.fc16 BuildRequires: pkgconfig(gobject-introspection-1.0) >= %{gobject_introspection_version} BuildRequires: pkgconfig(json-glib-1.0) >= %{json_glib_version} BuildRequires: pkgconfig(libnm-glib) BuildRequires: pkgconfig(libnm-util) BuildRequires: pkgconfig(polkit-agent-1) >= %{polkit_version} BuildRequires: libgudev-devel # for screencast recorder functionality BuildRequires: pkgconfig(gstreamer-1.0) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: intltool BuildRequires: pkgconfig(libcanberra) BuildRequires: pkgconfig(libcroco-0.6) >= 0.6.2 BuildRequires: pkgconfig(gnome-keyring-1) BuildRequires: pkgconfig(libsoup-2.4) BuildRequires: pkgconfig(libnm-glib-vpn) BuildRequires: pkgconfig(libstartup-notification-1.0) # for barriers BuildRequires: pkgconfig(xfixes) >= 5.0 # used in unused BigThemeImage BuildRequires: librsvg2-devel BuildRequires: pkgconfig(libmuffin) >= %{muffin_version} BuildRequires: libpulseaudio-devel BuildRequires: gnome-bluetooth-devel >= 2.91 BuildRequires: gnome-bluetooth >= 2.91 # Bootstrap requirements BuildRequires: gtk-doc gnome-common BuildRequires: pkgconfig(libwacom) BuildRequires: pkgconfig(xorg-wacom) BuildRequires: pkgconfig(xtst) BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gio-unix-2.0) BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(gdk-x11-3.0) BuildRequires: pkgconfig(cjs-internals-1.0) BuildRequires: pkgconfig(gnome-desktop-3.0) >= 2.90.0 BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(cinnamon-desktop) Requires: gnome-menus >= 3.0.0-2 # wrapper script uses to restart old GNOME session if run --replace # from the command line Requires: gobject-introspection >= %{gobject_introspection_version} # needed for loading SVG's via gdk-pixbuf #Requires: librsvg2%{?_isa} # needed as it is now split from Clutter Requires: json-glib >= %{json_glib_version} # might be still be needed. Requires: muffin >= %{muffin_version} Requires: upower Requires: polkit >= 0.100 # needed for session files # cinnamon-session version fixes location of helper app Requires: cinnamon-session # needed for schemas Requires: at-spi2-atk # needed for on-screen keyboard Requires: caribou # needed for settings Requires: python-gobject Requires: dbus-python Requires: nautilus Requires: python-lxml Requires: gnome-python-gconf Requires: python-imaging Requires: python-pam Requires: python-pexpect Requires: python-pillow Requires: cinnamon-control-center Requires: cinnamon-screensaver Requires: cinnamon-translations # fix 10916 Requires: gnome-themes-standard # fix cinnamon startup crashes Requires: typelib(fontconfig) # include cjs introspection Requires: cjs %description Cinnamon is a Linux desktop which provides advanced innovative features and a traditional user experience. The desktop layout is similar to Gnome 2. The underlying technology is forked from Gnome Shell. The emphasis is put on making users feel at home and providing them with an easy to use and comfortable desktop experience. %prep %setup -q -n linuxmint-Cinnamon-%{_internal_version} %patch0 -p1 %patch2 -p1 # remove gschema rm -rf data/org.cinnamon.gschema.xml # make changes for settings move to /usr/share mv files/usr/lib/cinnamon-settings files%{_datadir} grep -r -l /usr/lib/cinnamon-settings files%{_datadir} files%{_bindir} | \ xargs sed -i -e 's@/usr/lib@/usr/share@g' sed -i -e 's@/usr/lib@/usr/share@g' js/ui/panel.js cinnamon.pot # make changes for menu-editor move to /usr/share mv files/usr/lib/cinnamon-menu-editor files%{_datadir} grep -r -l /usr/lib/cinnamon-menu-editor files%{_datadir} files%{_bindir} | \ xargs sed -i -e 's@/usr/lib@/usr/share@g' rm -rf files/usr/lib sed -i -e 's@-OOt@-t@g' files%{_bindir}/cinnamon-menu-editor # have cinnamon use mageia app system sed -i -e 's@cinnamon-applications@applications@g' src/cinnamon-app-system.c \ files/usr/share/cinnamon-menu-editor/cme/MenuEditor.py %{__mkdir_p} files%{_sysconfdir}/X11/wmsession.d install -pm 644 %SOURCE5 %SOURCE6 files%{_sysconfdir}/X11/wmsession.d # files replaced with mageia files rm -rf files%{_sysconfdir}/xdg rm -f files%{_datadir}/desktop-directories/cinnamon-{menu-applications,utility,utility-accessibility,development,education,game,graphics,network,audio-video,office,system-tools,other}.directory rm -f configure rm -rf debian/ NOCONFIGURE=1 ./autogen.sh %build export CFLAGS="$RPM_OPT_FLAGS -Wno-error=deprecated-declarations" %configure2_5x \ --disable-static \ --disable-rpath \ --enable-compile-warnings=yes \ --enable-introspection=yes %make V=1 %install %makeinstall_std # Remove .la file rm -rf %{buildroot}/%{_libdir}/cinnamon/libcinnamon.la install -D -m 0644 %{SOURCE1} $RPM_BUILD_ROOT/%{_datadir}/glib-2.0/schemas/cinnamon-mageia.gschema.override desktop-file-validate %{buildroot}%{_datadir}/applications/cinnamon.desktop desktop-file-validate %{buildroot}%{_datadir}/applications/cinnamon2d.desktop desktop-file-install \ --add-category="Utility" \ --remove-category="DesktopSettings" \ --remove-key="Encoding" \ --add-only-show-in="GNOME" \ --delete-original \ --dir=%{buildroot}%{_datadir}/applications \ %{buildroot}%{_datadir}/applications/* %find_lang %{name} %files -f %{name}.lang %doc COPYING README %{_bindir}/cinnamon %{_bindir}/cinnamon-looking-glass %{_bindir}/cinnamon2d %{_bindir}/cinnamon-desktop-editor %{_bindir}/cinnamon-settings-users %{_bindir}/cinnamon-session-cinnamon %{_bindir}/cinnamon-session-cinnamon2d %{_bindir}/cinnamon-launcher %{_bindir}/cinnamon-menu-editor %{_bindir}/cinnamon-settings %{_bindir}/cinnamon-extension-tool %{_bindir}/cinnamon-screensaver-lock-dialog %{_bindir}/cinnamon-json-makepot %{_sysconfdir}/X11/wmsession.d/*cinnamon* %{_datadir}/desktop-directories/cinnamon-*.directory %{_datadir}/glib-2.0/schemas/* %{_datadir}/applications/cinnamon.desktop %{_datadir}/applications/cinnamon2d.desktop %{_datadir}/applications/cinnamon-settings.desktop %{_datadir}/applications/cinnamon-settings-users.desktop %{_datadir}/applications/cinnamon-add-panel-launcher.desktop %{_datadir}/applications/cinnamon-menu-editor.desktop %{_datadir}/xsessions/cinnamon*.desktop %{_datadir}/cinnamon-session/sessions/cinnamon*.session %{_datadir}/cinnamon/ %{_datadir}/cinnamon-menu-editor/ %{_datadir}/cinnamon-settings/ %{_datadir}/dbus-1/services/org.Cinnamon.HotplugSniffer.service %{_libdir}/cinnamon/ %{_libexecdir}/cinnamon/cinnamon-perf-helper %{_libexecdir}/cinnamon/cinnamon-hotplug-sniffer %{_mandir}/man1/*.1.*