git: c66f529c611c - main - mail/mailpit: Add new port.

From: Guido Falsi <madpilot_at_FreeBSD.org>
Date: Thu, 20 Apr 2023 16:18:38 UTC
The branch main has been updated by madpilot:

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

commit c66f529c611cb3c8d3ed03e5dadb7c3dc041ce33
Author:     Guido Falsi <madpilot@FreeBSD.org>
AuthorDate: 2023-04-20 16:17:47 +0000
Commit:     Guido Falsi <madpilot@FreeBSD.org>
CommitDate: 2023-04-20 16:17:47 +0000

    mail/mailpit: Add new port.
    
    Mailpit is a multi-platform email testing tool & API for developers.
    
    It acts as both an SMTP server, and provides a web interface to
    view all captured emails.
    
    Mailpit is inspired by MailHog, but much, much faster.
---
 mail/Makefile                     |   1 +
 mail/mailpit/Makefile             |  96 +++++++++++++++++++++++++++++++++
 mail/mailpit/distinfo             | 111 ++++++++++++++++++++++++++++++++++++++
 mail/mailpit/files/mailpit.in     |  45 ++++++++++++++++
 mail/mailpit/files/pkg-message.in |  14 +++++
 mail/mailpit/pkg-descr            |   4 ++
 6 files changed, 271 insertions(+)

diff --git a/mail/Makefile b/mail/Makefile
index 69daab2583bc..c17ab2b43631 100644
--- a/mail/Makefile
+++ b/mail/Makefile
@@ -203,6 +203,7 @@
     SUBDIR += mailman-exim4
     SUBDIR += mailman-postfix
     SUBDIR += mailman3
+    SUBDIR += mailpit
     SUBDIR += mailscanner
     SUBDIR += mailslurper
     SUBDIR += mailsync
