Gentoo Archives: gentoo-commits

From: "Miroslav Šulc" <fordfrog@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-p2p/freenet/
Date: Sun, 06 Jun 2021 08:20:40
Message-Id: 1622967631.3dea23650a98de448ff7f78700d8e0530798269c.fordfrog@gentoo
1 commit: 3dea23650a98de448ff7f78700d8e0530798269c
2 Author: Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
3 AuthorDate: Sat Jun 5 09:23:19 2021 +0000
4 Commit: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
5 CommitDate: Sun Jun 6 08:20:31 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3dea2365
7
8 net-p2p/freenet: bcprov:0 dependency slot
9
10 Package-Manager: Portage-3.0.18, Repoman-3.0.2
11 Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
12 Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>
13
14 net-p2p/freenet/freenet-0.7.5_p1488-r1.ebuild | 168 ++++++++++++++++++++++++++
15 1 file changed, 168 insertions(+)
16
17 diff --git a/net-p2p/freenet/freenet-0.7.5_p1488-r1.ebuild b/net-p2p/freenet/freenet-0.7.5_p1488-r1.ebuild
18 new file mode 100644
19 index 00000000000..a35f88dae0f
20 --- /dev/null
21 +++ b/net-p2p/freenet/freenet-0.7.5_p1488-r1.ebuild
22 @@ -0,0 +1,168 @@
23 +# Copyright 1999-2021 Gentoo Authors
24 +# Distributed under the terms of the GNU General Public License v2
25 +
26 +EAPI=6
27 +
28 +JAVA_PKG_IUSE="doc source"
29 +
30 +inherit epatch java-pkg-2 java-ant-2 systemd
31 +
32 +DESCRIPTION="An encrypted network without censorship"
33 +HOMEPAGE="https://freenetproject.org/"
34 +# https://github.com/${PN}/seedrefs/archive/build0${PV#*p}.zip -> seednodes-${PV}.zip
35 +SRC_URI="
36 + https://github.com/${PN}/fred/archive/build0${PV#*p}.zip -> ${P}.zip
37 + https://github.com/${PN}/seedrefs/archive/build01480.zip -> seednodes-0.7.5_p1480.zip
38 + mirror://gentoo/freenet-ant-1.7.1.jar"
39 +
40 +LICENSE="GPL-2+ GPL-2 MIT BSD-2 Apache-2.0"
41 +SLOT="0"
42 +KEYWORDS="~amd64 ~x86"
43 +IUSE="+nss test"
44 +
45 +CDEPEND="dev-java/bcprov:0
46 + dev-java/commons-compress:0
47 + dev-java/fec:0
48 + dev-java/java-service-wrapper:0
49 + dev-java/jbitcollider-core:0
50 + dev-java/jna:4
51 + dev-java/lzma:0
52 + dev-java/lzmajio:0
53 + dev-java/mersennetwister:0
54 + nss? ( dev-libs/nss )"
55 +
56 +DEPEND="
57 + app-arch/unzip
58 + >=virtual/jdk-1.8
59 + ${CDEPEND}
60 + test? (
61 + dev-java/junit:0
62 + dev-java/ant-junit:0
63 + )
64 + dev-java/ant-core:0"
65 +
66 +RDEPEND="
67 + >=virtual/jre-1.8
68 + net-libs/nativebiginteger:0
69 + ${CDEPEND}
70 + acct-user/freenet
71 + acct-group/freenet"
72 +
73 +PDEPEND="net-libs/NativeThread:0"
74 +
75 +JAVA_PKG_BSFIX_NAME+=" build-clean.xml"
76 +JAVA_ANT_REWRITE_CLASSPATH="yes"
77 +JAVA_ANT_CLASSPATH_TAGS+=" javadoc"
78 +JAVA_ANT_ENCODING="utf8"
79 +
80 +EANT_BUILD_TARGET="package"
81 +EANT_TEST_TARGET="unit"
82 +EANT_BUILD_XML="build-clean.xml"
83 +EANT_GENTOO_CLASSPATH="bcprov,commons-compress,fec,java-service-wrapper,jbitcollider-core,jna-4,lzma,lzmajio,mersennetwister"
84 +EANT_EXTRA_ARGS="-Dsuppress.gjs=true -Dlib.contrib.present=true -Dlib.bouncycastle.present=true -Dlib.junit.present=true -Dtest.skip=true"
85 +
86 +S="${WORKDIR}/fred-build0${PV#*p}"
87 +
88 +RESTRICT="test" # they're broken in the last release.
89 +
90 +MY_PATCHES=(
91 + "${FILESDIR}"/0.7.5_p1483-ext.patch
92 + "${FILESDIR}/"0.7.5_p1475-remove-git.patch
93 +)
94 +
95 +pkg_setup() {
96 + has_version dev-java/icedtea[cacao] && {
97 + ewarn "dev-java/icedtea was built with cacao USE flag."
98 + ewarn "freenet may compile with it, but it will refuse to run."
99 + ewarn "Please remerge dev-java/icedtea without cacao USE flag,"
100 + ewarn "if you plan to use it for running freenet."
101 + }
102 + java-pkg-2_pkg_setup
103 +}
104 +
105 +src_unpack() {
106 +# unpack ${P}.zip seednodes-${PV}.zip
107 + unpack ${P}.zip seednodes-0.7.5_p1480.zip
108 +}
109 +
110 +src_prepare() {
111 +# cat "${WORKDIR}"/seedrefs-build0${PV#*p}/* > "${S}"/seednodes.fref
112 + cat "${WORKDIR}"/seedrefs-build01480/* > "${S}"/seednodes.fref
113 + cp "${FILESDIR}"/freenet-0.7.5_p1474-wrapper.conf freenet-wrapper.conf || die
114 + cp "${FILESDIR}"/run.sh-20090501 run.sh || die
115 + cp "${FILESDIR}"/build-clean.xml build-clean.xml || die
116 + cp "${FILESDIR}"/build.properties build.properties || die
117 +
118 + epatch "${MY_PATCHES[@]}"
119 +
120 + sed -i -e "s:=/usr/lib:=/usr/$(get_libdir):g" \
121 + freenet-wrapper.conf || die "sed failed"
122 +
123 + echo "wrapper.java.classpath.1=/usr/share/freenet/lib/freenet.jar" >> freenet-wrapper.conf || die
124 + if use nss; then
125 + echo "wrapper.java.additional.5=-Dfreenet.jce.use.NSS=true" >> freenet-wrapper.conf || die
126 + fi
127 + local i=2 pkg jars jar
128 + local ifs_original=${IFS}
129 + IFS=","
130 + for pkg in ${EANT_GENTOO_CLASSPATH} ; do
131 + jars="$(java-pkg_getjars ${pkg})"
132 + for jar in ${jars} ; do
133 + echo "wrapper.java.classpath.$((i++))=${jar}" >> freenet-wrapper.conf || die
134 + done
135 + done
136 + IFS=${ifs_original}
137 + echo "wrapper.java.classpath.$((i++))=/usr/share/freenet/lib/ant.jar" >> freenet-wrapper.conf || die
138 + echo "wrapper.java.library.path.2=/usr/$(get_libdir)/java-service-wrapper" >> freenet-wrapper.conf || die
139 + echo "wrapper.java.library.path.3=/usr/$(get_libdir)/jna-4" >> freenet-wrapper.conf || die
140 +
141 + cp "${DISTDIR}"/freenet-ant-1.7.1.jar lib/ant.jar || die
142 + eapply_user
143 +}
144 +
145 +EANT_TEST_EXTRA_ARGS="-Dtest.skip=false"
146 +
147 +src_test() {
148 + java-pkg-2_src_test
149 +}
150 +
151 +src_install() {
152 + java-pkg_dojar dist/freenet.jar
153 + java-pkg_newjar "${DISTDIR}"/freenet-ant-1.7.1.jar ant.jar
154 +
155 + if has_version =sys-apps/baselayout-2*; then
156 + doinitd "${FILESDIR}"/freenet
157 + else
158 + newinitd "${FILESDIR}"/freenet.old freenet
159 + fi
160 +
161 + systemd_dounit "${FILESDIR}"/freenet.service
162 +
163 + dodoc AUTHORS
164 + newdoc README.md README
165 + insinto /etc
166 + doins freenet-wrapper.conf
167 + insinto /var/freenet
168 + doins run.sh seednodes.fref
169 + fperms +x /var/freenet/run.sh
170 + use doc && java-pkg_dojavadoc javadoc
171 + use source && java-pkg_dosrc src
172 +}
173 +
174 +pkg_postinst() {
175 + elog " "
176 + elog "1. Start freenet with /etc/init.d/freenet start."
177 + elog "2. Open localhost:8888 in your browser for the web interface."
178 + #workaround for previously existing freenet user
179 + [[ $(stat --format="%U" /var/freenet) == "freenet" ]] || chown \
180 + freenet:freenet /var/freenet
181 +}
182 +
183 +pkg_postrm() {
184 + if ! [[ -e /usr/share/freenet/lib/freenet.jar ]] ; then
185 + elog " "
186 + elog "If you dont want to use freenet any more"
187 + elog "and dont want to keep your identity/other stuff"
188 + elog "remember to do 'rm -rf /var/freenet' to remove everything"
189 + fi
190 +}