summaryrefslogtreecommitdiff
blob: 1af2601b40ef588f86f383eca19e1e7a105a6a2a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-mail/offlineimap/offlineimap-6.5.4-r1.ebuild,v 1.2 2013/01/15 23:34:45 mgorny Exp $

EAPI="3"
PYTHON_DEPEND="2:2.6"
PYTHON_USE_WITH="threads ssl?"
SUPPORT_PYTHON_ABIS="1"
RESTRICT_PYTHON_ABIS="2.[45] 3.* 2.7-pypy-*"  #see bug 394307

PYTHON_USE_WITH=sqlite
PYTHON_USE_WITH_OPT=sqlite

inherit eutils distutils

DESCRIPTION="Powerful IMAP/Maildir synchronization and reader support"
HOMEPAGE="http://offlineimap.org"
#Why doesn't this work?
#SRC_URI="mirror://github/spaetz/${PN}/tarball/v${PV} -> ${P}.tar.gz"
SRC_URI="https://github.com/spaetz/${PN}/tarball/v${PV} -> ${P}.tar.gz"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="doc ssl sqlite"

DEPEND="doc? ( dev-python/docutils )"
RDEPEND=""
S="${WORKDIR}/${PN}"

# github changed tarball internals again...
src_unpack() {
	unpack ${A}
	mv *-${PN}-* "${S}/"
}

src_prepare() {
	distutils_src_prepare
	# see http://pogma.com/2009/09/09/snow-leopard-and-offlineimap/ and bug 284925
	epatch "${FILESDIR}"/"${PN}-6.5.3.1"-darwin10.patch
}

src_compile() {
	distutils_src_compile
	if use doc ; then
		cd docs
		rst2man.py MANUAL.rst offlineimap.1 || die "building manpage failed"
	fi
}

src_install() {
	distutils_src_install
	dodoc offlineimap.conf offlineimap.conf.minimal
	if use doc ; then
		cd docs
		doman offlineimap.1 || die "installing manpage failed"
	fi
}

pkg_preinst() {
	if has_version "<${CATEGORY}/${PN}-6.4" ; then
		elog "If you upgraded from 6.3.* then you may need to update your config:"
		elog ""
		elog "If you use nametrans= settings on a remote repository, you will have"
		elog "to add a \"reverse\" nametrans setting to the local repository, so that"
		elog "it knows which folders it should (not) create on the remote side."
		elog ""
	fi
}

pkg_postinst() {
	distutils_pkg_postinst

	elog ""
	elog "You will need to configure offlineimap by creating ~/.offlineimaprc"
	elog "Sample configurations are in /usr/share/doc/${PF}/"
	elog ""
	elog "If you connect via ssl/tls and don't use CA cert checking, it will"
	elog "display the server's cert fingerprint and require you to add it to the"
	elog "configuration file to be sure it connects to the same server every"
	elog "time. This serves to help fixing CVE-2010-4532 (offlineimap doesn't"
	elog "check SSL server certificate) in cases where you have no CA cert."
	elog ""

	if use sqlite ; then
		elog "The sqlite USE flag only enables a dependency on sqlite. To use"
		elog "the sqlite backend you need to enable it in your .offlineimaprc"
	fi
}