diff --git a/mail/mailpit/Makefile b/mail/mailpit/Makefile
new file mode 100644
index 000000000000..83988225f136
--- /dev/null
+++ b/mail/mailpit/Makefile
@@ -0,0 +1,96 @@
+PORTNAME=	mailpit
+DISTVERSIONPREFIX=	v
+DISTVERSION=	1.5.5
+CATEGORIES=	mail devel
+MASTER_SITES=	https://www.madpilot.net/mailpit/:npmcache \
+		LOCAL/madpilot/mailpit
+DISTFILES=	${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX}:npmcache
+
+MAINTAINER=	madpilot@FreeBSD.org
+COMMENT=	Mailpit development mail server
+WWW=		https://github.com/axllent/mailpit
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS+=	npm>0:www/npm
+
+USES=		go:modules tar:zstd
+USE_RC_SUBR=	mailpit
+MAKE_ENV=	npm_config_offline=true
+
+PLIST_FILES=	bin/${PORTNAME}
+SUB_FILES=	pkg-message
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	axllent
+GH_TUPLE=	\
+		DATA-DOG:go-sqlmock:v1.5.0:data_dog_go_sqlmock/vendor/github.com/DATA-DOG/go-sqlmock \
+		GehirnInc:crypt:8cc1b52080c5:gehirninc_crypt/vendor/github.com/GehirnInc/crypt \
+		GuiaBolso:darwin:fd6d2aa3d244:guiabolso_darwin/vendor/github.com/GuiaBolso/darwin \
+		axllent:semver:v0.0.1:axllent_semver/vendor/github.com/axllent/semver \
+		cention-sany:utf7:26cad61bd60a:cention_sany_utf7/vendor/github.com/cention-sany/utf7 \
+		cznic:ql:v1.2.0:cznic_ql/vendor/github.com/cznic/ql \
+		disintegration:imaging:v1.6.2:disintegration_imaging/vendor/github.com/disintegration/imaging \
+		dustin:go-humanize:v1.0.1:dustin_go_humanize/vendor/github.com/dustin/go-humanize \
+		go-check:check:41f04d3bba15:go_check_check/vendor/gopkg.in/check.v1 \
+		gogs:chardet:b7413eaefb8f:gogs_chardet/vendor/github.com/gogs/chardet \
+		golang:crypto:v0.7.0:golang_crypto/vendor/golang.org/x/crypto \
+		golang:image:v0.6.0:golang_image/vendor/golang.org/x/image \
+		golang:mod:v0.9.0:golang_mod/vendor/golang.org/x/mod \
+		golang:net:v0.8.0:golang_net/vendor/golang.org/x/net \
+		golang:sys:v0.6.0:golang_sys/vendor/golang.org/x/sys \
+		golang:text:v0.8.0:golang_text/vendor/golang.org/x/text \
+		golang:tools:v0.7.0:golang_tools/vendor/golang.org/x/tools \
+		google:uuid:v1.3.0:google_uuid/vendor/github.com/google/uuid \
+		gorilla:mux:v1.8.0:gorilla_mux/vendor/github.com/gorilla/mux \
+		gorilla:websocket:v1.5.0:gorilla_websocket/vendor/github.com/gorilla/websocket \
+		inconshreveable:mousetrap:v1.1.0:inconshreveable_mousetrap/vendor/github.com/inconshreveable/mousetrap \
+		jaytaylor:html2text:74c2419ad056:jaytaylor_html2text/vendor/github.com/jaytaylor/html2text \
+		jhillyerd:enmime:v0.11.1:jhillyerd_enmime/vendor/github.com/jhillyerd/enmime \
+		k3a:html2text:v1.1.0:k3a_html2text/vendor/github.com/k3a/html2text \
+		kballard:go-shellquote:95032a82bc51:kballard_go_shellquote/vendor/github.com/kballard/go-shellquote \
+		klauspost:compress:v1.16.3:klauspost_compress/vendor/github.com/klauspost/compress \
+		kr:pretty:v0.3.0:kr_pretty/vendor/github.com/kr/pretty \
+		leporo:sqlf:v1.3.0:leporo_sqlf/vendor/github.com/leporo/sqlf \
+		lukechampine:uint128:v1.3.0:lukechampine_uint128/vendor/lukechampine.com/uint128 \
+		mattn:go-isatty:v0.0.18:mattn_go_isatty/vendor/github.com/mattn/go-isatty \
+		mattn:go-runewidth:v0.0.14:mattn_go_runewidth/vendor/github.com/mattn/go-runewidth \
+		mattn:go-shellwords:v1.0.12:mattn_go_shellwords/vendor/github.com/mattn/go-shellwords \
+		mhale:smtpd:v0.8.0:mhale_smtpd/vendor/github.com/mhale/smtpd \
+		olekukonko:tablewriter:v0.0.5:olekukonko_tablewriter/vendor/github.com/olekukonko/tablewriter \
+		pkg:errors:v0.9.1:pkg_errors/vendor/github.com/pkg/errors \
+		remyoudompheng:bigfft:24d4a6f8daec:remyoudompheng_bigfft/vendor/github.com/remyoudompheng/bigfft \
+		rivo:uniseg:v0.4.4:rivo_uniseg/vendor/github.com/rivo/uniseg \
+		satori:go.uuid:v1.2.0:satori_go_uuid/vendor/github.com/satori/go.uuid \
+		sirupsen:logrus:v1.9.0:sirupsen_logrus/vendor/github.com/sirupsen/logrus \
+		spf13:cobra:v1.6.1:spf13_cobra/vendor/github.com/spf13/cobra \
+		spf13:pflag:v1.0.5:spf13_pflag/vendor/github.com/spf13/pflag \
+		ssor:bom:6386211fdfcf:ssor_bom/vendor/github.com/ssor/bom \
+		tg123:go-htpasswd:v1.2.1:tg123_go_htpasswd/vendor/github.com/tg123/go-htpasswd \
+		valyala:bytebufferpool:v1.0.0:valyala_bytebufferpool/vendor/github.com/valyala/bytebufferpool
+
+USE_GITLAB=	nodefault
+GL_TUPLE=	\
+		cznic:cc:03159e8e41eec8d08c1e502bfc46868b9a03aa57:cznic_cc/vendor/modernc.org/cc/v3 \
+		cznic:ccgo:0641811a3b4e1b829e42b48fa6cf751b3a681ed5:cznic_ccgo/vendor/modernc.org/ccgo/v3 \
+		cznic:libc:1e22c18cf2de8aa86d5b19b165f354f99c70479c:cznic_libc/vendor/modernc.org/libc \
+		cznic:mathutil:b13e5b5643328f15fd2fcedc85f647f0d8f9180f:cznic_mathutil/vendor/modernc.org/mathutil \
+		cznic:memory:93bf078bc8d6adb7f31db2b81355b62eb168b17f:cznic_memory/vendor/modernc.org/memory \
+		cznic:opt:6b647abadf922391a4527f3a4fa1817eff08b7cd:cznic_opt/vendor/modernc.org/opt \
+		cznic:sqlite:df33b8d15107f3cc777799c0fe105f74ef499e62:cznic_sqlite/vendor/modernc.org/sqlite \
+		cznic:strutil:bba0c72b66bb9ced2dfd2ee521b7f16b2cbb39fa:cznic_strutil/vendor/modernc.org/strutil \
+		cznic:token:24e30cd78ee0f2d5d4516917d9cc1101e3ccc1ab:cznic_token/vendor/modernc.org/token
+
+pre-build:
+	cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} npm ci
+	cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} npm run build
+
+# (for maintainer) helper target to generate node_modules tarball
+make-npm-cache: extract
+	@cd ${WRKDIR} && ${RM} -r .npm
+	@cd ${WRKSRC} && ${SETENV} HOME=${WRKDIR} npm ci
+	@cd ${WRKDIR} \
+		&& ${TAR} -c --zstd -f ${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX} .npm \
+		&& ${ECHO} "Please upload the file ${WRKDIR}/${PORTNAME}-npm-cache-${DISTVERSION}${EXTRACT_SUFX}"
+.include <bsd.port.mk>
diff --git a/mail/mailpit/distinfo b/mail/mailpit/distinfo
new file mode 100644
index 000000000000..5d75db0c976c
--- /dev/null
+++ b/mail/mailpit/distinfo
@@ -0,0 +1,111 @@
+TIMESTAMP = 1681998519
+SHA256 (mailpit-npm-cache-1.5.5.tar.zst) = 4d28cd04752dded2a4f2cd88423678d39dec807beca499ec3e8fe08fbb0998d6
+SIZE (mailpit-npm-cache-1.5.5.tar.zst) = 25473265
+SHA256 (axllent-mailpit-v1.5.5_GH0.tar.gz) = 4389d55efa5a5af876e1d109aee96b3cb5ad0759a1ade8b747ca1a9e834f9d9f
+SIZE (axllent-mailpit-v1.5.5_GH0.tar.gz) = 247685
+SHA256 (DATA-DOG-go-sqlmock-v1.5.0_GH0.tar.gz) = b78616fddfcc76892aecb5344968d7f3843128b70eba6c4752f092dc992c3b98
+SIZE (DATA-DOG-go-sqlmock-v1.5.0_GH0.tar.gz) = 35521
+SHA256 (GehirnInc-crypt-8cc1b52080c5_GH0.tar.gz) = cb2d55d38f2101e85b6a35ad8d5af6b847152579a3968999152cb5e93047abbd
+SIZE (GehirnInc-crypt-8cc1b52080c5_GH0.tar.gz) = 11452
+SHA256 (GuiaBolso-darwin-fd6d2aa3d244_GH0.tar.gz) = 84a04475f8066b082cbf0f271f80ce9714c6b460137823c8b4497eec49f0e60e
+SIZE (GuiaBolso-darwin-fd6d2aa3d244_GH0.tar.gz) = 9351
+SHA256 (axllent-semver-v0.0.1_GH0.tar.gz) = f8b2d3a89de26290fa9d6bce7d39f516c71fb09868b4afea1709595c90e747d9
+SIZE (axllent-semver-v0.0.1_GH0.tar.gz) = 5249
+SHA256 (cention-sany-utf7-26cad61bd60a_GH0.tar.gz) = d52ac4bc7bda16115878689db0681c6853fb072976bcb82c1d690bdbe02d3c23
+SIZE (cention-sany-utf7-26cad61bd60a_GH0.tar.gz) = 8505
+SHA256 (cznic-ql-v1.2.0_GH0.tar.gz) = 57da3482dcbf5a20b30cce83b332d5ea079925f32d2278147af4ca84baa2ea4a
+SIZE (cznic-ql-v1.2.0_GH0.tar.gz) = 382576
+SHA256 (disintegration-imaging-v1.6.2_GH0.tar.gz) = ddc0cbbf306630d39ee710ff055bb9503d30598485f76f51564ee3ae13d6611a
+SIZE (disintegration-imaging-v1.6.2_GH0.tar.gz) = 2212334
+SHA256 (dustin-go-humanize-v1.0.1_GH0.tar.gz) = ac3a0d8d0eef07c75d12eddce775a8e8306dfb9783a45312597c34ff643793d8
+SIZE (dustin-go-humanize-v1.0.1_GH0.tar.gz) = 17692
+SHA256 (go-check-check-41f04d3bba15_GH0.tar.gz) = 2d5b1036909b241e44f0d6a7cfa936cf9f875efb4f0af077cd61585c6d0c0432
+SIZE (go-check-check-41f04d3bba15_GH0.tar.gz) = 31614
+SHA256 (gogs-chardet-b7413eaefb8f_GH0.tar.gz) = ccabbd908d627a1916ba07f72bb8ba352f85e1866baf67f59a930484d30c743b
+SIZE (gogs-chardet-b7413eaefb8f_GH0.tar.gz) = 267312
+SHA256 (golang-crypto-v0.7.0_GH0.tar.gz) = a7e73081a33f1bf496753a0cfd374052fb52da16d00600ca411d086a23da6178
+SIZE (golang-crypto-v0.7.0_GH0.tar.gz) = 1634438
+SHA256 (golang-image-v0.6.0_GH0.tar.gz) = fd8439081a96660f2b6e8babedd9b3abe68ff4954b31dfe15f0a9a2922f67367
+SIZE (golang-image-v0.6.0_GH0.tar.gz) = 5040314
+SHA256 (golang-mod-v0.9.0_GH0.tar.gz) = f3c3a275e805a29229203694ab85f1055f1d0e4d3819b879c52d72fd65a4a7bb
+SIZE (golang-mod-v0.9.0_GH0.tar.gz) = 120392
+SHA256 (golang-net-v0.8.0_GH0.tar.gz) = f9e2128a2d6861db0595428c7cce62fe5a131348a6c7651b6efa8b03d0b10831
+SIZE (golang-net-v0.8.0_GH0.tar.gz) = 1244302
+SHA256 (golang-sys-v0.6.0_GH0.tar.gz) = b4f6d17c7a128f76169964b437cb66b3f2dbf9a33361928ec19dfecf7b03fc54
+SIZE (golang-sys-v0.6.0_GH0.tar.gz) = 1434234
+SHA256 (golang-text-v0.8.0_GH0.tar.gz) = aeaec799a8e0b02523c80fed03383da04bf1b9c9ef431ed4d34b70488fbeaa64
+SIZE (golang-text-v0.8.0_GH0.tar.gz) = 8359526
+SHA256 (golang-tools-v0.7.0_GH0.tar.gz) = 5779447bd5ed37eb725a3506827e218acc966e8d30cc00f4d74ff39da3bfdad4
+SIZE (golang-tools-v0.7.0_GH0.tar.gz) = 3323336
+SHA256 (google-uuid-v1.3.0_GH0.tar.gz) = 7f7f37c47980e0afcc178a9ffc390bec29ed2371919b4c07658eb01791a7f921
+SIZE (google-uuid-v1.3.0_GH0.tar.gz) = 16210
+SHA256 (gorilla-mux-v1.8.0_GH0.tar.gz) = ea2639259d2ce6f402636655e91eb93ba69c139e3cbf80b044ee393ada53757b
+SIZE (gorilla-mux-v1.8.0_GH0.tar.gz) = 45517
+SHA256 (gorilla-websocket-v1.5.0_GH0.tar.gz) = 5d86f9e1c76ff7ceca0747f78b79864fbaec9d440f4fdb03197466e5102a86b0
+SIZE (gorilla-websocket-v1.5.0_GH0.tar.gz) = 54155
+SHA256 (inconshreveable-mousetrap-v1.1.0_GH0.tar.gz) = ab23e7c5cbf42564eb0190ee051b7217c04fd2599d2f26e9ebe205db75963141
+SIZE (inconshreveable-mousetrap-v1.1.0_GH0.tar.gz) = 5338
+SHA256 (jaytaylor-html2text-74c2419ad056_GH0.tar.gz) = 66ea85d591c790662befca911b4f0d017ead597f3c6e6a5af52f89673bc628b0
+SIZE (jaytaylor-html2text-74c2419ad056_GH0.tar.gz) = 15610
+SHA256 (jhillyerd-enmime-v0.11.1_GH0.tar.gz) = ee6aa014f82aad3e9ea79dc92b8734b7de4041bff5b6c036b5e0ce40fafec9e1
+SIZE (jhillyerd-enmime-v0.11.1_GH0.tar.gz) = 175972
+SHA256 (k3a-html2text-v1.1.0_GH0.tar.gz) = 900a4b940e913aae86a0791245811d157e9f957055df36716e1b9afb35d716e6
+SIZE (k3a-html2text-v1.1.0_GH0.tar.gz) = 21886
+SHA256 (kballard-go-shellquote-95032a82bc51_GH0.tar.gz) = dde336eb697f7f9c26cf6d1467f75b6cf559262c1b0b110d28fff29790f76bc5
+SIZE (kballard-go-shellquote-95032a82bc51_GH0.tar.gz) = 4328
+SHA256 (klauspost-compress-v1.16.3_GH0.tar.gz) = 819977bde09c96de1d098b3a6f77b2a42e1f9800d26208e44fd530dd26d35d6a
+SIZE (klauspost-compress-v1.16.3_GH0.tar.gz) = 37728083
+SHA256 (kr-pretty-v0.3.0_GH0.tar.gz) = c264e7939bf8d989d388c1156ea0c8bdeb3659b789e83aac6bd4689e8613f3f6
+SIZE (kr-pretty-v0.3.0_GH0.tar.gz) = 10041
+SHA256 (leporo-sqlf-v1.3.0_GH0.tar.gz) = a964d9d1e4648e712d19b7586ea9755255c0f7931ba594098a3bbc6767125025
+SIZE (leporo-sqlf-v1.3.0_GH0.tar.gz) = 19739
+SHA256 (lukechampine-uint128-v1.3.0_GH0.tar.gz) = 4056b6be2d0f8346191ddec2da02fe6467edbd2ed0fb02ced9b8004017a307ca
+SIZE (lukechampine-uint128-v1.3.0_GH0.tar.gz) = 7197
+SHA256 (mattn-go-isatty-v0.0.18_GH0.tar.gz) = 5b59235986f7a917559181ff814f83f610928b444f290bed733c3f2f900b803d
+SIZE (mattn-go-isatty-v0.0.18_GH0.tar.gz) = 4675
+SHA256 (mattn-go-runewidth-v0.0.14_GH0.tar.gz) = 0e6a49d6a8f694154af2746a820d4c5f13fe3d9b0968bdf16fcf939dd461e034
+SIZE (mattn-go-runewidth-v0.0.14_GH0.tar.gz) = 18274
+SHA256 (mattn-go-shellwords-v1.0.12_GH0.tar.gz) = 9884291747f54aa51a946b0880854ec6ac6e1f4c06899ba9be5ae5a6364428db
+SIZE (mattn-go-shellwords-v1.0.12_GH0.tar.gz) = 6325
+SHA256 (mhale-smtpd-v0.8.0_GH0.tar.gz) = 8263e6a61f2dfbe25739ff10445660bc3fa64101cdac8eff7b747256b5e574d0
+SIZE (mhale-smtpd-v0.8.0_GH0.tar.gz) = 23351
+SHA256 (olekukonko-tablewriter-v0.0.5_GH0.tar.gz) = 14a1294a8267facc9bc99a230b8871517e6db284ccc7e39030313befa124677f
+SIZE (olekukonko-tablewriter-v0.0.5_GH0.tar.gz) = 19568
+SHA256 (pkg-errors-v0.9.1_GH0.tar.gz) = 56bfd893023daa498508bfe161de1be83299fcf15376035e7df79cbd7d6fa608
+SIZE (pkg-errors-v0.9.1_GH0.tar.gz) = 13415
+SHA256 (remyoudompheng-bigfft-24d4a6f8daec_GH0.tar.gz) = 449a58b41c7e13d62cabaee8d9ee78a108a3de60cba27f5c194bd5eba489bab6
+SIZE (remyoudompheng-bigfft-24d4a6f8daec_GH0.tar.gz) = 14841
+SHA256 (rivo-uniseg-v0.4.4_GH0.tar.gz) = eb2837932d0a666e13ea6b4cebf698096266d4f14740faa78c63b8291cf1fb5c
+SIZE (rivo-uniseg-v0.4.4_GH0.tar.gz) = 453399
+SHA256 (satori-go.uuid-v1.2.0_GH0.tar.gz) = 6f9d9549958252d7c5a5ed1cabeedeaab7a600ca0b888a3666cce4c3590aa5a7
+SIZE (satori-go.uuid-v1.2.0_GH0.tar.gz) = 8297
+SHA256 (sirupsen-logrus-v1.9.0_GH0.tar.gz) = 12446ed9eb96573c2aae4df2db81900a65bfd21d2ce92efde7201614e42134f7
+SIZE (sirupsen-logrus-v1.9.0_GH0.tar.gz) = 49098
+SHA256 (spf13-cobra-v1.6.1_GH0.tar.gz) = f38f8b26895903be06089ff20882fc771dbca12f41cf81d7bd823be65e6cec52
+SIZE (spf13-cobra-v1.6.1_GH0.tar.gz) = 111053
+SHA256 (spf13-pflag-v1.0.5_GH0.tar.gz) = 9a2cae1f8e8ab0d2cc8ebe468e871af28d9ac0962cf0520999e3ba85f0c7b808
+SIZE (spf13-pflag-v1.0.5_GH0.tar.gz) = 50796
+SHA256 (ssor-bom-6386211fdfcf_GH0.tar.gz) = 6e05adf64dd2846fa27f0e89038171600806529d3f0df3ef50edb42304399336
+SIZE (ssor-bom-6386211fdfcf_GH0.tar.gz) = 1802
+SHA256 (tg123-go-htpasswd-v1.2.1_GH0.tar.gz) = f2082de6a849fe1265c05b1ddc9363a718c3167900cafe8f1b586cb978f5be79
+SIZE (tg123-go-htpasswd-v1.2.1_GH0.tar.gz) = 90158
+SHA256 (valyala-bytebufferpool-v1.0.0_GH0.tar.gz) = 089013e3429ebe7fd2bc3527f003bf3f3f639891e5d8ba6a56010e3671465e1f
+SIZE (valyala-bytebufferpool-v1.0.0_GH0.tar.gz) = 5025
+SHA256 (cznic-cc-03159e8e41eec8d08c1e502bfc46868b9a03aa57_GL0.tar.gz) = 6051e375ee9adaf9b64614d36492101628a73a58d95a130b6ab0d538fabd63a4
+SIZE (cznic-cc-03159e8e41eec8d08c1e502bfc46868b9a03aa57_GL0.tar.gz) = 16569981
+SHA256 (cznic-ccgo-0641811a3b4e1b829e42b48fa6cf751b3a681ed5_GL0.tar.gz) = 207971e2bf9143e75703315ef6c001d46420b08b855e0a859a067325c74374f3
+SIZE (cznic-ccgo-0641811a3b4e1b829e42b48fa6cf751b3a681ed5_GL0.tar.gz) = 26029949
+SHA256 (cznic-libc-1e22c18cf2de8aa86d5b19b165f354f99c70479c_GL0.tar.gz) = 142ece0ff111c05a2c6de2c8687f033785dc85a9e3818bc32198633b1f33990d
+SIZE (cznic-libc-1e22c18cf2de8aa86d5b19b165f354f99c70479c_GL0.tar.gz) = 6445541
+SHA256 (cznic-mathutil-b13e5b5643328f15fd2fcedc85f647f0d8f9180f_GL0.tar.gz) = b1530746eb9f943063aca36d112d77e17e41bd6eb12956c44bb4d89ab7dae9e6
+SIZE (cznic-mathutil-b13e5b5643328f15fd2fcedc85f647f0d8f9180f_GL0.tar.gz) = 122056
+SHA256 (cznic-memory-93bf078bc8d6adb7f31db2b81355b62eb168b17f_GL0.tar.gz) = f9da124c17d7244bd3e2ead50214ee9f7709ad94feaf91fba2740299e133afea
+SIZE (cznic-memory-93bf078bc8d6adb7f31db2b81355b62eb168b17f_GL0.tar.gz) = 11846
+SHA256 (cznic-opt-6b647abadf922391a4527f3a4fa1817eff08b7cd_GL0.tar.gz) = b48fa23d5741847c40bfa32fc1715285027a44d18fd95715ffe8ecfea096f68d
+SIZE (cznic-opt-6b647abadf922391a4527f3a4fa1817eff08b7cd_GL0.tar.gz) = 3631
+SHA256 (cznic-sqlite-df33b8d15107f3cc777799c0fe105f74ef499e62_GL0.tar.gz) = caadbcbb28c0f0999b0413e263b807a73424f6c6ff173756aaf020b0fc817fb1
+SIZE (cznic-sqlite-df33b8d15107f3cc777799c0fe105f74ef499e62_GL0.tar.gz) = 49782903
+SHA256 (cznic-strutil-bba0c72b66bb9ced2dfd2ee521b7f16b2cbb39fa_GL0.tar.gz) = 5ff5934e9d0069912a279e348c4ce090f04de1fa44a01745a00f72ccb3feffb1
+SIZE (cznic-strutil-bba0c72b66bb9ced2dfd2ee521b7f16b2cbb39fa_GL0.tar.gz) = 9759
+SHA256 (cznic-token-24e30cd78ee0f2d5d4516917d9cc1101e3ccc1ab_GL0.tar.gz) = 41c89df4e6b92f1d3bfb411810ebdf8a0919b6bb6166f0629c368e66cc1d4a7c
+SIZE (cznic-token-24e30cd78ee0f2d5d4516917d9cc1101e3ccc1ab_GL0.tar.gz) = 6082
diff --git a/mail/mailpit/files/mailpit.in b/mail/mailpit/files/mailpit.in
new file mode 100644
index 000000000000..fd61714d314f
--- /dev/null
+++ b/mail/mailpit/files/mailpit.in
@@ -0,0 +1,45 @@
+#!/bin/sh
+
+# PROVIDE: mailpit
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+#
+# Add these lines to /etc/rc.conf.local or /etc/rc.conf
+# to enable this service:
+#
+# mailpit_enable (bool):	Set to NO by default.
+#				Set it to YES to enable mailpit.
+# mailpit_bind_addr (ipaddr):	Set to the address mailpit should listen on
+#				for incoming connections. 127.0.0.1 by default.
+# mailpit_smtp_port (int):	Port to listen on for SMTP. 1025 by default.
+# mailpit_api_port (int):	Port to listen on for API. 8025 by default.
+# mailpit_ui_port (int):	Port to listen on for UI. 8025 (same as API)
+#				by default.
+# mailpit_runtimeuser (string):	User mailpit should run as. 'nobody' by default.
+# mailpit_args (string):	Custom extra arguments for mailpit
+#
+# Please think twice before exposing this server to the Internet. This is an
+# insecure tool without any authentication specifically to aid development
+# and debugging. Use in controlled environments only is highly recommended.
+#
+
+. /etc/rc.subr
+
+name=mailpit
+rcvar=mailpit_enable
+desc="Run mailpit developer's mail server"
+
+load_rc_config "${name}"
+
+: ${mailpit_enable:=NO}
+: ${mailpit_bind_addr:=127.0.0.1}
+: ${mailpit_smtp_port:=1025}
+: ${mailpit_api_port:=8025}
+: ${mailpit_ui_port:=8025}
+: ${mailpit_runtimeuser:=nobody}
+
+pidfile="/var/run/${name}.pid"
+command=/usr/sbin/daemon
+command_args="-c -r -f -P ${pidfile} -u ${mailpit_runtimeuser} %%PREFIX%%/bin/${name} --listen ${mailpit_bind_addr}:${mailpit_api_port} --smtp ${mailpit_bind_addr}:${mailpit_smtp_port} ${mailpit_args}"
+
+run_rc_command "$1"
diff --git a/mail/mailpit/files/pkg-message.in b/mail/mailpit/files/pkg-message.in
new file mode 100644
index 000000000000..60aa0a77a76f
--- /dev/null
+++ b/mail/mailpit/files/pkg-message.in
@@ -0,0 +1,14 @@
+[
+{ type: install
+  message: <<EOM
+To run mailpit server on startup, add mailpit_enable="YES" to /etc/rc.conf.
+
+The SMTP server listens to 127.0.0.1:1025 by default while the web UI can
+be reached at http://127.0.0.1:8025/
+
+Custom arguments can be passed to mailpit via the mailpit_args variable.
+
+To change this look at the rc.conf variables in %%PREFIX%%/etc/rc.d/mailpit.
+EOM
+}
+]
diff --git a/mail/mailpit/pkg-descr b/mail/mailpit/pkg-descr
new file mode 100644
index 000000000000..7aff75789bce
--- /dev/null
+++ b/mail/mailpit/pkg-descr
@@ -0,0 +1,4 @@
+Mailpit is a multi-platform email testing tool & API for developers.
+
+It acts as both an SMTP server, and provides a web interface to
+view all captured emails.