1 |
# Copyright 1999-2012 Gentoo Foundation |
2 |
# Distributed under the terms of the GNU General Public License v2 |
3 |
# $Header: /var/cvsroot/gentoo-x86/net-misc/tor/tor-0.2.3.14_alpha.ebuild,v 1.1 2012/04/24 12:16:46 blueness Exp $ |
4 |
|
5 |
EAPI="4" |
6 |
|
7 |
inherit eutils flag-o-matic versionator autotools |
8 |
|
9 |
MY_PV="$(replace_version_separator 4 -)" |
10 |
MY_PF="${PN}-${MY_PV}" |
11 |
DESCRIPTION="Anonymizing overlay network for TCP" |
12 |
HOMEPAGE="http://www.torproject.org/" |
13 |
SRC_URI="http://www.torproject.org/dist/${MY_PF}.tar.gz" |
14 |
S="${WORKDIR}/${MY_PF}" |
15 |
|
16 |
LICENSE="BSD" |
17 |
SLOT="0" |
18 |
KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" |
19 |
IUSE="+bufferevents nat-pmp tor-hardening transparent-proxy threads upnp selinux web" |
20 |
|
21 |
DEPEND="dev-libs/openssl |
22 |
sys-libs/zlib |
23 |
>=dev-libs/libevent-2.0.14 |
24 |
nat-pmp? ( net-libs/libnatpmp ) |
25 |
upnp? ( net-libs/miniupnpc ) |
26 |
selinux? ( sec-policy/selinux-tor )" |
27 |
RDEPEND="${DEPEND}" |
28 |
|
29 |
pkg_setup() { |
30 |
enewgroup tor |
31 |
enewuser tor -1 -1 /var/lib/tor tor |
32 |
} |
33 |
|
34 |
src_prepare() { |
35 |
epatch "${FILESDIR}"/${P}-torrc.sample.patch |
36 |
epatch "${FILESDIR}"/${PN}-0.2.3.13_alpha-fix-miniupnpc-1.6.patch |
37 |
eautoreconf |
38 |
} |
39 |
|
40 |
src_configure() { |
41 |
# Upstream isn't sure of all the user provided CFLAGS that |
42 |
# will break tor, but does recommend against -fstrict-aliasing. |
43 |
# We'll filter-flags them here as we encounter them. |
44 |
filter-flags -fstrict-aliasing |
45 |
econf \ |
46 |
--enable-asciidoc \ |
47 |
--docdir=/usr/share/doc/${PF} \ |
48 |
$(use_enable bufferevents) \ |
49 |
$(use_enable nat-pmp) \ |
50 |
$(use_enable tor-hardening gcc-hardening) \ |
51 |
$(use_enable tor-hardening linker-hardening) \ |
52 |
$(use_enable transparent-proxy transparent) \ |
53 |
$(use_enable threads) \ |
54 |
$(use_enable upnp) \ |
55 |
$(use_enable web tor2web-mode) |
56 |
} |
57 |
|
58 |
src_install() { |
59 |
newconfd "${FILESDIR}"/tor.confd tor |
60 |
newinitd "${FILESDIR}"/tor.initd-r6 tor |
61 |
|
62 |
emake DESTDIR="${D}" install |
63 |
|
64 |
keepdir /var/lib/tor |
65 |
|
66 |
dodoc README ChangeLog ReleaseNotes \ |
67 |
doc/{HACKING,TODO} \ |
68 |
doc/spec/README |
69 |
|
70 |
fperms 750 /var/lib/tor |
71 |
fowners tor:tor /var/lib/tor |
72 |
|
73 |
insinto /etc/tor/ |
74 |
newins "${FILESDIR}"/torrc-r1 torrc |
75 |
} |
76 |
|
77 |
pkg_postinst() { |
78 |
elog |
79 |
elog "We created a configuration file for tor, /etc/tor/torrc, but you can" |
80 |
elog "change it according to your needs. Use the torrc.sample that is in" |
81 |
elog "that directory as a guide. Also, to have privoxy work with tor" |
82 |
elog "just add the following line" |
83 |
elog |
84 |
elog "forward-socks4a / localhost:9050 ." |
85 |
elog |
86 |
elog "to /etc/privoxy/config. Notice the . at the end!" |
87 |
elog |
88 |
} |