Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 20 Jul 2021 22:13:13 GMT
From:      Ashish SHUKLA <ashish@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 5f49d1f3a82c - main - net-im/biboumi: new port: XMPP gateway to IRC
Message-ID:  <202107202213.16KMDD62035680@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by ashish:

URL: https://cgit.FreeBSD.org/ports/commit/?id=5f49d1f3a82c393bb865e7ca43c06aa591e78b84

commit 5f49d1f3a82c393bb865e7ca43c06aa591e78b84
Author:     samir <samir@noir.im>
AuthorDate: 2021-07-20 22:06:41 +0000
Commit:     Ashish SHUKLA <ashish@FreeBSD.org>
CommitDate: 2021-07-20 22:11:30 +0000

    net-im/biboumi: new port: XMPP gateway to IRC
    
    Biboumi is a Free, Libre and Open Source XMPP gateway that connects to
    IRC servers and translates between the two protocols. Its goal is to
    let XMPP users take part in IRC discussions, using their favourite XMPP
    client.
    
    WWW: https://biboumi.louiz.org/
    PR:             250705
---
 GIDs                                    |  2 +-
 UIDs                                    |  2 +-
 net-im/biboumi/Makefile                 | 91 +++++++++++++++++++++++++++++++++
 net-im/biboumi/distinfo                 |  5 ++
 net-im/biboumi/files/biboumi.in         | 37 ++++++++++++++
 net-im/biboumi/files/patch-doc_Makefile | 11 ++++
 net-im/biboumi/files/pkg-message.in     |  5 ++
 net-im/biboumi/pkg-descr                |  5 ++
 net-im/biboumi/pkg-plist                | 10 ++++
 9 files changed, 166 insertions(+), 2 deletions(-)

diff --git a/GIDs b/GIDs
index 154d42473f83..3742f900cb63 100644
--- a/GIDs
+++ b/GIDs
@@ -232,7 +232,7 @@ victoria-metrics:*:289:
 _gmid:*:290:
 pydio:*:291:
 sftpgo:*:292:
-# free: 293
+biboumi:*:293:
 # free: 294
 # free: 295
 # free: 296
diff --git a/UIDs b/UIDs
index 9a414c0df614..b59a2f8919fa 100644
--- a/UIDs
+++ b/UIDs
@@ -237,7 +237,7 @@ victoria-metrics:*:289:289::0:0:VictoriaMetrics user:/nonexistent:/usr/sbin/nolo
 _gmid:*:290:290::0:0:gmid daemon user:/var/empty:/usr/sbin/nologin
 pydio:*:291:291::0:0:pydio cells user:/var/pydio:/bin/sh
 sftpgo:*:292:292::0:0:SFTPGo user:/nonexistent:/usr/sbin/nologin
-# free: 293
+biboumi:*:293:293:biboumi:/nonexistent:/usr/sbin/nologin
 # free: 294
 # free: 295
 # free: 296
