summaryrefslogtreecommitdiff
blob: cba9de9977dd70624cbaa8e774422a9ae4b97fb0 (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
# Copyright (c) 2002, Per Wigren <wigren@home.se>
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-p2p/freenet/freenet-0.5.0.5.ebuild,v 1.1 2002/11/05 19:29:05 aliz Exp $

DESCRIPTION="large-scale peer-to-peer network that creates a massive virtual information store open to anyone"
SRC_URI="mirror://sourceforge/freenet/${P}.tar.gz"
HOMEPAGE="http://freenetproject.org/"
DEPEND="virtual/jdk"
SLOT="0"
KEYWORDS="~x86 ~ppc"
LICENSE="GPL-2"
S=${WORKDIR}/${PN}

src_compile() {
	# Set storeSize to a 3rd of the available space on /var
	# but not bigger that 2GB.
	VARSZ=$(df -mP /var|tail -n1|awk '{print $4}')
	if [ $VARSZ -gt 4096 ]; then
		STORSZ=2147483648
	else
		let STORSZ=($VARSZ/3)*1024*1024
	fi

	# Create a default freenet.conf
	(	echo ipAddress=$(hostname)
		echo listenPort=$(let PORT=($RANDOM%30000)+9000; echo $PORT)
		echo seedFile=/var/freenet/seednodes.ref
		echo storeFile=/var/freenet/store
		echo storeSize=$STORSZ
		echo nodeFile=/var/freenet/node
		echo diagnosticsPath=/var/freenet/stats
		echo logLevel=normal
		echo logFile=/var/log/freenet.log
		echo maxHopsToLive=25
		echo fproxy.class=freenet.client.http.FproxyServlet
		echo fproxy.port=8888
		echo fproxy.insertHtl=25
		echo fproxy.requestHtl=25
		echo fproxy.params.filter=false
		echo nodestatus.class=freenet.client.http.NodeStatusServlet
		echo nodestatus.port=8889
		echo logInboundContacts=true
		echo logOutboundContacts=true
		echo logInboundRequests=true
	) >freenet.conf
}

src_install() {
        dodir /var/freenet/stats

        insinto /usr/lib/freenet
        doins freenet.jar freenet-ext.jar

        insinto /etc
        doins freenet.conf

        exeinto /etc/init.d
        doexe ${FILESDIR}/freenet
}

pkg_postinstall () {
        einfo "Please change /etc/freenet.conf according to your needs!"
}

pkg_postrm() {
        einfo "Please remove /var/freenet manually if you are't going to"
        einfo "continue to use Freenet on this machine!"
}