diff options
author | Romain Perier <mrpouet@gentoo.org> | 2009-09-28 13:09:56 +0000 |
---|---|---|
committer | Romain Perier <mrpouet@gentoo.org> | 2009-09-28 13:09:56 +0000 |
commit | 43bd56f60f8c256827c4971f2fb530109eaaaf3e (patch) | |
tree | 5cefd6fa33c0b0d82d2847edaf3328170fa23162 /gnome-base | |
parent | Version bump (from kde-overlay). (diff) | |
download | gentoo-2-43bd56f60f8c256827c4971f2fb530109eaaaf3e.tar.gz gentoo-2-43bd56f60f8c256827c4971f2fb530109eaaaf3e.tar.bz2 gentoo-2-43bd56f60f8c256827c4971f2fb530109eaaaf3e.zip |
Version bump, which includes fix for duplicates id in nautilus-file-management-properties (bug #286312). Apply this fix to 2.26.3, import patch from upstream (see distributor ML) which fixes massive memory consumption by Nautilus for larger zoom levels.
(Portage version: 2.2_rc42/cvs/Linux x86_64)
Diffstat (limited to 'gnome-base')
5 files changed, 314 insertions, 1 deletions
diff --git a/gnome-base/nautilus/ChangeLog b/gnome-base/nautilus/ChangeLog index 00ae18724057..ff591a236982 100644 --- a/gnome-base/nautilus/ChangeLog +++ b/gnome-base/nautilus/ChangeLog @@ -1,6 +1,19 @@ # ChangeLog for gnome-base/nautilus # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/gnome-base/nautilus/ChangeLog,v 1.316 2009/05/30 23:41:17 ranger Exp $ +# $Header: /var/cvsroot/gentoo-x86/gnome-base/nautilus/ChangeLog,v 1.317 2009/09/28 13:09:56 mrpouet Exp $ + +*nautilus-2.26.4 (28 Sep 2009) +*nautilus-2.26.3-r1 (28 Sep 2009) + + 28 Sep 2009; Romain Perier <mrpouet@gentoo.org> + +nautilus-2.26.3-r1.ebuild, + +files/nautilus-2.26.3-file-management-properties-ui-dup-id.patch, + +files/nautilus-2.26.3-thumbnail-zoom-level.patch, + +nautilus-2.26.4.ebuild: + Version bump, which includes fix for duplicates id in + nautilus-file-management-properties (bug #286312). Apply this fix to + 2.26.3, import patch from upstream (see distributor ML) which fixes + massive memory consumption by Nautilus for larger zoom levels. 30 May 2009; Brent Baude <ranger@gentoo.org> nautilus-2.26.3.ebuild: Marking nautilus-2.26.3 ~ppc64 for bug 269309 diff --git a/gnome-base/nautilus/files/nautilus-2.26.3-file-management-properties-ui-dup-id.patch b/gnome-base/nautilus/files/nautilus-2.26.3-file-management-properties-ui-dup-id.patch new file mode 100644 index 000000000000..5ff2d0534fad --- /dev/null +++ b/gnome-base/nautilus/files/nautilus-2.26.3-file-management-properties-ui-dup-id.patch @@ -0,0 +1,22 @@ +From bf6bfde36bcadf43a39fb095650b7fc78741d62a Mon Sep 17 00:00:00 2001 +From: Matthias Clasen <mclasen@redhat.com> +Date: Thu, 27 Aug 2009 00:05:28 +0000 +Subject: Fix a duplicate id in a .ui file + +This caused nautilus-file-management-properties to crash. +--- +diff --git a/src/nautilus-file-management-properties.ui b/src/nautilus-file-management-properties.ui +index eae16d1..c4fb6ee 100644 +--- a/src/nautilus-file-management-properties.ui ++++ b/src/nautilus-file-management-properties.ui +@@ -1128,7 +1128,7 @@ + </packing> + </child> + <child> +- <object class="GtkLabel" id="label"> ++ <object class="GtkLabel" id="label99"> + <property name="height_request">6</property> + <property name="visible">True</property> + <property name="label" translatable="yes"/> +-- +cgit v0.8.2 diff --git a/gnome-base/nautilus/files/nautilus-2.26.3-thumbnail-zoom-level.patch b/gnome-base/nautilus/files/nautilus-2.26.3-thumbnail-zoom-level.patch new file mode 100644 index 000000000000..9950d614e522 --- /dev/null +++ b/gnome-base/nautilus/files/nautilus-2.26.3-thumbnail-zoom-level.patch @@ -0,0 +1,88 @@ +From a8097e57788ad735227489e6c51d06bedc796889 Mon Sep 17 00:00:00 2001 +From: Alexander Larsson <alexl@redhat.com> +Date: Fri, 18 Sep 2009 09:05:44 +0000 +Subject: [PATCH] Do not load files for thumbnailing that we can not thumbnail anyway + +When zooming out we read the real image and use that as the thumbnail. However, we should only do this for files gdk-pixbuf can read as other things can't be read anyway and may potentially be very large (such as videos) since the thumbnail size limit only applies for images. + +--- + libnautilus-private/nautilus-file.c | 3 +- + libnautilus-private/nautilus-thumbnails.c | 30 +++++++++++++++++++++++----- + libnautilus-private/nautilus-thumbnails.h | 1 + + 3 files changed, 27 insertions(+), 7 deletions(-) + +diff --git a/libnautilus-private/nautilus-file.c b/libnautilus-private/nautilus-file.c +index fb6d92b..a2a84f0 100644 +--- a/libnautilus-private/nautilus-file.c ++++ b/libnautilus-private/nautilus-file.c +@@ -3588,7 +3588,8 @@ nautilus_file_get_icon (NautilusFile *file, + since the zoom level 150% gives thumbnails at 144, which is + ok to scale up from 128. */ + if (modified_size > 128*1.25 && +- !file->details->thumbnail_wants_original) { ++ !file->details->thumbnail_wants_original && ++ nautilus_can_thumbnail_internally (file)) { + /* Invalidate if we resize upward */ + file->details->thumbnail_wants_original = TRUE; + nautilus_file_invalidate_attributes (file, NAUTILUS_FILE_ATTRIBUTE_THUMBNAIL); +diff --git a/libnautilus-private/nautilus-thumbnails.c b/libnautilus-private/nautilus-thumbnails.c +index f064135..2a3fede 100644 +--- a/libnautilus-private/nautilus-thumbnails.c ++++ b/libnautilus-private/nautilus-thumbnails.c +@@ -765,17 +765,35 @@ get_types_table (void) + return image_mime_types; + } + +-gboolean +-nautilus_thumbnail_is_mimetype_limited_by_size (const char *mime_type) ++static gboolean ++pixbuf_can_load_type (const char *mime_type) + { + GHashTable *image_mime_types; +- ++ + image_mime_types = get_types_table (); +- if (g_hash_table_lookup (image_mime_types, mime_type)) { +- return TRUE; ++ if (g_hash_table_lookup (image_mime_types, mime_type)) { ++ return TRUE; + } + +- return FALSE; ++ return FALSE; ++} ++ ++gboolean ++nautilus_can_thumbnail_internally (NautilusFile *file) ++{ ++ char *mime_type; ++ gboolean res; ++ ++ mime_type = nautilus_file_get_mime_type (file); ++ res = pixbuf_can_load_type (mime_type); ++ g_free (mime_type); ++ return res; ++} ++ ++gboolean ++nautilus_thumbnail_is_mimetype_limited_by_size (const char *mime_type) ++{ ++ return pixbuf_can_load_type (mime_type); + } + + gboolean +diff --git a/libnautilus-private/nautilus-thumbnails.h b/libnautilus-private/nautilus-thumbnails.h +index 82007ba..715133b 100644 +--- a/libnautilus-private/nautilus-thumbnails.h ++++ b/libnautilus-private/nautilus-thumbnails.h +@@ -46,6 +46,7 @@ typedef void (* NautilusThumbnailAsyncLoadFunc) (NautilusThumbnailAsyncLoadHandl + /* Returns NULL if there's no thumbnail yet. */ + void nautilus_create_thumbnail (NautilusFile *file); + gboolean nautilus_can_thumbnail (NautilusFile *file); ++gboolean nautilus_can_thumbnail_internally (NautilusFile *file); + gboolean nautilus_has_valid_failed_thumbnail (NautilusFile *file); + gboolean nautilus_thumbnail_is_mimetype_limited_by_size + (const char *mime_type); +-- +1.6.5.rc1 + diff --git a/gnome-base/nautilus/nautilus-2.26.3-r1.ebuild b/gnome-base/nautilus/nautilus-2.26.3-r1.ebuild new file mode 100644 index 000000000000..6cf6a5d4eeed --- /dev/null +++ b/gnome-base/nautilus/nautilus-2.26.3-r1.ebuild @@ -0,0 +1,96 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/gnome-base/nautilus/nautilus-2.26.3-r1.ebuild,v 1.1 2009/09/28 13:09:56 mrpouet Exp $ + +EAPI="2" + +inherit gnome2 eutils virtualx + +DESCRIPTION="A file manager for the GNOME desktop" +HOMEPAGE="http://www.gnome.org/projects/nautilus/" + +LICENSE="GPL-2 LGPL-2 FDL-1.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="beagle doc gnome tracker xmp" + +# not adding gnome-base/gail because it is in gtk+ +RDEPEND=">=dev-libs/glib-2.19.0 + >=gnome-base/gnome-desktop-2.25.5 + >=x11-libs/pango-1.1.2 + >=x11-libs/gtk+-2.16.0 + >=dev-libs/libxml2-2.4.7 + >=media-libs/libexif-0.5.12 + >=gnome-base/gconf-2.0 + >=gnome-base/gvfs-0.1.2 + dev-libs/libunique + dev-libs/dbus-glib + x11-libs/libXft + x11-libs/libXrender + beagle? ( || ( + dev-libs/libbeagle + =app-misc/beagle-0.2* ) ) + tracker? ( >=app-misc/tracker-0.6.4 ) + xmp? ( >=media-libs/exempi-2 )" + +DEPEND="${RDEPEND} + >=dev-lang/perl-5 + sys-devel/gettext + >=dev-util/pkgconfig-0.9 + >=dev-util/intltool-0.40.1 + doc? ( >=dev-util/gtk-doc-1.4 ) + gnome-base/gnome-common + dev-util/gtk-doc-am" + +PDEPEND="gnome? ( >=x11-themes/gnome-icon-theme-1.1.91 )" + +DOCS="AUTHORS ChangeLog* HACKING MAINTAINERS NEWS README THANKS TODO" + +pkg_setup() { + G2CONF="${G2CONF} + --disable-update-mimedb + --disable-packagekit + $(use_enable beagle) + $(use_enable tracker) + $(use_enable xmp)" +} + +src_prepare() { + gnome2_src_prepare + + # FIXME: tarball generated with broken gtk-doc, revisit me. + if use doc; then + sed "/^TARGET_DIR/i \GTKDOC_REBASE=/usr/bin/gtkdoc-rebase" \ + -i gtk-doc.make || die "sed 1 failed" + else + sed "/^TARGET_DIR/i \GTKDOC_REBASE=/bin/true" \ + -i gtk-doc.make || die "sed 2 failed" + fi + + # gtk-doc-am and gnome-common needed for this + + # Fix intltoolize broken file, see upstream #577133 + sed "s:'\^\$\$lang\$\$':\^\$\$lang\$\$:g" -i po/Makefile.in.in || die "sed failed" + + # Fix nautilus flipping-out with --no-desktop -- bug 266398 + epatch "${FILESDIR}/${PN}-2.26.2-change-reg-desktop-file-with-no-desktop.patch" + # Fix crash due to duplicate id in .ui file, bug #286312 + epatch "${FILESDIR}/${P}-file-management-properties-ui-dup-id.patch" + # Fix massive memory consumption by Nautilus for larger zoom levels. + # Import from upstream, see distributor mailing lists. + epatch "${FILESDIR}/${P}-thumbnail-zoom-level.patch" +} + +src_test() { + addwrite "/root/.gnome2_private" + unset SESSION_MANAGER + Xemake check || die "Test phase failed" +} + +pkg_postinst() { + gnome2_pkg_postinst + + elog "nautilus can use gstreamer to preview audio files. Just make sure" + elog "to have the necessary plugins available to play the media type you" + elog "want to preview" +} diff --git a/gnome-base/nautilus/nautilus-2.26.4.ebuild b/gnome-base/nautilus/nautilus-2.26.4.ebuild new file mode 100644 index 000000000000..320c0330caa4 --- /dev/null +++ b/gnome-base/nautilus/nautilus-2.26.4.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/gnome-base/nautilus/nautilus-2.26.4.ebuild,v 1.1 2009/09/28 13:09:56 mrpouet Exp $ + +EAPI="2" + +inherit gnome2 eutils virtualx + +DESCRIPTION="A file manager for the GNOME desktop" +HOMEPAGE="http://www.gnome.org/projects/nautilus/" + +LICENSE="GPL-2 LGPL-2 FDL-1.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="beagle doc gnome tracker xmp" + +# not adding gnome-base/gail because it is in gtk+ +RDEPEND=">=dev-libs/glib-2.19.0 + >=gnome-base/gnome-desktop-2.25.5 + >=x11-libs/pango-1.1.2 + >=x11-libs/gtk+-2.16.0 + >=dev-libs/libxml2-2.4.7 + >=media-libs/libexif-0.5.12 + >=gnome-base/gconf-2.0 + >=gnome-base/gvfs-0.1.2 + dev-libs/libunique + dev-libs/dbus-glib + x11-libs/libXft + x11-libs/libXrender + beagle? ( || ( + dev-libs/libbeagle + =app-misc/beagle-0.2* ) ) + tracker? ( >=app-misc/tracker-0.6.4 ) + xmp? ( >=media-libs/exempi-2 )" + +DEPEND="${RDEPEND} + >=dev-lang/perl-5 + sys-devel/gettext + >=dev-util/pkgconfig-0.9 + >=dev-util/intltool-0.40.1 + doc? ( >=dev-util/gtk-doc-1.4 ) + gnome-base/gnome-common + dev-util/gtk-doc-am" + +PDEPEND="gnome? ( >=x11-themes/gnome-icon-theme-1.1.91 )" + +DOCS="AUTHORS ChangeLog* HACKING MAINTAINERS NEWS README THANKS TODO" + +pkg_setup() { + G2CONF="${G2CONF} + --disable-update-mimedb + --disable-packagekit + $(use_enable beagle) + $(use_enable tracker) + $(use_enable xmp)" +} + +src_prepare() { + gnome2_src_prepare + + # FIXME: tarball generated with broken gtk-doc, revisit me. + if use doc; then + sed "/^TARGET_DIR/i \GTKDOC_REBASE=/usr/bin/gtkdoc-rebase" \ + -i gtk-doc.make || die "sed 1 failed" + else + sed "/^TARGET_DIR/i \GTKDOC_REBASE=/bin/true" \ + -i gtk-doc.make || die "sed 2 failed" + fi + + # gtk-doc-am and gnome-common needed for this + + # Fix intltoolize broken file, see upstream #577133 + sed "s:'\^\$\$lang\$\$':\^\$\$lang\$\$:g" -i po/Makefile.in.in || die "sed failed" + + # Fix nautilus flipping-out with --no-desktop -- bug 266398 + epatch "${FILESDIR}/${PN}-2.26.2-change-reg-desktop-file-with-no-desktop.patch" + # Fix massive memory consumption by Nautilus for larger zoom levels. + # Import from upstream, see distributor mailing lists. + epatch "${FILESDIR}/${PN}-2.26.3-thumbnail-zoom-level.patch" +} + +src_test() { + addwrite "/root/.gnome2_private" + unset SESSION_MANAGER + Xemake check || die "Test phase failed" +} + +pkg_postinst() { + gnome2_pkg_postinst + + elog "nautilus can use gstreamer to preview audio files. Just make sure" + elog "to have the necessary plugins available to play the media type you" + elog "want to preview" +} |