diff --git a/net-im/biboumi/Makefile b/net-im/biboumi/Makefile
new file mode 100644
index 000000000000..87c5313249c3
--- /dev/null
+++ b/net-im/biboumi/Makefile
@@ -0,0 +1,91 @@
+PORTNAME=	biboumi
+DISTVERSION=	9.0
+CATEGORIES=	net-im
+MASTER_SITES=	https://git.louiz.org/biboumi/snapshot/
+DISTFILES=	${DISTNAME}${EXTRACT_SUFX}
+
+MAINTAINER=	samir@noir.im
+COMMENT=	XMPP gateway to IRC
+
+LICENSE=	ZLIB
+
+LIB_DEPENDS=	libexpat.so:textproc/expat2 \
+		libuuid.so:misc/e2fsprogs-libuuid
+
+USES=		cmake iconv localbase:ldflags pkgconfig python:build tar:xz
+
+USE_GITHUB=	nodefault
+GH_TUPLE=	catchorg:Catch2:v2.2.1:catch/external/src/catch
+
+CMAKE_ARGS=	-DWITHOUT_SYSTEMD=1
+
+OPTIONS_DEFINE=		DOCS LIBIDN PGSQL SQLITE3 TLS UDNS
+OPTIONS_DEFAULT=	LIBIDN PGSQL SQLITE3 TLS UDNS
+
+LIBIDN_DESC=		Stringprep functionality, to provide JIDs for IRC users
+PGSQL_DESC=		Store users' options and messages in PostgreSQL
+SQLITE3_DESC=		Store users' options and messages in SQLite
+TLS_DESC=		Support TLS connections to IRC servers
+UDNS_DESC=		Asynchronously resolve domain names, for better performances
+
+DOCS_BUILD_DEPENDS=	sphinx-build:textproc/py-sphinx \
+			${PYTHON_PKGNAMEPREFIX}sphinx_rtd_theme>0:textproc/py-sphinx_rtd_theme
+DOCS_PORTDOCS=		*
+
+LIBIDN_LIB_DEPENDS=	libidn.so:dns/libidn
+LIBIDN_CMAKE_ON=	-DWITH_LIBIDN=1
+LIBIDN_CMAKE_OFF=	-DWITHOUT_LIBIDN=1
+
+PGSQL_USES=		pgsql
+PGSQL_CMAKE_ON=		-DWITH_POSTGRESQL=1
+PGSQL_CMAKE_OFF=	-DWITHOUT_POSTGRESQL=1
+
+SQLITE3_USES=		sqlite:3
+SQLITE3_CMAKE_ON=	-DWITH_SQLITE3=1
+SQLITE3_CMAKE_OFF=	-DWITHOUT_SQLITE3=1
+
+TLS_LIB_DEPENDS=	libbotan-2.so:security/botan2
+TLS_LIB_DEPENDS_OFF=	libgcrypt.so:security/libgcrypt
+TLS_RUN_DEPENDS_ON=	ca_root_nss>0:security/ca_root_nss
+TLS_CMAKE_ON=		-DWITH_BOTAN=1
+TLS_CMAKE_OFF=		-DWITHOUT_BOTAN=1
+
+UDNS_LIB_DEPENDS=	libudns.so:dns/udns
+UDNS_CMAKE_ON=		-DWITH_UDNS=1
+UDNS_CMAKE_OFF=		-DWITHOUT_UDNS=1
+
+USERS=		biboumi
+GROUPS=		${USERS}
+
+USE_RC_SUBR=	biboumi
+SUB_LIST=	USER=${USERS} GROUP=${GROUPS}
+PLIST_SUB=	${SUB_LIST}
+SUB_FILES=	pkg-message
+
+post-patch:
+	${REINPLACE_CMD} -e 's,GIT_REPOSITORY.*Catch.git",SOURCE_DIR "${WRKSRC}/external/src/catch",' ${WRKSRC}/CMakeLists.txt
+
+post-build:
+	cd ${WRKSRC}/doc && ${MAKE} man
+
+post-build-DOCS-on:
+	cd ${WRKSRC}/doc && ${MAKE} html
+
+do-install:
+	${INSTALL_PROGRAM} ${WRKDIR}/.build/biboumi ${STAGEDIR}${PREFIX}/bin
+	${MKDIR} ${STAGEDIR}${PREFIX}/etc/biboumi
+	${INSTALL_DATA} ${WRKSRC}/conf/biboumi.cfg ${STAGEDIR}${ETCDIR}/biboumi.cfg.sample
+
+post-install:
+	${MKDIR} ${STAGEDIR}/var/db/biboumi
+	${MKDIR} ${STAGEDIR}/var/run/biboumi
+	${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+	${INSTALL_DATA} ${WRKSRC}/conf/*policy.txt ${STAGEDIR}${EXAMPLESDIR}
+	${INSTALL_MAN} ${WRKSRC}/doc/_build/man/*.1 ${STAGEDIR}${PREFIX}/man/man1
+
+post-install-DOCS-on:
+	${MKDIR} ${STAGEDIR}${DOCSDIR}
+	(cd ${WRKSRC}/doc/_build/html && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR} \
+		"! -name .buildinfo")
+
+.include <bsd.port.mk>
diff --git a/net-im/biboumi/distinfo b/net-im/biboumi/distinfo
new file mode 100644
index 000000000000..e4bf22cc7e40
--- /dev/null
+++ b/net-im/biboumi/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1625177638
+SHA256 (biboumi-9.0.tar.xz) = 1eff9a9110830e056e434e4edf3a33de52c6d092a3db4877b5531513627e7ecb
+SIZE (biboumi-9.0.tar.xz) = 161192
+SHA256 (catchorg-Catch2-v2.2.1_GH0.tar.gz) = 3938bc896f8de570bc56d25606fc128437ee53590a95cf3e005710176a1a1ce4
+SIZE (catchorg-Catch2-v2.2.1_GH0.tar.gz) = 487804
diff --git a/net-im/biboumi/files/biboumi.in b/net-im/biboumi/files/biboumi.in
new file mode 100644
index 000000000000..48f12e15a72b
--- /dev/null
+++ b/net-im/biboumi/files/biboumi.in
@@ -0,0 +1,37 @@
+#!/bin/sh
+
+#
+# PROVIDE: biboumi
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+#
+# Add these lines to /etc/rc.conf.local or /etc/rc.conf
+# to enable this service:
+#
+# biboumi_enable (bool):        Set to NO by default.
+#                               Set it to YES to enable biboumi.
+# biboumi_config (path):        Set to %%PREFIX%%/etc/biboumi/biboumi.cfg
+#                               by default.
+
+. /etc/rc.subr
+
+name=biboumi
+rcvar=biboumi_enable
+pidfile="/var/run/biboumi/biboumi.pid"
+procname="%%PREFIX%%/bin/biboumi"
+
+load_rc_config $name
+
+: ${biboumi_enable:="NO"}
+: ${biboumi_config="%%PREFIX%%/etc/biboumi/biboumi.cfg"}
+
+command="/usr/sbin/daemon"
+command_args="-p ${pidfile} -f ${procname} ${biboumi_config}"
+extra_commands="reload"
+required_files="$biboumi_config"
+sig_reload="USR1"
+
+biboumi_user="%%USER%%"
+biboumi_group="%%GROUP%%"
+
+run_rc_command "$1"
diff --git a/net-im/biboumi/files/patch-doc_Makefile b/net-im/biboumi/files/patch-doc_Makefile
new file mode 100644
index 000000000000..480b604c095e
--- /dev/null
+++ b/net-im/biboumi/files/patch-doc_Makefile
@@ -0,0 +1,11 @@
+--- doc/Makefile.orig	2020-10-24 17:19:42 UTC
++++ doc/Makefile
+@@ -16,5 +16,5 @@ help:
+
+ # Catch-all target: route all unknown targets to Sphinx using the new
+ # "make mode" option.  $(O) is meant as a shortcut for $(SPHINXOPTS).
+-%: Makefile
+-	@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+\ No newline at end of file
++.DEFAULT: Makefile
++	@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
diff --git a/net-im/biboumi/files/pkg-message.in b/net-im/biboumi/files/pkg-message.in
new file mode 100644
index 000000000000..17cd62508abf
--- /dev/null
+++ b/net-im/biboumi/files/pkg-message.in
@@ -0,0 +1,5 @@
+Regarding TLS connections to IRC servers, settings can be customized globally or
+per server. This is done using policy txt files, examples can be found in
+%%PREFIX%%/share/examples/biboumi/.
+
+ca_file (in biboumi.cfg) should be set to %%PREFIX%%/share/certs/ca-root-nss.crt
diff --git a/net-im/biboumi/pkg-descr b/net-im/biboumi/pkg-descr
new file mode 100644
index 000000000000..e4d9ccfd939e
--- /dev/null
+++ b/net-im/biboumi/pkg-descr
@@ -0,0 +1,5 @@
+Biboumi is a Free, Libre and Open Source XMPP gateway that connects to IRC
+servers and translates between the two protocols. Its goal is to let XMPP users
+take part in IRC discussions, using their favourite XMPP client.
+
+WWW: https://biboumi.louiz.org/
diff --git a/net-im/biboumi/pkg-plist b/net-im/biboumi/pkg-plist
new file mode 100644
index 000000000000..5dff1d8f521d
--- /dev/null
+++ b/net-im/biboumi/pkg-plist
@@ -0,0 +1,10 @@
+bin/biboumi
+man/man1/biboumi.1.gz
+@sample %%ETCDIR%%/biboumi.cfg.sample %%ETCDIR%%/biboumi.cfg
+@dir(%%USER%%,%%GROUP%%) /var/db/biboumi
+@dir(%%USER%%,%%GROUP%%) /var/run/biboumi
+%%EXAMPLESDIR%%/policy.txt
+%%EXAMPLESDIR%%/irc.gimp.org.policy.txt
+%%EXAMPLESDIR%%/irc.gnome.org.policy.txt
+%%EXAMPLESDIR%%/irc.mozilla.org.policy.txt
+%%EXAMPLESDIR%%/irc.ppirc.net.policy.txt



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202107202213.16KMDD62035680>