]> Pileus Git - ~andy/sunrise/blob - net-p2p/freenet/freenet-0.7_p1160.ebuild
59f15cc836eb1f18e4266d7370efc864da382d2f
[~andy/sunrise] / net-p2p / freenet / freenet-0.7_p1160.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 DEPEND=">=virtual/jdk-1.5
22         ${CDEPEND}"
23 RDEPEND=">=virtual/jre-1.5
24         x86? ( net-libs/fec )
25         net-libs/nativebiginteger
26         ${CDEPEND}"
27 PDEPEND="net-libs/NativeThread"
28 S="${WORKDIR}/${PN}"
29
30 EANT_BUILD_TARGET="dist"
31
32 pkg_setup() {
33         java-pkg-2_pkg_setup
34         enewgroup freenet
35         grep /opt/freenet /etc/passwd >/dev/null
36         if [ $? == "0" ]; then
37                 ewarn " "
38                 ewarn "Changing freenet homedir from /opt/freenet to /var/freenet"
39                 ewarn " "
40                 usermod -d /var/freenet freenet || die "Was not able to change freenet homedir from /opt/freenet to /var/freenet"
41         else
42                 enewuser freenet -1 -1 /var/freenet freenet
43         fi
44 }
45
46 src_unpack() {
47         unpack ${A}
48         cd "${S}"
49         cp "${FILESDIR}"/wrapper1.conf wrapper.conf
50         epatch "${FILESDIR}"/ext.patch
51         sed -i -e "s/=lib/=$(get_libdir)/g" wrapper.conf || die "sed failed"
52         mkdir -p lib
53         cd lib
54         java-pkg_jar-from db-je-3.3
55         java-pkg_jar-from java-service-wrapper
56         java-pkg_jar-from fec
57 }
58
59 src_install() {
60         mv lib/freenet-cvs-snapshot.jar freenet.jar
61         java-pkg_dojar freenet.jar
62         if has_version =sys-apps/baselayout-2*; then
63                 doinitd "${FILESDIR}"/freenet
64         else
65                 newinitd "${FILESDIR}"/freenet.old freenet
66         fi
67         dodoc license/README license/LICENSE.Mantissa \
68                 AUTHORS README
69         insinto /var/freenet
70         doins seednodes.fref wrapper.conf run.sh
71         dodir /var/freenet/bin
72         dosym /usr/bin/wrapper /var/freenet/bin/wrapper
73         dodir /var/freenet/$(get_libdir)
74         dosym ../../../usr/$(get_libdir)/java-service-wrapper/libwrapper.so /var/freenet/$(get_libdir)/libwrapper.so
75         dosym ../../../usr/$(get_libdir)/libNativeThread.so /var/freenet/$(get_libdir)/libNativeThread.so
76         use x86 && dosym ../../../usr/$(get_libdir)/libfec8so /var/freenet/$(get_libdir)/libfec8.so
77         use x86 && dosym ../../../usr/$(get_libdir)/libfec16so /var/freenet/$(get_libdir)/libfec16.so
78         fperms +x /var/freenet/run.sh
79 }
80
81 pkg_postinst () {
82         elog "1. Start freenet with /etc/init.d/freenet start."
83         elog "2. Open localhost:8888 in your browser for the web interface."
84         elog " "
85         elog "If you dont know trusted people running freenet,"
86         elog "enable opennet (\"insecure mode\") on the config page to get started."
87         elog " "
88         chown freenet:freenet /var/freenet
89         if [[ -e /opt/freenet/freenet.ini ]] && ! [[ -e /var/freenet/freenet.ini ]]; then
90                 ewarn " "
91                 ewarn "Please move freenet to the new location with the following command:"
92                 ewarn "         mv /opt/freenet /var/freenet"
93                 ewarn " "
94         fi
95 }
96
97 pkg_postrm() {
98         if [ -z has_version ]; then
99                 elog "If you dont want to use freenet any more"
100                 elog "and dont want to keep your identity/other stuff"
101                 elog "remember to do 'rm -rf /var/freenet' to remove everything"
102         fi
103 }