blob: f209ca05e24fc68e3df1f29e4158a55e5e64ff85 (
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI=1
DATE=20080524
DATE2=20080330
ESVN_REPO_URI="http://freenet.googlecode.com/svn/trunk/freenet"
ESVN_OPTIONS="--ignore-externals"
inherit eutils java-pkg-2 java-ant-2 subversion
DESCRIPTION="An encrypted network without censorship"
HOMEPAGE="http://www.freenetproject.org/"
SRC_URI="http://dev.gentooexperimental.org/~tommy/distfiles/seednodes-${DATE}.fref
http://dev.gentooexperimental.org/~tommy/distfiles/wrapper-${DATE2}.conf"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
CDEPEND="dev-java/db-je:3.2
dev-java/fec
dev-java/java-service-wrapper"
DEPEND="dev-util/subversion
>=dev-java/sun-jdk-1.5
dev-java/ant-core
dev-util/subversion
${CDEPEND}"
RDEPEND=">=virtual/jre-1.5
x86? ( net-libs/fec )
net-libs/nativebiginteger
${CDEPEND}"
PDEPEND="net-libs/NativeThread"
S="${WORKDIR}/freenet"
RESTRICT="userpriv"
EANT_BUILD_TARGET="dist"
MY_FREENET_LATEST="-trunk"
pkg_setup() {
enewgroup freenet
enewuser freenet -1 -1 /opt/freenet freenet
}
src_unpack() {
subversion_src_unpack
cd "${S}"
svn -N co http://freenet.googlecode.com/svn/trunk/apps/new_installer/res/unix/ .
cp "${DISTDIR}"/seednodes-${DATE}.fref seednodes.fref
cp "${DISTDIR}"/wrapper-${DATE2}.conf wrapper.conf
sed -i -e 's:./bin/wrapper:/opt/freenet/bin/wrapper:g' \
-e 's:./wrapper.conf:/opt/freenet/wrapper.conf:g' \
-e 's:PIDDIR=".":PIDDIR="/opt/freenet/":g' \
-e 's:#RUN_AS_USER=:RUN_AS_USER=freenet:g' run.sh || die "sed failed"
sed -ie "s:@custom@:${MY_FREENET_LATEST}:g" src/freenet/node/Version.java
epatch "${FILESDIR}"/wrapper.conf.patch
epatch "${FILESDIR}"/ext.patch
use amd64 && sed -i -e 's/=lib/=lib64/g' wrapper.conf
sed -i -e 's/=128/=2048/g' wrapper.conf
mkdir -p lib
cd lib
java-pkg_jar-from db-je-3.2
java-pkg_jar-from java-service-wrapper
java-pkg_jar-from fec
}
src_compile() {
#workaround for installed blackdown-jdk-1.4
#freenet does not compile with it
if has_version =dev-java/sun-jdk-1.6*; then
GENTOO_VM="sun-jdk-1.6" java-pkg-2_src_compile
elif has_version =dev-java/sun-jdk-1.5*; then
GENTOO_VM="sun-jdk-1.5" java-pkg-2_src_compile
elif has_version =dev-java/sun-jdk-1.4*; then
die ">=dev-java/sun-jdk-1.5 not found"
fi
}
src_install() {
mv lib/freenet-cvs-snapshot.jar freenet.jar
java-pkg_dojar freenet.jar
doinitd "${FILESDIR}"/freenet
insinto /opt/freenet
doins wrapper.conf run.sh seednodes.fref
dodir /opt/freenet/bin
dosym /usr/bin/wrapper /opt/freenet/bin/wrapper
dodir /opt/freenet/$(get_libdir)
dosym ../../../usr/$(get_libdir)/java-service-wrapper/libwrapper.so /opt/freenet/$(get_libdir)/libwrapper.so
fperms +x /opt/freenet/run.sh
}
pkg_postinst () {
elog "1. Start freenet with /etc/init.d/freenet start."
elog "2. Open localhost:8888 in your browser for the web interface."
elog
elog "If you dont know trusted people running freenet,"
elog "enable opennet (\"insecure mode\") on the config page to get started."
elog
if use amd64;then
if has_version =dev-java/blackdown-jdk-1.4*;then
elog "Freenet does not run with 64bit blackdown-jdk,"
elog "please make sure that either system-vm or the"
elog "user-vm for freenet uses sun-jdk or some other"
elog "vm (other vms are untested)."
elog
fi
fi
chown freenet:freenet /opt/freenet
}
pkg_postrm() {
elog "If you dont want to use freenet any more"
elog "and dont want to keep your identity/other stuff"
elog "remember to do 'rm -rf /opt/freenet' to remove everything"
}
|