diff options
author | Peter Alfredsen <loki_val@gentoo.org> | 2008-11-22 22:50:32 +0000 |
---|---|---|
committer | Peter Alfredsen <loki_val@gentoo.org> | 2008-11-22 22:50:32 +0000 |
commit | 25a0efff8e91a9df654e496f1716b0c03545637e (patch) | |
tree | 0c59656cbe421a3bae2e5fa98da3bb29b3f25ea1 /app-misc/beagle | |
parent | Giving acovea back to benchmark herd (diff) | |
download | historical-25a0efff8e91a9df654e496f1716b0c03545637e.tar.gz historical-25a0efff8e91a9df654e496f1716b0c03545637e.tar.bz2 historical-25a0efff8e91a9df654e496f1716b0c03545637e.zip |
Fix beagle for gmime-2.4, patch from frugalware and adjust deps for gtk-sharp-2.12*
Package-Manager: portage-2.2_rc14/cvs/Linux 2.6.28-rc4 x86_64
Diffstat (limited to 'app-misc/beagle')
-rw-r--r-- | app-misc/beagle/ChangeLog | 10 | ||||
-rw-r--r-- | app-misc/beagle/Manifest | 15 | ||||
-rw-r--r-- | app-misc/beagle/beagle-0.3.8-r1.ebuild | 182 | ||||
-rw-r--r-- | app-misc/beagle/files/beagle-0.3.8-fix_gmime-2.4.patch | 503 | ||||
-rw-r--r-- | app-misc/beagle/files/beagle-0.3.8-fix_gvfs.patch | 11 |
5 files changed, 709 insertions, 12 deletions
diff --git a/app-misc/beagle/ChangeLog b/app-misc/beagle/ChangeLog index 999f25f15e73..35292cbecd40 100644 --- a/app-misc/beagle/ChangeLog +++ b/app-misc/beagle/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for app-misc/beagle # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-misc/beagle/ChangeLog,v 1.85 2008/10/11 22:54:52 eva Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-misc/beagle/ChangeLog,v 1.86 2008/11/22 22:50:32 loki_val Exp $ + +*beagle-0.3.8-r1 (22 Nov 2008) + + 22 Nov 2008; Peter Alfredsen <loki_val@gentoo.org> + +files/beagle-0.3.8-fix_gmime-2.4.patch, + +files/beagle-0.3.8-fix_gvfs.patch, +beagle-0.3.8-r1.ebuild: + Fix beagle for gmime-2.4, patch from frugalware and adjust deps for + gtk-sharp-2.12* 11 Oct 2008; Gilles Dartiguelongue <eva@gentoo.org> beagle-0.2.18.ebuild, beagle-0.2.18-r1.ebuild, beagle-0.3.6.ebuild, beagle-0.3.7-r1.ebuild, diff --git a/app-misc/beagle/Manifest b/app-misc/beagle/Manifest index 4f0a0f0d93e6..0055915e30b1 100644 --- a/app-misc/beagle/Manifest +++ b/app-misc/beagle/Manifest @@ -1,9 +1,8 @@ ------BEGIN PGP SIGNED MESSAGE----- -Hash: SHA1 - AUX beagle-0.2.18-mono-1.9.1.patch 551 RMD160 ceb0449d09d91e960f79daea4a04eff367a8cc50 SHA1 4ad1d977d98a8daf403cb531c56ef245d6015dfa SHA256 19da8f23d5d9116470d8f7ab764886d9317cdb390ed8658627df73e3802f3871 AUX beagle-0.2.7-crawltweek.patch 1206 RMD160 73925987e7ced184351fed4dcded49671d062a5c SHA1 76e325807be790e1d75e8212ade97ee74f5be987 SHA256 3d5b8b0b87d46b9bba4af6b08c09a769a62ff608e4fc1a4257342b40f659096d AUX beagle-0.3.7-evo-sharp.patch 4796 RMD160 32388714ef8efc445541cdcddb81cdcb6625523c SHA1 aad4c8b8eff698176a31b96eb96a4ad6262a087e SHA256 df9c3f03130da9a93ee95d481a59b0c83f291f2cb4a4d8289c7fa081737e52a0 +AUX beagle-0.3.8-fix_gmime-2.4.patch 21019 RMD160 3bcb510130b2ec92e7969a00e78fe73434c334cd SHA1 e2c63baaefc1a00af666854e604ae9084bada0d8 SHA256 fc5482c0d852ca25329c1babfcccbcfcf296af994a5a857ca9f64d9ae9b16b00 +AUX beagle-0.3.8-fix_gvfs.patch 413 RMD160 9390be0227fb3ea7468e476477b2b683d4d89e4b SHA1 e7e910d1992e8ada161c8c36af75d2f69e431100 SHA256 cf53d8714611d36265913a2ede188750e3d444f6cb824b908259f1ffc9f454d0 AUX beagle-log-level-warn.patch 2014 RMD160 444a772662d0cf1e2b32865c87ad8308c36537c2 SHA1 7b4abc9699922c3d681b3283ca9dc2dfe0710e88 SHA256 1f8664518210dfd54ea0e229cff30cc7e41dd0651ad5ed5f608afecb49afc48e AUX crawl-portage 295 RMD160 979f70ae6172ffbbba21fcf8ab22964d10bf6b1a SHA1 6c8da69912829a6dd8f1bdcacc3d59acb31a9f63 SHA256 14b8423c0590ce9bc8b43ee75b7c51c02ec46031d89baeee8c0100bdc6adb31b DIST beagle-0.2.18.tar.bz2 1591664 RMD160 02e7fddbc2dd79eb7172ece55481541b888380e2 SHA1 02b37003e3fc223f074b0b27cc1351f9f1964ff4 SHA256 62e62b0a90f49660a6414b2fe69affee0a0bb1b1cd40ec1ccaf005e2a7f6c57b @@ -14,13 +13,7 @@ EBUILD beagle-0.2.18-r1.ebuild 3387 RMD160 bd992473bddca3a2e786ff1b0abbabc00f99e EBUILD beagle-0.2.18.ebuild 3337 RMD160 cae62a427477a3f08876aed5afe012c57857f348 SHA1 237ffda039ec1283aa5a85f6f69d8d7e433eedd6 SHA256 ec61a3c0aea47d0f8cc45aafe52b077238f3d1e39fc2cef0b7e9dcf05ae480d9 EBUILD beagle-0.3.6.ebuild 5656 RMD160 929330f82302123921de3dc414cc655a8c267548 SHA1 7e4c00c1270afbca2fc1c6c84b1742c265344dec SHA256 60611bba004f5b8403b912a98c9e06cb48c985f481f65471a0407c1a52acccf0 EBUILD beagle-0.3.7-r1.ebuild 5700 RMD160 e1f1196ceafb3ebbefed40d10a55e3261f4bf677 SHA1 f61c8fabf759cc248f7f90f5bd251a23acc474ff SHA256 6d1108d8f1fd1bea454763d95353f0891cc821db113e831b25c349c4c6af2733 +EBUILD beagle-0.3.8-r1.ebuild 5738 RMD160 69979c642a6aa0336f2737baeeb14008c7b38e25 SHA1 619a76868a339d584da8c3173f26e7ff11d75508 SHA256 76447e2097bb469b521bdc461541185d399032610acc58c9840f83162e6be1ad EBUILD beagle-0.3.8.ebuild 5657 RMD160 249c4249bc43dce089e811e5241f7a25c36fb248 SHA1 b2042fbcdc4898cddaf5e66d1331632450ddb1f8 SHA256 05911ba0f7babf80339fd42f1a63c3a96815ba4913efd7636405f66824382386 -MISC ChangeLog 14063 RMD160 6430ff65d3f48804526554b0484ce2abab0e3f25 SHA1 1ca97925cc7aee3ab7c0b8cfaec9fb623b6ea116 SHA256 6d1f597faec67636a537c50baf30caee9d586d1510be16868037a16d00112711 +MISC ChangeLog 14348 RMD160 99c4a2979c2954555d98560a25c68085915089c9 SHA1 4b0cfd079bbaade4a2abd317197c5a7e6b03b732 SHA256 5a3f05d236a24bbd40551f31b40cd42a0102780248dceaa20f40b9307fbb7cca MISC metadata.xml 2560 RMD160 dc213fce1d6535478b6fa3139490d2a422d09282 SHA1 5f90c4f2b2212390fa6e1ab79b86a6558bdca45e SHA256 2a0e26f0134370da2a503004c725348d9d1ef11066f37d6d037fdba05d4135d0 ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.9 (GNU/Linux) - -iEYEARECAAYFAkjxLsIACgkQ1fmVwcYIWAY94QCfT5ordSOzqo5n3vBmEmEb27h7 -0ssAn22dVe1EwHnqUMnyq7xIh1rUyNRg -=dpju ------END PGP SIGNATURE----- diff --git a/app-misc/beagle/beagle-0.3.8-r1.ebuild b/app-misc/beagle/beagle-0.3.8-r1.ebuild new file mode 100644 index 000000000000..bb6bbf26cf15 --- /dev/null +++ b/app-misc/beagle/beagle-0.3.8-r1.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-misc/beagle/beagle-0.3.8-r1.ebuild,v 1.1 2008/11/22 22:50:32 loki_val Exp $ + +EAPI=2 + +inherit gnome.org eutils autotools mono mozextension + +DESCRIPTION="Search tool that ransacks your personal information space to find whatever you're looking for" +HOMEPAGE="http://www.beagle-project.org/" + +LICENSE="MIT Apache-1.1" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="chm debug doc epiphany eds firefox galago gtk pdf inotify ole thunderbird +xscreensaver" + +RDEPEND=" + >=dev-lang/mono-1.2.4 + app-shells/bash + app-arch/zip + sys-devel/gettext + x11-misc/shared-mime-info + =dev-libs/gmime-2.4* + >=dev-libs/libxml2-2.6.19 + >=dev-db/sqlite-3.3.1 + >=dev-dotnet/dbus-sharp-0.6.0 + >=dev-dotnet/dbus-glib-sharp-0.4.1 + >=dev-dotnet/taglib-sharp-2.0 + >=dev-dotnet/gtk-sharp-2.8 + gtk? ( >=gnome-base/libgnome-2.0 + >=gnome-base/gnome-vfs-2.0 + >=dev-dotnet/gtk-sharp-2.10 + >=x11-libs/gtk+-2.10 + >=dev-libs/atk-1.2.4 + >=gnome-base/librsvg-2.0 + >=dev-dotnet/gconf-sharp-2.4 + || ( dev-dotnet/gtk-sharp[glade] >=dev-dotnet/glade-sharp-2.4 ) + >=dev-dotnet/gnome-sharp-2.4 + >=dev-dotnet/gnomevfs-sharp-2.4 ) + eds? ( >=dev-dotnet/evolution-sharp-0.13.3 + >=dev-dotnet/gconf-sharp-2.4 ) + ole? ( >=app-text/wv-1.2.3 + >=dev-dotnet/gsf-sharp-0.8 + >=app-office/gnumeric-1.4.3-r3 ) + chm? ( dev-libs/chmlib ) + pdf? ( >=app-text/poppler-0.5.1 ) + galago? ( >=dev-dotnet/galago-sharp-0.5.0 ) + thunderbird? ( || ( >=mail-client/mozilla-thunderbird-1.5 + >=mail-client/mozilla-thunderbird-bin-1.5 ) ) + firefox? ( || ( >=www-client/mozilla-firefox-1.5 + >=www-client/mozilla-firefox-bin-1.5 ) ) + epiphany? ( >=www-client/epiphany-extensions-2.16 ) + xscreensaver? ( x11-libs/libXScrnSaver ) + dev-libs/libbeagle" + # Avahi code is currently experimental + #avahi? ( >=net-dns/avahi-0.6.10 ) + +DEPEND="${RDEPEND} + doc? ( >=dev-util/monodoc-1.2.4 ) + dev-util/pkgconfig + xscreensaver? ( x11-proto/scrnsaverproto ) + >=dev-util/intltool-0.35" + +pkg_setup() { + local fail_gmime="Re-emerge dev-libs/gmime with USE mono." + local fail_libbeagle="Re-emerge dev-libs/libbeagle with USE=python." + local fail_epiphany="Re-emerge www-client/epiphany-extensions with USE=python." + + if ! built_with_use dev-libs/gmime mono; then + eerror "${fail_gmime}" + die "${fail_gmime}" + fi + + if use epiphany; then + if ! built_with_use dev-libs/libbeagle python; then + eerror "${fail_libbeagle}" + die "${fail_libbeagle}" + fi + if ! built_with_use www-client/epiphany-extensions python; then + eerror "${fail_epiphany}" + die "${fail_epiphany}" + fi + fi + + enewgroup beagleindex + enewuser beagleindex -1 -1 /var/lib/cache/beagle beagleindex +} + +src_prepare() { + epatch "${FILESDIR}/${P}-fix_gvfs.patch" + epatch "${FILESDIR}/${P}-fix_gmime-2.4.patch" + + + # Multilib fix + sed -i -e 's:prefix mono`/lib:libdir mono`:' \ + configure.in || die "sed failed" + + eautoreconf + intltoolize --force || die "intltoolize failed" +} + +src_configure() { + econf \ + --enable-sqlite3 \ + --disable-avahi \ + --disable-internal-taglib \ + $(use_enable debug xml-dump) \ + $(use_enable doc docs) \ + $(use_enable epiphany epiphany-extension) \ + $(use_enable thunderbird) \ + $(use_enable eds evolution) \ + $(use_enable gtk gui) \ + $(use_enable ole gsf-sharp wv1) \ + $(use_enable xscreensaver xss) \ + $(use_enable inotify) + # Avahi code is experimental, explicitly disabled above + #$(use_enable avahi) \ +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed." + + dodoc AUTHORS NEWS README + + declare MOZILLA_FIVE_HOME + if use firefox; then + xpi_unpack "${S}"/firefox-extension/beagle.xpi \ + || die "Unable to find Beagle Firefox Extension" + mv "${WORKDIR}"/beagle "${WORKDIR}"/firefox-beagle + + if has_version '>=www-client/mozilla-firefox-1.5'; then + MOZILLA_FIVE_HOME="/usr/$(get_libdir)/mozilla-firefox" + xpi_install "${WORKDIR}"/firefox-beagle \ + || die "xpi install for mozilla-firefox failed!" + fi + if has_version '>=www-client/mozilla-firefox-bin-1.5'; then + MOZILLA_FIVE_HOME="/opt/firefox" + xpi_install "${WORKDIR}"/firefox-beagle \ + || die "xpi install for mozilla-firefox-bin failed!" + fi + fi + + if use thunderbird; then + xpi_unpack "${S}"/thunderbird-extension/beagle.xpi \ + || die "Unable to find Beagle Thunderbird Extension" + mv "${WORKDIR}"/beagle "${WORKDIR}"/thunderbird-beagle + + if has_version '>=mail-client/mozilla-thunderbird-1.5'; then + MOZILLA_FIVE_HOME="/usr/$(get_libdir)/mozilla-thunderbird" + xpi_install "${WORKDIR}"/thunderbird-beagle \ + || die "xpi install for mozilla-thunderbird failed!" + fi + if has_version '>=mail-client/mozilla-thunderbird-bin-1.5'; then + MOZILLA_FIVE_HOME="/opt/thunderbird" + xpi_install "${WORKDIR}"/thunderbird-beagle \ + || die "xpi install for mozilla-thunderbird-bin failed!" + fi + fi + + sed -i -e 's/CRAWL_ENABLED="yes"/CRAWL_ENABLED="no"/' \ + "${D}"/etc/beagle/crawl-rules/crawl-* + + insinto /etc/beagle/crawl-rules + doins "${FILESDIR}/crawl-portage" + + keepdir "/usr/$(get_libdir)/beagle/Backends" + diropts -o beagleindex -g beagleindex + keepdir "/var/lib/cache/beagle/indexes" +} + +pkg_postinst() { + elog "If available, Beagle greatly benefits from using certain operating" + elog "system features such as Extended Attributes and inotify." + elog + elog "If you want static queryables such as the portage tree and system" + elog "documentation you will need to edit the /etc/beagle/crawl-* files" + elog "and change CRAWL_ENABLE from 'no' to 'yes'." + elog + elog "For more info on how to create the optimal beagle environment, and" + elog "basic usage info, see the Gentoo page of the Beagle website:" + elog "http://www.beagle-project.org/Gentoo_Installation" +} diff --git a/app-misc/beagle/files/beagle-0.3.8-fix_gmime-2.4.patch b/app-misc/beagle/files/beagle-0.3.8-fix_gmime-2.4.patch new file mode 100644 index 000000000000..5a6525174749 --- /dev/null +++ b/app-misc/beagle/files/beagle-0.3.8-fix_gmime-2.4.patch @@ -0,0 +1,503 @@ +Index: beagle/beagled/EvolutionMailQueryable/EvolutionMailIndexableGenerator.cs +=================================================================== +--- beagle/beagled/EvolutionMailQueryable/EvolutionMailIndexableGenerator.cs (revision 4874) ++++ beagle/beagled/EvolutionMailQueryable/EvolutionMailIndexableGenerator.cs (working copy) +@@ -333,28 +333,46 @@ + indexable.AddProperty (Property.NewUnsearched ("fixme:folder", this.folder_name)); + + GMime.InternetAddressList addrs; +- +- addrs = message.GetRecipients (GMime.Message.RecipientType.To); +- foreach (GMime.InternetAddress ia in addrs) { +- if (this.folder_name == "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", ia.Addr)); ++ ++ if (this.folder_name == "Sent") { ++ addrs = message.GetRecipients (GMime.RecipientType.To); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); + } +- addrs.Dispose (); +- +- addrs = message.GetRecipients (GMime.Message.RecipientType.Cc); +- foreach (GMime.InternetAddress ia in addrs) { +- if (this.folder_name == "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", ia.Addr)); ++ ++ if (this.folder_name == "Sent") { ++ addrs = message.GetRecipients (GMime.RecipientType.Cc); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); + } +- addrs.Dispose (); +- +- addrs = GMime.InternetAddressList.ParseString (GMime.Utils.HeaderDecodePhrase (message.Sender)); +- foreach (GMime.InternetAddress ia in addrs) { +- if (this.folder_name != "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:gotFrom", ia.Addr)); ++ ++ if (this.folder_name != "Sent") { ++ addrs = GMime.InternetAddressList.Parse (message.Sender); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewUnsearched ("fixme:gotFrom", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); + } +- addrs.Dispose (); +- ++ + if (this.folder_name == "Sent") + indexable.AddProperty (Property.NewFlag ("fixme:isSent")); + +@@ -750,48 +768,54 @@ + } + + GMime.InternetAddressList addrs; +- addrs = GMime.InternetAddressList.ParseString (messageInfo.to); ++ addrs = GMime.InternetAddressList.Parse (messageInfo.to); + foreach (GMime.InternetAddress ia in addrs) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ + if (!have_content) { + indexable.AddProperty (Property.NewUnsearched ("fixme:to", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.New ("fixme:to_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.New ("fixme:to_address", mailbox.Address)); ++ + indexable.AddProperty (Property.New ("fixme:to_name", ia.Name)); + } +- +- if (this.folder_name == "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", ia.Addr)); ++ ++ if (this.folder_name == "Sent" && ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", mailbox.Address)); + } + addrs.Dispose (); + +- addrs = GMime.InternetAddressList.ParseString (messageInfo.cc); ++ addrs = GMime.InternetAddressList.Parse (messageInfo.cc); + foreach (GMime.InternetAddress ia in addrs) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ + if (!have_content) { + indexable.AddProperty (Property.NewUnsearched ("fixme:cc", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.New ("fixme:cc_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.New ("fixme:cc_address", mailbox.Address)); ++ + indexable.AddProperty (Property.New ("fixme:cc_name", ia.Name)); + } +- +- if (this.folder_name == "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", ia.Addr)); ++ ++ if (this.folder_name == "Sent" && ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.NewUnsearched ("fixme:sentTo", mailbox.Address)); + } + addrs.Dispose (); + +- addrs = GMime.InternetAddressList.ParseString (messageInfo.from); ++ addrs = GMime.InternetAddressList.Parse (messageInfo.from); + foreach (GMime.InternetAddress ia in addrs) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ + if (!have_content) { + indexable.AddProperty (Property.NewUnsearched ("fixme:from", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.New ("fixme:from_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.New ("fixme:from_address", mailbox.Address)); ++ + indexable.AddProperty (Property.New ("fixme:from_name", ia.Name)); + } + +- if (this.folder_name != "Sent" && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewUnsearched ("fixme:gotFrom", ia.Addr)); ++ if (this.folder_name != "Sent" && ia is GMime.InternetAddressMailbox) ++ indexable.AddProperty (Property.NewUnsearched ("fixme:gotFrom", mailbox.Address)); + } + addrs.Dispose (); + +Index: beagle/beagled/KMailQueryable/KMailIndexer.cs +=================================================================== +--- beagle/beagled/KMailQueryable/KMailIndexer.cs (revision 4874) ++++ beagle/beagled/KMailQueryable/KMailIndexer.cs (working copy) +@@ -407,28 +407,46 @@ + indexable.AddProperty (Property.NewUnsearched ("fixme:folder", folder_name)); + + GMime.InternetAddressList addrs; +- +- addrs = message.GetRecipients (GMime.Message.RecipientType.To); +- foreach (GMime.InternetAddress ia in addrs) { +- if (folder_name == Queryable.SentMailFolderName && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewKeyword ("fixme:sentTo", ia.Addr)); ++ ++ if (folder_name == Queryable.SentMailFolderName) { ++ addrs = message.GetRecipients (GMime.RecipientType.To); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewKeyword ("fixme:sentTo", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); + } +- addrs.Dispose (); +- +- addrs = message.GetRecipients (GMime.Message.RecipientType.Cc); +- foreach (GMime.InternetAddress ia in addrs) { +- if (folder_name == Queryable.SentMailFolderName && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewKeyword ("fixme:sentTo", ia.Addr)); ++ ++ if (folder_name == Queryable.SentMailFolderName) { ++ addrs = message.GetRecipients (GMime.RecipientType.Cc); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewKeyword ("fixme:sentTo", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); + } +- addrs.Dispose (); +- +- addrs = GMime.InternetAddressList.ParseString (GMime.Utils.HeaderDecodePhrase (message.Sender)); +- foreach (GMime.InternetAddress ia in addrs) { +- if (folder_name != Queryable.SentMailFolderName && ia.AddressType != GMime.InternetAddressType.Group) +- indexable.AddProperty (Property.NewKeyword ("fixme:gotFrom", ia.Addr)); ++ ++ if (folder_name != Queryable.SentMailFolderName) { ++ addrs = GMime.InternetAddressList.Parse (message.Sender); ++ foreach (GMime.InternetAddress ia in addrs) { ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ indexable.AddProperty (Property.NewKeyword ("fixme:gotFrom", mailbox.Address)); ++ } ++ } ++ ++ addrs.Dispose (); + } +- addrs.Dispose (); +- ++ + if (folder_name == Queryable.SentMailFolderName) + indexable.AddProperty (Property.NewFlag ("fixme:isSent")); + else { +Index: beagle/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs +=================================================================== +--- beagle/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs (revision 4874) ++++ beagle/beagled/ThunderbirdQueryable/ThunderbirdQueryable.cs (working copy) +@@ -363,9 +363,14 @@ + message.Subject = Mime.HeaderDecodeText (GetText (document, "Subject")); + message.Sender = Mime.HeaderDecodePhrase (GetText (document, "Author")); + message.MessageId = GetText (document, "MessageId"); +- message.SetDate (DateTimeUtil.UnixToDateTimeUtc (Convert.ToInt64 (GetText (document, "Date"))), 0); +- message.AddRecipientsFromString ("To", Mime.HeaderDecodePhrase (GetText (document, "Recipients"))); +- ++ message.Date = DateTimeUtil.UnixToDateTimeUtc (Convert.ToInt64 (GetText (document, "Date"))); ++ ++ string str = GetText (document, "Recipients"); ++ GMime.InternetAddressList recipients = GMime.InternetAddressList.Parse (str); ++ foreach (GMime.InternetAddress ia in recipients) ++ message.To.Add (ia); ++ recipients.Dispose (); ++ + return message; + } + +@@ -430,7 +435,7 @@ + + // We _know_ that the stream comes from a StreamReader, which uses UTF8 by + // default. So we use that here when parsing our string. +- return (str != null ? Encoding.UTF8.GetString (str, 0, pos) : string.Empty); ++ return (str != null ? System.Text.Encoding.UTF8.GetString (str, 0, pos) : string.Empty); + } + + // This spell "charset=" +@@ -458,7 +463,7 @@ + // instead of UTF-8 in some cases and that will really mess things up. + byte[] buffer = null; + int c, header_length = 0, newlines = 0, charset_pos = 0; +- Encoding enc = Encoding.UTF8; ++ System.Text.Encoding enc = System.Text.Encoding.UTF8; + try { + do { + c = stream.BaseStream.ReadByte (); +@@ -487,7 +492,7 @@ + stream.BaseStream.Read (buffer, 0, buffer.Length); + + // We need to use correct encoding +- enc = Encoding.GetEncoding (encoding_str); ++ enc = System.Text.Encoding.GetEncoding (encoding_str); + } catch { + } finally { + stream.Close (); +Index: beagle/beagled/GoogleBackends/GMailSearchDriver.cs +=================================================================== +--- beagle/beagled/GoogleBackends/GMailSearchDriver.cs (revision 4874) ++++ beagle/beagled/GoogleBackends/GMailSearchDriver.cs (working copy) +@@ -322,38 +322,47 @@ + hit.AddProperty (Property.NewDate ("fixme:date", message.Date.ToUniversalTime ())); + + GMime.InternetAddressList addrs; +- addrs = message.GetRecipients (GMime.Message.RecipientType.To); ++ addrs = message.GetRecipients (GMime.RecipientType.To); + foreach (GMime.InternetAddress ia in addrs) { + hit.AddProperty (Property.NewUnsearched ("fixme:to", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- hit.AddProperty (Property.New ("fixme:to_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ hit.AddProperty (Property.New ("fixme:to_address", mailbox.Address)); ++ } ++ + hit.AddProperty (Property.New ("fixme:to_name", ia.Name)); + } + addrs.Dispose (); + +- addrs = message.GetRecipients (GMime.Message.RecipientType.Cc); ++ addrs = message.GetRecipients (GMime.RecipientType.Cc); + foreach (GMime.InternetAddress ia in addrs) { + hit.AddProperty (Property.NewUnsearched ("fixme:cc", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- hit.AddProperty (Property.New ("fixme:cc_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ hit.AddProperty (Property.New ("fixme:cc_address", mailbox.Address)); ++ } ++ + hit.AddProperty (Property.New ("fixme:cc_name", ia.Name)); + } + addrs.Dispose (); + +- addrs = GMime.InternetAddressList.ParseString (GMime.Utils.HeaderDecodePhrase (message.Sender)); ++ addrs = GMime.InternetAddressList.Parse (message.Sender); + foreach (GMime.InternetAddress ia in addrs) { + hit.AddProperty (Property.NewUnsearched ("fixme:from", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- hit.AddProperty (Property.New ("fixme:from_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ hit.AddProperty (Property.New ("fixme:from_address", mailbox.Address)); ++ } ++ + hit.AddProperty (Property.New ("fixme:from_name", ia.Name)); + } + addrs.Dispose (); + + foreach (GMime.References refs in message.References) +- hit.AddProperty (Property.NewUnsearched ("fixme:reference", refs.Msgid)); ++ hit.AddProperty (Property.NewUnsearched ("fixme:reference", refs.MessageId)); + + string list_id = message.GetHeader ("List-Id"); + if (list_id != null) +Index: beagle/configure.in +=================================================================== +--- beagle/configure.in (revision 4874) ++++ beagle/configure.in (working copy) +@@ -17,7 +17,7 @@ + NDESK_DBUS_REQUIRED=0.5.2 + NDESK_DBUS_GLIB_REQUIRED=0.3.0 + GTK_SHARP_REQUIRED=2.10.0 +-GMIME_SHARP_REQUIRED=2.2.0 ++GMIME_SHARP_REQUIRED=2.3.5 + EVOLUTION_SHARP_REQUIRED=0.13.3 + GSF_SHARP_REQUIRED=0.6 + GTK_REQUIRED=2.10.0 +@@ -223,7 +223,7 @@ + glade-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-sharp-2.0 >= $GTK_SHARP_REQUIRED + gnome-vfs-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + ]) + AC_SUBST(BEAGLE_UI_LIBS) + +@@ -270,7 +270,7 @@ + evolution-sharp >= $EVOLUTION_SHARP_REQUIRED \ + gconf-sharp-2.0 >= $GTK_SHARP_REQUIRED \ + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED +- gmime-sharp >= $GMIME_SHARP_REQUIRED, ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED, + have_evo_dependencies=yes, have_evo_dependencies=no) + AC_SUBST(EVO_LIBS) + +@@ -377,14 +377,14 @@ + PKG_CHECK_MODULES(BEAGLED, + [ + shared-mime-info +- gmime-sharp >= $GMIME_SHARP_REQUIRED ++ gmime-sharp-2.4 >= $GMIME_SHARP_REQUIRED + glib-sharp-2.0 >= $GTK_SHARP_REQUIRED + ]) + BEAGLED_LIBS="$BEAGLED_LIBS $GSF_SHARP_LIBS" + AC_SUBST(BEAGLED_LIBS) + + GSF_SHARP_PREFIX=`$PKG_CONFIG --variable=prefix gsf-sharp` +-GMIME_SHARP_PREFIX=`$PKG_CONFIG --variable=prefix gmime-sharp` ++GMIME_SHARP_PREFIX=`$PKG_CONFIG --variable=prefix gmime-sharp-2.4` + + dnl ---------------------------------------------- + dnl Epiphany Extension +Index: beagle/Filters/FilterMail.cs +=================================================================== +--- beagle/Filters/FilterMail.cs (revision 4874) ++++ beagle/Filters/FilterMail.cs (working copy) +@@ -126,7 +126,7 @@ + + // Messages that are multipart/alternative shouldn't be considered as having + // attachments. Unless of course they do. +- if (mime_part is GMime.Multipart && mime_part.ContentType.Subtype.ToLower () != "alternative") ++ if (mime_part is GMime.Multipart && mime_part.ContentType.MediaSubtype.ToLower () != "alternative") + return true; + + return false; +@@ -140,34 +140,43 @@ + AddProperty (Property.NewDate ("fixme:date", message.Date.ToUniversalTime ())); + + GMime.InternetAddressList addrs; +- addrs = this.message.GetRecipients (GMime.Message.RecipientType.To); ++ addrs = this.message.GetRecipients (GMime.RecipientType.To); + foreach (GMime.InternetAddress ia in addrs) { + AddProperty (Property.NewUnsearched ("fixme:to", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- AddProperty (Property.New ("fixme:to_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ AddProperty (Property.New ("fixme:to_address", mailbox.Address)); ++ } ++ + AddProperty (Property.New ("fixme:to_name", ia.Name)); + AddEmailLink (ia); + } + addrs.Dispose (); + +- addrs = this.message.GetRecipients (GMime.Message.RecipientType.Cc); ++ addrs = this.message.GetRecipients (GMime.RecipientType.Cc); + foreach (GMime.InternetAddress ia in addrs) { + AddProperty (Property.NewUnsearched ("fixme:cc", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- AddProperty (Property.New ("fixme:cc_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ AddProperty (Property.New ("fixme:cc_address", mailbox.Address)); ++ } ++ + AddProperty (Property.New ("fixme:cc_name", ia.Name)); + AddEmailLink (ia); + } + addrs.Dispose (); + +- addrs = GMime.InternetAddressList.ParseString (GMime.Utils.HeaderDecodePhrase (this.message.Sender)); ++ addrs = GMime.InternetAddressList.Parse (this.message.Sender); + foreach (GMime.InternetAddress ia in addrs) { + AddProperty (Property.NewUnsearched ("fixme:from", ia.ToString (false))); +- if (ia.AddressType != GMime.InternetAddressType.Group) +- AddProperty (Property.New ("fixme:from_address", ia.Addr)); +- ++ if (ia is GMime.InternetAddressMailbox) { ++ GMime.InternetAddressMailbox mailbox = ia as GMime.InternetAddressMailbox; ++ ++ AddProperty (Property.New ("fixme:from_address", mailbox.Address)); ++ } ++ + AddProperty (Property.New ("fixme:from_name", ia.Name)); + AddEmailLink (ia); + } +@@ -184,7 +193,7 @@ + AddProperty (Property.NewUnsearched ("fixme:msgid", GMime.Utils.DecodeMessageId (msgid))); + + foreach (GMime.References refs in this.message.References) +- AddProperty (Property.NewUnsearched ("fixme:reference", refs.Msgid)); ++ AddProperty (Property.NewUnsearched ("fixme:reference", refs.MessageId)); + + string list_id = this.message.GetHeader ("List-Id"); + if (list_id != null) +@@ -345,16 +354,15 @@ + } + } else if (mime_part is GMime.Multipart) { + GMime.Multipart multipart = (GMime.Multipart) mime_part; ++ int num_parts = multipart.Count; + +- int num_parts = multipart.Number; +- + // If the mimetype is multipart/alternative, we only want to index + // one part -- the richest one we can filter. +- if (mime_part.ContentType.Subtype.ToLower () == "alternative") { ++ if (mime_part.ContentType.MediaSubtype.ToLower () == "alternative") { + // The richest formats are at the end, so work from there + // backward. + for (int i = num_parts - 1; i >= 0; i--) { +- GMime.Object subpart = multipart.GetPart (i); ++ GMime.Object subpart = multipart[i]; + + if (IsMimeTypeHandled (subpart.ContentType.ToString ())) { + part = subpart; +@@ -370,7 +378,7 @@ + // the parts, treat them like a bunch of attachments. + if (part == null) { + for (int i = 0; i < num_parts; i++) { +- using (GMime.Object subpart = multipart.GetPart (i)) ++ using (GMime.Object subpart = multipart[i]) + this.OnEachPart (subpart); + } + } +@@ -400,7 +408,7 @@ + } else if (mime_type == "text/html") { + no_child_needed = true; + html_part = true; +- string enc = part.GetContentTypeParameter ("charset"); ++ string enc = part.ContentType.GetParameter ("charset"); + // DataWrapper.Stream is a very limited stream + // and does not allow Seek or Tell + // HtmlFilter requires Stream.Position=0. +@@ -473,7 +481,7 @@ + if (length != -1) + child.AddProperty (Property.NewUnsearched ("fixme:filesize", length)); + +- if (part.ContentType.Type.ToLower () == "text") ++ if (part.ContentType.MediaType.ToLower () == "text") + child.SetTextReader (new StreamReader (stream)); + else + child.SetBinaryStream (stream); + diff --git a/app-misc/beagle/files/beagle-0.3.8-fix_gvfs.patch b/app-misc/beagle/files/beagle-0.3.8-fix_gvfs.patch new file mode 100644 index 000000000000..35c1fd3dcff0 --- /dev/null +++ b/app-misc/beagle/files/beagle-0.3.8-fix_gvfs.patch @@ -0,0 +1,11 @@ +--- beagle-0.3.8old/search/Beagle.Search.Tiles/Tile.cs 2008-06-12 07:41:19.000000000 +0200 ++++ beagle-0.3.8/search/Beagle.Search.Tiles/Tile.cs 2008-10-18 20:25:23.000000000 +0200 +@@ -348,7 +348,7 @@ + #else + MimeApplication app; + app = Mime.GetDefaultApplication (mimetype); +- bool expect_uris = app.SupportUris (); ++ bool expect_uris = app.SupportsUris (); + path = hit.Path; + + if (app == null) { |