# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 inherit edos2unix cmake DESCRIPTION="Spam-resistant message board application for Freenet" # FMS only has a homepage within freenet, so the closest is a wiki linking to it HOMEPAGE="https://github.com/hyphanet/wiki/wiki/FMS" SRC_URI="https://dev.gentoo.org/~tommy/distfiles/${PN}-src-${PV}.zip" S="${WORKDIR}" LICENSE="GPL-2" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="frost ssl" CDEPEND=" acct-group/freenet acct-user/freenet " RDEPEND=" ${CDEPEND} dev-db/sqlite:3= dev-libs/poco frost? ( net-libs/mbedtls:0= ) ssl? ( net-libs/mbedtls:0= ) " DEPEND="${RDEPEND}" BDEPEND=" ${CDEPEND} app-arch/unzip virtual/libiconv " PATCHES=( "${FILESDIR}/${PN}-use-system-libs4.patch" "${FILESDIR}/${PN}-0.3.83-fix-for-mbedtls-3.patch" ) DOCS=( "readme.txt" ) src_prepare() { # Convert encoding due applied patch edos2unix src/http/pages/showfilepage.cpp edos2unix CMakeLists.txt edos2unix include/freenet/fcpv2.h # Remove bundled libs rm -fr libs || die cmake_src_prepare } src_configure() { local mycmakeargs=( -DDO_CHARSET_CONVERSION="ON" -DFCP_SSL_SUPPORT="$(usex ssl 'ON' 'OFF')" -DFROST_SUPPORT="$(usex frost 'ON' 'OFF')" -DI_HAVE_READ_THE_README="ON" -DUSE_BUNDLED_SQLITE="OFF" ) cmake_src_configure } src_install() { dobin "${BUILD_DIR}"/fms insinto /var/freenet/fms doins *.htm doins -r fonts images styles translations fperms -R o-rwx /var/freenet/fms fowners -R freenet:freenet /var/freenet/fms newinitd "${FILESDIR}/fms.initd" fms einstalldocs } pkg_postinst() { if ! has_version 'net-p2p/freenet' ; then ewarn "FMS needs a freenet node to upload and download messages." ewarn "Please make sure to have a node you can connect to" ewarn "or install net-p2p/freenet to get FMS working." fi einfo "By default, the FMS NNTP server will listen on port 1119," einfo "and the web configuration interface will be running at" einfo "http://localhost:8080." einfo "For more information, read the installed readme.txt." if use frost; then einfo einfo "You need to enable frost on the configuration page" einfo "and restart FMS for frost support." fi }