%global _internel_version 59e1e69 Name: cinnamon Version: 1.3.0 Release: 1%{?dist} Summary: Window management and application launching for GNOME Group: User Interface/Desktops License: GPLv2+ URL: http://cinnamon.linuxmint.com # To generate tarball # wget https://github.com/linuxmint/Cinnamon/tarball/1.3 -O cinnamon-1.3.0.tar.gz Source0: cinnamon-%{version}.tar.gz Source1: cinnamon.desktop Source2: cinnamon.session Source3: menu.png # Replace mint favorites with fedora gnome-shell defaults Patch0: cinnamon-favourite-apps-firefox.patch Patch1: menu.patch %define clutter_version 1.4.0 %define gobject_introspection_version 0.10.1 %define muffin_version 1.0.1 %define eds_version 2.91.6 %define json_glib_version 0.13.2 BuildRequires: clutter-devel >= %{clutter_version} BuildRequires: dbus-glib-devel BuildRequires: desktop-file-utils BuildRequires: evolution-data-server-devel >= %{eds_version} BuildRequires: gjs-devel >= 0.7.14-6 BuildRequires: glib2-devel BuildRequires: gnome-menus-devel >= 3.1.5-2.fc16 BuildRequires: gnome-desktop3-devel BuildRequires: gobject-introspection >= %{gobject_introspection_version} BuildRequires: json-glib-devel >= %{json_glib_version} BuildRequires: upower-devel BuildRequires: NetworkManager-glib-devel BuildRequires: polkit-devel BuildRequires: telepathy-glib-devel BuildRequires: telepathy-logger-devel >= 0.2.6 BuildRequires: GConf2 BuildRequires: libgudev1-devel # for screencast recorder functionality BuildRequires: gstreamer-devel BuildRequires: gtk3-devel BuildRequires: intltool BuildRequires: libcanberra-devel BuildRequires: libcroco-devel BuildRequires: folks-devel # for barriers BuildRequires: libXfixes-devel >= 5.0 # used in unused BigThemeImage BuildRequires: librsvg2-devel BuildRequires: muffin-devel >= %{muffin_version} BuildRequires: pulseaudio-libs-devel %ifnarch s390 s390x BuildRequires: gnome-bluetooth-libs-devel >= 2.91 BuildRequires: gnome-bluetooth >= 2.91 %endif # Bootstrap requirements BuildRequires: gtk-doc gnome-common Requires: gnome-menus%{?_isa} >= 3.0.0-2 # wrapper script uses to restart old GNOME session if run --replace # from the command line Requires: gobject-introspection%{?_isa} >= %{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%{?_isa} >= %{json_glib_version} # For $libdir/mozilla/plugins Requires: mozilla-filesystem%{?_isa} Requires: muffin%{?_isa} >= %{muffin_version} Requires: upower%{?_isa} Requires: polkit%{?_isa} >= 0.100 # needed for session files Requires: gnome-session # needed for schemas Requires: at-spi2-atk%{?_isa} Requires(pre): GConf2 Requires(post): GConf2 Requires(preun): GConf2 # might still be needed for on-screen keyboard Requires: caribou%{?_isa} # needed for settings Requires: pygobject2 Requires: dbus-python %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-%{_internel_version} %patch0 -p1 %patch1 -p1 # make changes for settings move to /usr/share mv files/usr/lib/cinnamon-settings files/usr/share rm -rf files/usr/lib sed -i -e 's@/usr/lib@/usr/share@g' files/usr/bin/cinnamon-settings \ files/usr/share/cinnamon-settings/cinnamon-settings.py # replace menu image rm -f data/theme/menu.png cp %SOURCE3 data/theme/menu.png # remove and replace the session files as they don't work with fedora (can't be bothered to patch it) rm -f files/usr/bin/gnome-session-cinnamon \ files/usr/share/xsessions/cinnamon.desktop \ files/usr/share/gnome-session/sessions/cinnamon.session cp %SOURCE1 files/usr/share/xsessions/ cp %SOURCE2 files/usr/share/gnome-session/sessions/ # files replaced with fedora files rm -f files/usr/share/desktop-directories/cinnamon-menu-applications.directory \ files/usr/share/desktop-directories/cinnamon-utility.directory \ files/usr/share/desktop-directories/cinnamon-utility-accessibility.directory \ files/usr/share/desktop-directories/cinnamon-development.directory \ files/usr/share/desktop-directories/cinnamon-education.directory \ files/usr/share/desktop-directories/cinnamon-game.directory \ files/usr/share/desktop-directories/cinnamon-graphics.directory \ files/usr/share/desktop-directories/cinnamon-network.directory \ files/usr/share/desktop-directories/cinnamon-audio-video.directory \ files/usr/share/desktop-directories/cinnamon-office.directory \ files/usr/share/desktop-directories/cinnamon-system-tools.directory \ files/usr/share/desktop-directories/cinnamon-other.directory %build export CFLAGS="$RPM_OPT_FLAGS -Wno-error=deprecated-declarations" NOCONFIGURE=1 ./autogen.sh %configure --disable-static make V=1 %{?_smp_mflags} %install export GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 make install DESTDIR=$RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT/%{_libdir}/mozilla/plugins/*.la desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/cinnamon.desktop desktop-file-install \ --add-category="Utility" \ --remove-category="DesktopSettings" \ --remove-key="Encoding" \ --add-only-show-in="GNOME" \ --delete-original \ --dir=$RPM_BUILD_ROOT%{_datadir}/applications \ $RPM_BUILD_ROOT%{_datadir}/applications/cinnamon-settings.desktop %find_lang %{name} %pre %gconf_schema_prepare cinnamon %post %gconf_schema_upgrade cinnamon %preun %gconf_schema_remove cinnamon glib-compile-schemas --allow-any-name %{_datadir}/glib-2.0/schemas ||: %posttrans glib-compile-schemas --allow-any-name %{_datadir}/glib-2.0/schemas ||: %files -f %{name}.lang %doc COPYING README %{_bindir}/cinnamon %{_bindir}/cinnamon-settings %{_bindir}/cinnamon-extension-tool %config %{_sysconfdir}/gconf/schemas/cinnamon.schemas %config %{_sysconfdir}/xdg/menus/cinnamon-applications.menu %config %{_sysconfdir}/xdg/menus/cinnamon-settings.menu %{_datadir}/desktop-directories/cinnamon-*.directory %{_datadir}/glib-2.0/schemas/*.xml %{_datadir}/applications/cinnamon.desktop %{_datadir}/applications/cinnamon-settings.desktop %{_datadir}/xsessions/cinnamon.desktop %{_datadir}/gnome-session/sessions/cinnamon.session %{_datadir}/cinnamon/ %{_datadir}/cinnamon-settings/ %{_datadir}/dbus-1/services/org.Cinnamon.CalendarServer.service %{_datadir}/dbus-1/services/org.Cinnamon.HotplugSniffer.service %{_libdir}/cinnamon/ %{_libdir}/mozilla/plugins/*.so %{_libexecdir}/cinnamon-calendar-server %{_libexecdir}/cinnamon-perf-helper %{_libexecdir}/cinnamon-hotplug-sniffer %{_mandir}/man1/%{name}.1.gz %changelog * Fri Feb 17 2012 Leigh Scott - 1.3.0-1 - update to 1.3.0 release * Mon Jan 22 2012 Leigh Scott - 1.2.0-1 - update to 1.2.0 release - add build requires muffin-devel - add Br libgudev1-devel - add only-show-in=GNOME to settings desktop file - make changes for source changes, applets, settings and session added - delete session files and use my own - move settings from lib to usr (it had no libs) - replace menu icon - change description * Wed Jan 04 2012 Leigh Scott - 1.1.3-2 - add requires gnome-session - clean up spec file ready for review * Mon Jan 02 2012 Leigh Scott - 1.1.3-1 - update to version 1.1.3 * Sun Jan 01 2012 Leigh Scott - 1.1.2-2 - fix firefox launchers * Fri Dec 30 2011 Leigh Scott - 1.1.2-1 - first build based on gnome-shell srpm - add session files