Index | Thread | Search

From:
Edd Barrett <edd@theunixzoo.co.uk>
Subject:
mail/notmuch: install mutt integration
To:
ports@openbsd.org
Date:
Mon, 23 Sep 2024 21:42:21 +0100

Download raw body.

Thread
Hi,

This diff adds a subpackage to notmuch to install the mutt integration.

Seems to work well. The search functionality is very similar to `mu find
--format=links`, if you are already familiar with that.

Comments, OK?


Index: Makefile
===================================================================
RCS file: /cvs/ports/mail/notmuch/notmuch/Makefile,v
diff -u -p -r1.21 Makefile
--- Makefile	6 May 2024 12:23:45 -0000	1.21
+++ Makefile	23 Sep 2024 20:22:46 -0000
@@ -1,14 +1,16 @@
 COMMENT-main =		mail indexer, tagger and threader
 COMMENT-emacs =		Emacs bindings for notmuch
+COMMENT-mutt =		Mutt integration for notmuch
 
 PKGNAME-main =		notmuch-${V}
 PKGNAME-emacs =		notmuch-emacs-${V}
+PKGNAME-mutt =		notmuch-mutt-${V}
 REVISION-emacs =	0
 REVISION-main =		0
 
 SHARED_LIBS +=		notmuch	1.2
 
-MULTI_PACKAGES =	-main -emacs
+MULTI_PACKAGES =	-main -emacs -mutt
 DEBUG_PACKAGES =	-main
 
 COMPILER=		base-clang ports-gcc
@@ -25,6 +27,11 @@ RUN_DEPENDS-emacs =	devel/desktop-file-u
 			editors/emacs \
 			${FULLPKGNAME-main}:${FULLPKGPATH-main}
 
+RUN_DEPENDS-mutt =	devel/p5-Term-ReadLine-Gnu \
+			mail/p5-Mail-Box \
+			mail/p5-Mail-Tools \
+			${FULLPKGNAME-main}:${FULLPKGPATH-main}
+
 # this builds, though does not currently install, cffi-based Python
 # bindings using its own Makefile rather than the standard ports
 # Python build infra. (there is also ../py-notmuch which packages
@@ -67,9 +74,19 @@ post-extract:
 	cd ${WRKSRC}/test; [ -r test-lib-OPENBSD.sh ] || \
 	    cp test-lib-FREEBSD.sh test-lib-OPENBSD.sh
 
+EXAMPLES_DIR=${PREFIX}/share/examples/notmuch
 post-install:
 	rm ${PREFIX}/man/man1/notmuch-setup.1.gz
 	gunzip ${PREFIX}/man/*/*gz
 	ln -s notmuch.1 ${PREFIX}/man/man1/notmuch-setup.1
+
+	cd ${WRKBUILD}/contrib/notmuch-mutt && \
+		${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} \
+		${ALL_FAKE_FLAGS} ${FAKE_TARGET}
+	${INSTALL_DATA_DIR} ${EXAMPLES_DIR}/mutt
+	mv ${WRKINST}/etc/Muttrc.d/notmuch-mutt.rc ${EXAMPLES_DIR}/mutt/
+	rmdir ${WRKINST}/etc/Muttrc.d
+	${INSTALL_DATA} ${WRKSRC}/contrib/notmuch-mutt/README \
+		${EXAMPLES_DIR}/mutt/
 
 .include <bsd.port.mk>
Index: pkg/DESCR-mutt
===================================================================
RCS file: pkg/DESCR-mutt
diff -N pkg/DESCR-mutt
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ pkg/DESCR-mutt	23 Sep 2024 20:12:13 -0000
@@ -0,0 +1,9 @@
+notmuch-mutt provide integration among the Mutt mail user agent and the Notmuch
+mail indexer.
+
+notmuch-mutt offer two main integration features. The first one is the ability
+of stating a search query interactively and then jump to a fresh Maildir
+containing its search results only. The second one is the ability to
+reconstruct threads on the fly starting from the currently highlighted mail,
+which comes handy when a thread has been split across different maildirs,
+archived, or the like.
Index: pkg/PLIST-mutt
===================================================================
RCS file: pkg/PLIST-mutt
diff -N pkg/PLIST-mutt
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ pkg/PLIST-mutt	23 Sep 2024 20:08:01 -0000
@@ -0,0 +1,6 @@
+bin/notmuch-mutt
+@man man/man1/notmuch-mutt.1
+share/examples/notmuch/
+share/examples/notmuch/mutt/
+share/examples/notmuch/mutt/README
+share/examples/notmuch/mutt/notmuch-mutt.rc

-- 
Best Regards
Edd Barrett

https://www.theunixzoo.co.uk