]> Pileus Git - ~andy/sunrise/blob - net-p2p/freenet/freenet-0.7_p1162.ebuild
dev-java/db4o: Initial commit for bug 236981 (will be a dep for future net-p2p/freene...
[~andy/sunrise] / net-p2p / freenet / freenet-0.7_p1162.ebuild
1 # Copyright 1999-2008 Gentoo Foundation
2 # Distributed under the terms of the GNU General Public License v2
3 # $Header: $
4
5 EAPI=1
6 inherit eutils java-pkg-2 java-ant-2 multilib
7
8 DESCRIPTION="An encrypted network without censorship"
9 HOMEPAGE="http://www.freenetproject.org/"
10 SRC_URI="http://dev.gentooexperimental.org/~tommy/distfiles/${P}.tar.bz2
11         http://dev.gentoo.org/~tommy/distfiles/${P}.tar.bz2"
12
13 LICENSE="GPL-2"
14 SLOT="0"
15 KEYWORDS="~amd64 ~x86"
16 IUSE=""
17
18 CDEPEND="dev-db/db-je:3.3
19         dev-java/fec
20         dev-java/java-service-wrapper
21         dev-java/db4o"
22 DEPEND=">=virtual/jdk-1.5
23         ${CDEPEND}"
24 RDEPEND=">=virtual/jre-1.5
25         x86? ( net-libs/fec )
26         net-libs/nativebiginteger
27         ${CDEPEND}"
28 PDEPEND="net-libs/NativeThread"
29 S="${WORKDIR}/${PN}"
30
31 EANT_BUILD_TARGET="dist"
32
33 pkg_setup() {
34         java-pkg-2_pkg_setup
35         enewgroup freenet
36         grep /opt/freenet /etc/passwd >/dev/null
37         if [ $? == "0" ]; then
38                 ewarn " "
39                 ewarn "Changing freenet homedir from /opt/freenet to /var/freenet"
40                 ewarn " "
41                 usermod -d /var/freenet freenet || die "Was not able to change freenet homedir from /opt/freenet to /var/freenet"
42         else
43                 enewuser freenet -1 -1 /var/freenet freenet
44         fi
45 }
46
47 src_unpack() {
48         unpack ${A}
49         cd "${S}"
50         cp "${FILESDIR}"/wrapper1.conf wrapper.conf
51         epatch "${FILESDIR}"/ext.patch
52         sed -i -e "s/=lib/=$(get_libdir)/g" wrapper.conf || die "sed failed"
53         mkdir -p lib
54         cd lib
55         java-pkg_jar-from db-je-3.3
56         java-pkg_jar-from java-service-wrapper
57         java-pkg_jar-from fec
58         java-pkg_jar-from db4o
59 }
60
61 src_install() {
62         mv lib/freenet-cvs-snapshot.jar freenet.jar
63         java-pkg_dojar freenet.jar
64         if has_version =sys-apps/baselayout-2*; then
65                 doinitd "${FILESDIR}"/freenet
66         else
67                 newinitd "${FILESDIR}"/freenet.old freenet
68         fi
69         dodoc license/README license/LICENSE.Mantissa \
70                 AUTHORS README
71         insinto /var/freenet
72         doins seednodes.fref wrapper.conf run.sh
73         dodir /var/freenet/bin
74         dosym /usr/bin/wrapper /var/freenet/bin/wrapper
75         dodir /var/freenet/$(get_libdir)
76         dosym ../../../usr/$(get_libdir)/java-service-wrapper/libwrapper.so /var/freenet/$(get_libdir)/libwrapper.so
77         dosym ../../../usr/$(get_libdir)/libNativeThread.so /var/freenet/$(get_libdir)/libNativeThread.so
78         use x86 && dosym ../../../usr/$(get_libdir)/libfec8so /var/freenet/$(get_libdir)/libfec8.so
79         use x86 && dosym ../../../usr/$(get_libdir)/libfec16so /var/freenet/$(get_libdir)/libfec16.so
80         fperms +x /var/freenet/run.sh
81 }
82
83 pkg_postinst () {
84         elog "1. Start freenet with /etc/init.d/freenet start."
85         elog "2. Open localhost:8888 in your browser for the web interface."
86         elog " "
87         elog "If you dont know trusted people running freenet,"
88         elog "enable opennet (\"insecure mode\") on the config page to get started."
89         elog " "
90         chown freenet:freenet /var/freenet
91         if [[ -e /opt/freenet/freenet.ini ]] && ! [[ -e /var/freenet/freenet.ini ]]; then
92                 ewarn " "
93                 ewarn "Please move freenet to the new location with the following command:"
94                 ewarn "         mv /opt/freenet /var/freenet"
95                 ewarn " "
96         fi
97 }
98
99 pkg_postrm() {
100         if [ -z has_version ]; then
101                 elog "If you dont want to use freenet any more"
102                 elog "and dont want to keep your identity/other stuff"
103                 elog "remember to do 'rm -rf /var/freenet' to remove everything"
104         fi
105 }