Index | Thread | Search

From:
Omar Polo <op@omarpolo.com>
Subject:
Re: new/replace: opensmtpd-extras-* with opensmtpd-tables-*
To:
Omar Polo <op@omarpolo.com>
Cc:
ports@openbsd.org
Date:
Thu, 02 May 2024 11:18:50 +0200

Download raw body.

Thread
On 2024/04/30 16:10:28 +0200, Omar Polo <op@omarpolo.com> wrote:
> With the upcoming change in the transport layer for the tables, we've
> also taken the chance to split them into separate repositories.
> 
> The idea is to remove the current opensmtpd-extra-* packages and import
> the new set of opensmtpd-table-* packages (in the tarball attached.)
> 
> The queue, schedulers and table-python will be removed, the other
> remains the same for the end-user point of view.
> 
> (queue-{null,ram,stub} and schedule-{ram,stub} I don't think are useful
> nor really used.  If anyone is using table-python I can help adapting it,
> but they should really update to python3 and implement the stdio
> protocol.  It's amazing how easy it is to write tables now.)
> 
> The -mysql, -pgqsl and -redis package gets replaced with their
> corresponding opensmtpd-table-* package.  -main instead can't be
> migrated since it contains several tables that are now in different
> repos.
> 
> To make the migration smooth, I decided to keep opensmtpd-extras-main as
> an empty "meta" package that depends on opensmtpd-table-{ldap,passwd,
> socketmap,sqlite}.
> 
> I verified by running pkg_add -u in /usr/ports/packages/... that the
> migration is painless, but please pay attention to the quirks diff and
> @conflict and @pkgpath lines in the PLISTs.
> 
> ok to import?

Updated diff after a quirks change.

Index: devel/quirks/Makefile
===================================================================
RCS file: /home/cvs/ports/devel/quirks/Makefile,v
diff -u -p -r1.1613 Makefile
--- devel/quirks/Makefile	1 May 2024 10:24:18 -0000	1.1613
+++ devel/quirks/Makefile	2 May 2024 09:17:50 -0000
@@ -3,7 +3,7 @@ CATEGORIES =	devel databases
 DISTFILES =
 
 # API.rev
-PKGNAME =	quirks-7.21
+PKGNAME =	quirks-7.22
 PKG_ARCH =	*
 MAINTAINER =	Marc Espie <espie@openbsd.org>
 
Index: devel/quirks/files/Quirks.pm
===================================================================
RCS file: /home/cvs/ports/devel/quirks/files/Quirks.pm,v
diff -u -p -r1.1624 Quirks.pm
--- devel/quirks/files/Quirks.pm	1 May 2024 10:24:18 -0000	1.1624
+++ devel/quirks/files/Quirks.pm	2 May 2024 09:13:17 -0000
@@ -813,13 +813,16 @@ my $stem_extensions = {
 	'sendxmpp' => 'go-sendxmpp',
 	'libreddit' => 'redlib',
 	'rebar3' => 'erl25-rebar3',
+# 7.6
 	'stalwart-cli' => 'stalwart-mail',
 	'stalwart-jmap' => 'stalwart-mail',
 	'stalwart-imap' => 'stalwart-mail',
 	'stalwart-smtp' => 'stalwart-mail',
 	'BlockZone' => 'blockzone',
-# 7.6
 	'tepl' => 'libgedit-tepl',
+	'opensmtpd-extras-mysql' => 'opensmtpd-table-mysql',
+	'opensmtpd-extras-pgsql' => 'opensmtpd-table-postgres',
+	'opensmtpd-extras-redis' => 'opensmtpd-table-redis',
 };
 
 my $obsolete_reason = {};
@@ -1924,6 +1927,7 @@ setup_obsolete_reason(
 	31 => 'mkplaylist',
 	1 => 'proteus',
 	1 => qr{^tryton},
+# 7.6
 	5 => 'py3-pyls-black',
 	5 => 'py3-python-language-server',
 	5 => 'py3-python-jsonrpc-server',
@@ -1932,6 +1936,7 @@ setup_obsolete_reason(
 	3 => 'transcode',
 	3 => 'phonon-backend-gstreamer',
 	0 => 'gone',
+	6 => 'opensmtpd-extras-python'
 );
 
 # though it's not yet used, these should be pkgnames, so that eventually
Index: mail/opensmtpd-extras/Makefile
===================================================================
RCS file: /home/cvs/ports/mail/opensmtpd-extras/Makefile,v
diff -u -p -r1.38 Makefile
--- mail/opensmtpd-extras/Makefile	31 Jan 2024 18:00:10 -0000	1.38
+++ mail/opensmtpd-extras/Makefile	30 Apr 2024 13:41:28 -0000
@@ -1,21 +1,8 @@
-COMMENT-main=		extras for smtpd
-COMMENT-mysql=		mysql based smtpd table support
-COMMENT-pgsql=		postgresql based smtpd table support
-COMMENT-python=		extras with python bindings for smtpd
-COMMENT-redis=		redis based smtpd table support
-
-V=			6.7.1
-DISTNAME=		opensmtpd-extras-${V}
-PKGNAME-main=		${DISTNAME}
-PKGNAME-mysql=		opensmtpd-extras-mysql-${V}
-PKGNAME-pgsql=		opensmtpd-extras-pgsql-${V}
-PKGNAME-python=		opensmtpd-extras-python-${V}
-PKGNAME-redis=		opensmtpd-extras-redis-${V}
-REVISION-main=		0
-REVISION-mysql=		1
-REVISION-pgsql=		1
-REVISION-python=	0
-REVISION-redis=		0
+COMMENT-main=		meta package with common OpenSMTPD tables
+
+PKGNAME=		opensmtpd-extras-6.7.1
+PKGNAME-main=		${PKGNAME}
+REVISION-main=		1
 EPOCH=			0
 
 CATEGORIES=		mail
@@ -25,58 +12,21 @@ HOMEPAGE=		https://www.opensmtpd.org/
 MAINTAINER=		Giovanni Bechis <giovanni@openbsd.org>, \
 			Joerg Jung <jung@openbsd.org>
 
-MULTI_PACKAGES=		-main -mysql -pgsql -python -redis
+MULTI_PACKAGES=		-main
 
 # BSD
 PERMIT_PACKAGE=	Yes
 
-WANTLIB-main=		c crypto event m pthread ssl sqlite3 z
-WANTLIB-mysql=		c crypto event ssl m pthread mariadb z
-WANTLIB-pgsql=		c crypto event ssl m pq
-WANTLIB-python=		c crypto event iconv intl ssl m util pthread ${MODPY_WANTLIB}
-WANTLIB-redis=		c crypto event ssl hiredis
-
-SITES=			${HOMEPAGE}archives/
-
-MODULES=		lang/python
-MODPY_VERSION =	${MODPY_DEFAULT_VERSION_2}
-MODPY_RUNDEP=		no
-
-LIB_DEPENDS-main=	databases/sqlite3
-LIB_DEPENDS-mysql=	databases/mariadb,-main
-LIB_DEPENDS-pgsql=	databases/postgresql,-main
-LIB_DEPENDS-python=	${MODPY_LIB_DEPENDS}
-LIB_DEPENDS-redis=	databases/libhiredis
-RUN_DEPENDS-python=	${MODPY_RUN_DEPENDS}
-
-BUILD_DEPENDS = ${MODGNU_AUTOCONF_DEPENDS} \
-                ${MODGNU_AUTOMAKE_DEPENDS}
-
-AUTOCONF_VERSION=	2.69
-AUTOMAKE_VERSION=	1.16
-CONFIGURE_STYLE=	autoreconf
-AUTORECONF=		sh bootstrap
-CONFIGURE_ARGS=		--mandir=${PREFIX}/man \
-			--libexecdir=${PREFIX}/libexec \
-			--sysconfdir=${SYSCONFDIR}/mail \
-			--with-cppflags="${CFLAGS} -I${PREFIX}/include \
-			    -I${PREFIX}/include/postgresql" \
-			--with-python-type=python${MODPY_VERSION} \
-			--with-queue-null \
-			--with-queue-python \
-			--with-queue-ram \
-			--with-queue-stub \
-			--with-scheduler-python \
-			--with-scheduler-ram \
-			--with-scheduler-stub \
-			--with-table-ldap \
-			--with-table-mysql \
-			--with-table-passwd \
-			--with-table-postgres \
-			--with-table-python \
-			--with-table-redis \
-			--with-table-socketmap \
-			--with-table-sqlite \
-			--with-table-stub
+RUN_DEPENDS-main=	mail/opensmtpd-tables/ldap \
+			mail/opensmtpd-tables/passwd \
+			mail/opensmtpd-tables/socketmap \
+			mail/opensmtpd-tables/sqlite
+
+DISTFILES=	# empty
+NO_BUILD=	Yes
+NO_TEST=	Yes
+
+# don't install anything
+do-install:
 
 .include <bsd.port.mk>
Index: mail/opensmtpd-extras/patches/patch-api_mproc_c
===================================================================
RCS file: mail/opensmtpd-extras/patches/patch-api_mproc_c
diff -N mail/opensmtpd-extras/patches/patch-api_mproc_c
--- mail/opensmtpd-extras/patches/patch-api_mproc_c	31 Jan 2024 18:00:10 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-use imsg_get_fd()
-
-Index: api/mproc.c
---- api/mproc.c.orig
-+++ api/mproc.c
-@@ -306,7 +306,7 @@ void
- m_forward(struct mproc *p, struct imsg *imsg)
- {
- 	imsg_compose(&p->imsgbuf, imsg->hdr.type, imsg->hdr.peerid,
--	    imsg->hdr.pid, imsg->fd, imsg->data,
-+	    imsg->hdr.pid, imsg_get_fd(imsg), imsg->data,
- 	    imsg->hdr.len - sizeof(imsg->hdr));
- 
- 	log_trace(TRACE_MPROC, "mproc: %s -> %s : %zu %s (forward)",
Index: mail/opensmtpd-extras/patches/patch-api_queue_api_c
===================================================================
RCS file: mail/opensmtpd-extras/patches/patch-api_queue_api_c
diff -N mail/opensmtpd-extras/patches/patch-api_queue_api_c
--- mail/opensmtpd-extras/patches/patch-api_queue_api_c	31 Jan 2024 18:00:10 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-use imsg_get_fd
-
-Index: api/queue_api.c
---- api/queue_api.c.orig
-+++ api/queue_api.c
-@@ -171,7 +171,7 @@ queue_msg_dispatch(void)
- 			log_warn("warn: queue-api: mkstemp");
- 		}
- 		else {
--			ifile = fdopen(imsg.fd, "r");
-+			ifile = fdopen(imsg_get_fd(&imsg), "r");
- 			ofile = fdopen(fd, "w");
- 			m = n = 0;
- 			if (ifile && ofile) {
Index: mail/opensmtpd-extras/pkg/DESCR-main
===================================================================
RCS file: /home/cvs/ports/mail/opensmtpd-extras/pkg/DESCR-main,v
diff -u -p -r1.2 DESCR-main
--- mail/opensmtpd-extras/pkg/DESCR-main	30 Nov 2015 19:47:32 -0000	1.2
+++ mail/opensmtpd-extras/pkg/DESCR-main	30 Apr 2024 13:56:06 -0000
@@ -1 +1,2 @@
-Extras for OpenSMTPD, including several filters, queues, schedulers and tables.
+Package deprecated; install the relevant opensmtpd-table-* package
+instead.
Index: mail/opensmtpd-extras/pkg/DESCR-mysql
===================================================================
RCS file: mail/opensmtpd-extras/pkg/DESCR-mysql
diff -N mail/opensmtpd-extras/pkg/DESCR-mysql
--- mail/opensmtpd-extras/pkg/DESCR-mysql	30 Nov 2015 19:47:32 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1 +0,0 @@
-MySQL based OpenSMTPD table.
Index: mail/opensmtpd-extras/pkg/DESCR-pgsql
===================================================================
RCS file: mail/opensmtpd-extras/pkg/DESCR-pgsql
diff -N mail/opensmtpd-extras/pkg/DESCR-pgsql
--- mail/opensmtpd-extras/pkg/DESCR-pgsql	30 Nov 2015 19:47:32 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1 +0,0 @@
-PostgreSQL based OpenSMTPD table.
Index: mail/opensmtpd-extras/pkg/DESCR-python
===================================================================
RCS file: mail/opensmtpd-extras/pkg/DESCR-python
diff -N mail/opensmtpd-extras/pkg/DESCR-python
--- mail/opensmtpd-extras/pkg/DESCR-python	30 Nov 2015 19:47:32 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1 +0,0 @@
-Extras with Python bindings for OpenSMTPD.
Index: mail/opensmtpd-extras/pkg/DESCR-redis
===================================================================
RCS file: mail/opensmtpd-extras/pkg/DESCR-redis
diff -N mail/opensmtpd-extras/pkg/DESCR-redis
--- mail/opensmtpd-extras/pkg/DESCR-redis	30 Nov 2015 19:47:32 -0000	1.1
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1 +0,0 @@
-Redis based OpenSMTPD table.
Index: mail/opensmtpd-extras/pkg/PLIST-main
===================================================================
RCS file: /home/cvs/ports/mail/opensmtpd-extras/pkg/PLIST-main,v
diff -u -p -r1.8 PLIST-main
--- mail/opensmtpd-extras/pkg/PLIST-main	11 Mar 2022 19:34:44 -0000	1.8
+++ mail/opensmtpd-extras/pkg/PLIST-main	30 Apr 2024 13:38:19 -0000
@@ -1,14 +0,0 @@
-libexec/smtpd/
-@bin libexec/smtpd/queue-null
-@bin libexec/smtpd/queue-ram
-@bin libexec/smtpd/queue-stub
-@bin libexec/smtpd/scheduler-ram
-@bin libexec/smtpd/scheduler-stub
-@bin libexec/smtpd/table-ldap
-@bin libexec/smtpd/table-passwd
-@bin libexec/smtpd/table-socketmap
-@bin libexec/smtpd/table-sqlite
-@bin libexec/smtpd/table-stub
-@man man/man5/table-passwd.5
-@man man/man5/table-socketmap.5
-@man man/man5/table-sqlite.5
Index: mail/opensmtpd-extras/pkg/PLIST-mysql
===================================================================
RCS file: mail/opensmtpd-extras/pkg/PLIST-mysql
diff -N mail/opensmtpd-extras/pkg/PLIST-mysql
--- mail/opensmtpd-extras/pkg/PLIST-mysql	11 Mar 2022 19:34:44 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1 +0,0 @@
-@bin libexec/smtpd/table-mysql
Index: mail/opensmtpd-extras/pkg/PLIST-pgsql
===================================================================
RCS file: mail/opensmtpd-extras/pkg/PLIST-pgsql
diff -N mail/opensmtpd-extras/pkg/PLIST-pgsql
--- mail/opensmtpd-extras/pkg/PLIST-pgsql	11 Mar 2022 19:34:44 -0000	1.2
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1 +0,0 @@
-@bin libexec/smtpd/table-postgres
Index: mail/opensmtpd-extras/pkg/PLIST-python
===================================================================
RCS file: mail/opensmtpd-extras/pkg/PLIST-python
diff -N mail/opensmtpd-extras/pkg/PLIST-python
--- mail/opensmtpd-extras/pkg/PLIST-python	11 Mar 2022 19:34:44 -0000	1.4
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,3 +0,0 @@
-@bin libexec/smtpd/queue-python
-@bin libexec/smtpd/scheduler-python
-@bin libexec/smtpd/table-python
Index: mail/opensmtpd-extras/pkg/PLIST-redis
===================================================================
RCS file: mail/opensmtpd-extras/pkg/PLIST-redis
diff -N mail/opensmtpd-extras/pkg/PLIST-redis
--- mail/opensmtpd-extras/pkg/PLIST-redis	11 Mar 2022 19:34:44 -0000	1.3
+++ /dev/null	1 Jan 1970 00:00:00 -0000
@@ -1,2 +0,0 @@
-@bin libexec/smtpd/table-redis
-@man man/man5/table-redis.5