git: 0290ba06646b - main - irc/senpai: Add new port

From: Bernhard Froehlich <decke_at_FreeBSD.org>
Date: Sun, 13 Sep 2026 12:51:44 UTC
The branch main has been updated by decke:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0290ba06646be82ca5a378beba028fa16702fd11

commit 0290ba06646be82ca5a378beba028fa16702fd11
Author:     Bennett Wetters <freebsd@bendo.org>
AuthorDate: 2026-09-13 12:49:08 +0000
Commit:     Bernhard Froehlich <decke@FreeBSD.org>
CommitDate: 2026-09-13 12:49:08 +0000

    irc/senpai: Add new port
    
    PR:             292552
    Event:          EuroBSDcon 2026 (Brussels)
---
 irc/Makefile         |  1 +
 irc/senpai/Makefile  | 43 +++++++++++++++++++++++++++++++++++++++++++
 irc/senpai/distinfo  |  5 +++++
 irc/senpai/pkg-descr |  7 +++++++
 irc/senpai/pkg-plist |  6 ++++++
 5 files changed, 62 insertions(+)

diff --git a/irc/Makefile b/irc/Makefile
index b31d2f5c8211..be2c3dd267a9 100644
--- a/irc/Makefile
+++ b/irc/Makefile
@@ -83,6 +83,7 @@
     SUBDIR += rubygem-lita-irc
     SUBDIR += rubygem-net-irc
     SUBDIR += scrollz
+    SUBDIR += senpai
     SUBDIR += simpleirc
     SUBDIR += smartirc4net
     SUBDIR += smuxi
diff --git a/irc/senpai/Makefile b/irc/senpai/Makefile
new file mode 100644
index 000000000000..8577f0f351b2
--- /dev/null
+++ b/irc/senpai/Makefile
@@ -0,0 +1,43 @@
+PORTNAME=	senpai
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.5.0
+CATEGORIES=	irc
+
+MAINTAINER=	freebsd@bendo.org
+COMMENT=	Modern terminal IRC client
+WWW=		https://sr.ht/~delthas/${PORTNAME}/
+
+LICENSE=	ISCL
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		go:modules
+
+GO_MODULE=	git.sr.ht/~delthas/${PORTNAME}
+GO_TARGET=	./cmd/${PORTNAME}
+GO_LDFLAGS+=	-X ${GO_MODULE}.version=${DISTVERSION}
+
+OPTIONS_DEFINE=		DESKTOP MANPAGES
+OPTIONS_DEFAULT=	DESKTOP MANPAGES
+OPTIONS_SUB=		yes
+
+DESKTOP_DESC=	Install .desktop file and application icons
+DESKTOP_USES=	desktop-file-utils
+
+MANPAGES_BUILD_DEPENDS=	scdoc:textproc/scdoc
+MANPAGES_USES=		gmake
+
+do-build-MANPAGES-on:
+	@cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} doc
+
+do-install-DESKTOP-on:
+	${INSTALL_DATA} ${WRKSRC}/contrib/${PORTNAME}.desktop ${STAGEDIR}${DESKTOPDIR}
+	@${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/48x48/apps/
+	${INSTALL_DATA} ${WRKSRC}/res/icon.48.png ${STAGEDIR}${PREFIX}/share/icons/hicolor/48x48/apps/${PORTNAME}.png
+	@${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/
+	${INSTALL_DATA} ${WRKSRC}/res/icon.svg ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/${PORTNAME}.svg
+
+do-install-MANPAGES-on:
+	${INSTALL_MAN} ${WRKSRC}/doc/${PORTNAME}.1 ${STAGEDIR}${PREFIX}/share/man/man1/
+	${INSTALL_MAN} ${WRKSRC}/doc/${PORTNAME}.5 ${STAGEDIR}${PREFIX}/share/man/man5/
+
+.include <bsd.port.mk>
diff --git a/irc/senpai/distinfo b/irc/senpai/distinfo
new file mode 100644
index 000000000000..cc472e081061
--- /dev/null
+++ b/irc/senpai/distinfo
@@ -0,0 +1,5 @@
+TIMESTAMP = 1782761995
+SHA256 (go/irc_senpai/senpai-v0.5.0/v0.5.0.mod) = e3a081dbdd89608047e68a0578a9016761bb774be630d16e419513ec033d8fba
+SIZE (go/irc_senpai/senpai-v0.5.0/v0.5.0.mod) = 841
+SHA256 (go/irc_senpai/senpai-v0.5.0/v0.5.0.zip) = 884aad2468ea742c5c903ac31f487999292aab6c6f43c447eb156a75aa3cd8a4
+SIZE (go/irc_senpai/senpai-v0.5.0/v0.5.0.zip) = 321308
diff --git a/irc/senpai/pkg-descr b/irc/senpai/pkg-descr
new file mode 100644
index 000000000000..0e0507ec6c84
--- /dev/null
+++ b/irc/senpai/pkg-descr
@@ -0,0 +1,7 @@
+senpai is a terminal IRC client that works best with bouncers implementing
+certain extensions:
+
+- history is fetched from the server via CHATHISTORY, no logs are kept locally
+- messages can be searched in logs via SEARCH
+- networks are fetched from the server via soju.im/bouncer-networks
+- files can be uploaded via soju.im/FILEHOST (with drag & drop!)
diff --git a/irc/senpai/pkg-plist b/irc/senpai/pkg-plist
new file mode 100644
index 000000000000..739d4777f90e
--- /dev/null
+++ b/irc/senpai/pkg-plist
@@ -0,0 +1,6 @@
+%%DESKTOP%%share/applications/senpai.desktop
+%%DESKTOP%%share/icons/hicolor/48x48/apps/senpai.png
+%%DESKTOP%%share/icons/hicolor/scalable/apps/senpai.svg
+%%MANPAGES%%share/man/man1/senpai.1.gz
+%%MANPAGES%%share/man/man5/senpai.5.gz
+bin/senpai