summaryrefslogtreecommitdiff
path: root/mail-client/neomutt
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
commitb590c8d7572b727d565cc0b8ff660d43569845de (patch)
tree06f7a4102ea4e845df8b66660f252920d52952f9 /mail-client/neomutt
parent24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff)
downloadbaldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip
Adding metadata
Diffstat (limited to 'mail-client/neomutt')
-rw-r--r--mail-client/neomutt/Manifest7
-rw-r--r--mail-client/neomutt/metadata.xml40
-rw-r--r--mail-client/neomutt/neomutt-20240201.ebuild176
-rw-r--r--mail-client/neomutt/neomutt-20250510.ebuild176
-rw-r--r--mail-client/neomutt/neomutt-20251211-r1.ebuild182
-rw-r--r--mail-client/neomutt/neomutt-20260105.ebuild178
-rw-r--r--mail-client/neomutt/neomutt-20260406.ebuild178
-rw-r--r--mail-client/neomutt/neomutt-20260504.ebuild178
-rw-r--r--mail-client/neomutt/neomutt-99999999.ebuild179
9 files changed, 1294 insertions, 0 deletions
diff --git a/mail-client/neomutt/Manifest b/mail-client/neomutt/Manifest
new file mode 100644
index 000000000000..149d6105943f
--- /dev/null
+++ b/mail-client/neomutt/Manifest
@@ -0,0 +1,7 @@
+DIST neomutt-20240201.tar.gz 3831010 BLAKE2B 70654b8edb5b6e01585bb3551a7af3722aebc44a70804ec9e16511eec9b892a4bcf68e043699591b2610095558f3893d4d7f5c15e860c7b8c17458a872c3f170 SHA512 431270a093bfa5024f2565aa8921e3482262210ca03c410362b6fa504aa1f2e299d1f6eb63cb05dcaf7b1328051b5d32c4fd719b5cb7ddec83a176a85ff5dc53
+DIST neomutt-20250510.tar.gz 4182433 BLAKE2B 98f5b586a39044f545a749211bfe9f531ba5ca56b83bf2c6cc04811b756f7df5c72c8699f7dd1b143f27de92ee707c05bdaeff893d3076f9b445f18de85a0123 SHA512 91df243b505d68cc8acaa06729e2d2aa70fb7099ba9d29e5121d6ed76d4ee8c603bcc75b2edfb711c57a301c923e83e237634c379008b4419f6875f5ff8936f9
+DIST neomutt-20251211.tar.gz 4194272 BLAKE2B f72d6b20b79ed23d3a5bf0176b391e1cd4a4316d7020ac6882da4d5c81d62af8b06289ce0ea8a569fc9681dfd25eb2abea45431fa043c617d3abd77267e44e94 SHA512 9290a3d6a6cc68bdc567e5f727679f7fee3d69098b10417eeeee974e9fe2b402c3bfd5d4596e2b82f45a416f15bf659c6080c3cf3f8e49270df1f451615a8965
+DIST neomutt-20260105.tar.gz 4194306 BLAKE2B 31af1d5a9f2391452027c61590e1535e0b813f7fbfdb525fc1e75c2116f12fb8c7c0b9535bfac045f6f69c1ba68e4b0420f80633b87f2f6c806b01ec8eb48efb SHA512 07fb4dcbebfc1b2c661232ce4d787e723a3278b02143f7f89732c77d56c9be315fe97431075d79a5e61d0a9bc5cd423c9ebe1a6bd1641f3df772ed455b35bc7a
+DIST neomutt-20260406.tar.gz 4197623 BLAKE2B 82d78e01ef386ce0489d65b460be8294225f573aaeacec61c8cd5abc4a65d803e88273b18215fff84dd16068f78c4234b658966cb0f8f07993f1e4b475be5145 SHA512 80d11ba54216e381852edd0f602d303ec3323691d2d5a73d557a63e11d0c8dfb72736a2febd17eebcedec9f4ce241517d4179127755168a176bfffb9fc7c578f
+DIST neomutt-20260504.tar.gz 4200095 BLAKE2B 2825c89b5a2ec11d96010d4412196c52404d7d90be7d1416be1ce7f1f6b345cc2400fa11db7eab7282494506a180cc923db5fb1246ae0e85d2aea6fc74875546 SHA512 ba8276f1d7daa88c620fe9b5daa8f1dde0865d5a39c0d16d8e2a4144a457fdddeda75d977ce2b5ec040f6de824db3caf327af93a0674775ecc0febba975a998f
+DIST neomutt-test-files-8629adab700a75c54e8e28bf05ad092503a98f75.tar.gz 3673 BLAKE2B 50354f19aedc5fc07d59ecb5b38fa65de16119bc0929f47014bd35dab4d3a4e5953c8b35670f3440003cf0cbccc2d0d2b3a869dc929cdc3cd60b02790270fb54 SHA512 3d4962210bc558234d818801dcaa7851a0aef011c96d91c054af535186ffda42059fc61fb148c48e1b076999fe3159b31589a69a29ed1897f8928f52fcc157d3
diff --git a/mail-client/neomutt/metadata.xml b/mail-client/neomutt/metadata.xml
new file mode 100644
index 000000000000..61f8c7e3c496
--- /dev/null
+++ b/mail-client/neomutt/metadata.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>nicolasbock@gentoo.org</email>
+ <name>Nicolas Bock</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>mschiff@gentoo.org</email>
+ <name>Marc Schiffbauer</name>
+ </maintainer>
+ <use>
+ <flag name="autocrypt">Enable autocrypt.org support</flag>
+ <flag name="berkdb">Enable BDB (Berkley DB) backend for header
+ caching</flag>
+ <flag name="gdbm">Enable GDBM (GNU dbm) backend for header
+ caching</flag>
+ <flag name="kyotocabinet">Enable Kyoto Cabinet database backend for
+ header caching</flag>
+ <flag name="lmdb">Enable LMDB (Lightning Memory-Mapped Database)
+ backend for header caching</flag>
+ <flag name="notmuch">Enable support for
+ <pkg>net-mail/notmuch</pkg>
+ </flag>
+ <flag name="qdbm">Enable QDBM (Quicker Database Manager) database
+ backend for header caching</flag>
+ <flag name="tokyocabinet">Enable Tokyo Cabinet database backend for
+ header caching</flag>
+ <flag name="pgp-classic">Build classic-pgp backend to support PGP/MIME
+ and traditional/inline PGP</flag>
+ <flag name="gpgme">Build gpgme backend to support S/MIME, PGP/MIME and
+ traditional/inline PGP</flag>
+ <flag name="smime-classic">Build classic-smime backend to support
+ S/MIME</flag>
+ <flag name="lz4">Add lz4 support for header cache compression</flag>
+ <flag name="zlib">Add zlib support for header cache compression</flag>
+ <flag name="zstd">Add zstd support for header cache compression</flag>
+ </use>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>
diff --git a/mail-client/neomutt/neomutt-20240201.ebuild b/mail-client/neomutt/neomutt-20240201.ebuild
new file mode 100644
index 000000000000..1e8d56bb0424
--- /dev/null
+++ b/mail-client/neomutt/neomutt-20240201.ebuild
@@ -0,0 +1,176 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="A small but very powerful text-based mail client"
+HOMEPAGE="https://neomutt.org/"
+
+if [[ ${PV} =~ 99999999$ ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/neomutt/neomutt.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~ppc64 ~riscv x86"
+fi
+
+TEST_FILES_COMMIT=8629adab700a75c54e8e28bf05ad092503a98f75
+SRC_URI+=" test? ( https://github.com/${PN}/neomutt-test-files/archive/${TEST_FILES_COMMIT}.tar.gz -> neomutt-test-files-${TEST_FILES_COMMIT}.tar.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="autocrypt berkdb doc gdbm gnutls gpgme idn kerberos kyotocabinet lmdb lz4
+ nls notmuch pgp-classic qdbm sasl selinux smime-classic ssl tokyocabinet
+ test zlib zstd"
+REQUIRED_USE="
+ autocrypt? ( gpgme )"
+
+CDEPEND="
+ app-misc/mime-types
+ berkdb? (
+ || (
+ sys-libs/db:6.0
+ sys-libs/db:5.3
+ sys-libs/db:4.8
+ )
+ <sys-libs/db-6.3:=
+ )
+ gdbm? ( sys-libs/gdbm:= )
+ kyotocabinet? ( dev-db/kyotocabinet )
+ lmdb? ( dev-db/lmdb:= )
+ nls? ( virtual/libintl )
+ qdbm? ( dev-db/qdbm )
+ tokyocabinet? ( dev-db/tokyocabinet )
+ gnutls? ( >=net-libs/gnutls-1.0.17:= )
+ gpgme? ( >=app-crypt/gpgme-1.13.1:= )
+ autocrypt? ( >=dev-db/sqlite-3 )
+ idn? ( net-dns/libidn2:= )
+ kerberos? ( virtual/krb5 )
+ notmuch? ( net-mail/notmuch:= )
+ sasl? ( >=dev-libs/cyrus-sasl-2 )
+ ssl? ( >=dev-libs/openssl-1.0.2u:0= )
+ lz4? ( app-arch/lz4 )
+ zlib? ( virtual/zlib:= )
+ zstd? ( app-arch/zstd )
+"
+DEPEND="${CDEPEND}
+ dev-lang/tcl:=
+ net-mail/mailbase
+ doc? (
+ dev-libs/libxml2
+ dev-libs/libxslt
+ app-text/docbook-xsl-stylesheets
+ || (
+ www-client/lynx
+ www-client/w3m
+ www-client/elinks
+ )
+ )
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-mutt )
+"
+
+RESTRICT="!test? ( test )"
+
+src_unpack() {
+ if [[ -n ${A} ]]; then
+ unpack ${A}
+ fi
+ if [[ ${PV} =~ 99999999$ ]]; then
+ git-r3_src_unpack
+ fi
+}
+
+src_configure() {
+ local myconf=(
+ "$(usex doc --full-doc --disable-doc)"
+ "$(use_enable nls)"
+ "$(use_enable notmuch)"
+
+ "$(use_enable autocrypt)"
+ "$(use_enable gpgme)"
+ "$(use_enable pgp-classic pgp)"
+ "$(use_enable smime-classic smime)"
+
+ # Database backends.
+ "$(use_enable berkdb bdb)"
+ "$(use_enable gdbm)"
+ "$(use_enable kyotocabinet)"
+ "$(use_enable qdbm)"
+ "$(use_enable tokyocabinet)"
+
+ # Header compression.
+ "$(use_enable lz4)"
+ "$(use_enable zlib)"
+ "$(use_enable zstd)"
+
+ --disable-idn
+ "$(use_enable idn idn2)"
+ "$(use_enable kerberos gss)"
+ "$(use_enable lmdb)"
+ "$(use_enable sasl)"
+ "--sysconfdir=${EPREFIX}/etc/${PN}"
+ "$(use_enable ssl)"
+ "$(use_enable gnutls)"
+
+ "$(usex test --testing --disable-testing)"
+ )
+
+ if is-flagq -fsanitize=address; then
+ myconf+=( --asan )
+ fi
+ if is-flagq -fsanitize=undefined; then
+ myconf+=( --ubsan )
+ fi
+
+ econf CCACHE=none CC_FOR_BUILD="$(tc-getCC)" "${myconf[@]}"
+}
+
+src_test() {
+ local test_dir="$(readlink --canonicalize "${S}"/../neomutt-test-files-${TEST_FILES_COMMIT})"
+ pushd ${test_dir} || die "Could not cd into test_dir"
+ NEOMUTT_TEST_DIR="${test_dir}" ./setup.sh \
+ || die "Failed to run the setup.sh script"
+ popd || die "Could not cd back"
+ NEOMUTT_TEST_DIR="${test_dir}" emake test
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # A man-page is always handy, so fake one - here neomuttrc.5 (neomutt.1
+ # already exists)
+ if use !doc; then
+ sed -n \
+ -e '/^\(CC_FOR_BUILD\|CFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXTRA_CFLAGS_FOR_BUILD\|LDFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXEEXT\|SRCDIR\)\s*=/p' \
+ Makefile > docs/Makefile.fakedoc || die
+ sed -n \
+ -e '/^MAKEDOC_CPP\s*=/,/^\s*$/p' \
+ -e '/^docs\/\(makedoc$(EXEEXT)\|neomutt\.1\|neomuttrc\.5\)\s*:/,/^\s*$/p' \
+ docs/Makefile.autosetup >> docs/Makefile.fakedoc || die
+ emake -f docs/Makefile.fakedoc docs/neomutt.1
+ emake -f docs/Makefile.fakedoc docs/neomuttrc.5
+ doman docs/neomutt.1 docs/neomuttrc.5
+ fi
+
+ dodoc LICENSE* ChangeLog* README*
+}
+
+pkg_postinst() {
+ if use gpgme && ( use pgp-classic || use smime-classic ); then
+ ewarn " Note that gpgme (old gpg) includes both pgp and smime"
+ ewarn " support. You can probably remove pgp-classic (old crypt)"
+ ewarn " and smime-classic (old smime) from your USE-flags and"
+ ewarn " only enable gpgme."
+ fi
+
+ if use autocrypt && ! use idn; then
+ ewarn " It is highly recommended that NeoMutt be also configured"
+ ewarn " with idn when autocrypt is enabled."
+ fi
+}
diff --git a/mail-client/neomutt/neomutt-20250510.ebuild b/mail-client/neomutt/neomutt-20250510.ebuild
new file mode 100644
index 000000000000..8c96331f8e53
--- /dev/null
+++ b/mail-client/neomutt/neomutt-20250510.ebuild
@@ -0,0 +1,176 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="A small but very powerful text-based mail client"
+HOMEPAGE="https://neomutt.org/"
+
+if [[ ${PV} =~ 99999999$ ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/neomutt/neomutt.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="amd64 arm arm64 ~ppc64 ~riscv x86"
+fi
+
+TEST_FILES_COMMIT=8629adab700a75c54e8e28bf05ad092503a98f75
+SRC_URI+=" test? ( https://github.com/${PN}/neomutt-test-files/archive/${TEST_FILES_COMMIT}.tar.gz -> neomutt-test-files-${TEST_FILES_COMMIT}.tar.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="autocrypt berkdb doc gdbm gnutls gpgme idn kerberos kyotocabinet lmdb lz4
+ nls notmuch pgp-classic qdbm sasl selinux smime-classic ssl tokyocabinet
+ test zlib zstd"
+REQUIRED_USE="
+ autocrypt? ( gpgme )"
+
+CDEPEND="
+ app-misc/mime-types
+ berkdb? (
+ || (
+ sys-libs/db:6.0
+ sys-libs/db:5.3
+ sys-libs/db:4.8
+ )
+ <sys-libs/db-6.3:=
+ )
+ gdbm? ( sys-libs/gdbm:= )
+ kyotocabinet? ( dev-db/kyotocabinet )
+ lmdb? ( dev-db/lmdb:= )
+ nls? ( virtual/libintl )
+ qdbm? ( dev-db/qdbm )
+ tokyocabinet? ( dev-db/tokyocabinet )
+ gnutls? ( >=net-libs/gnutls-1.0.17:= )
+ gpgme? ( >=app-crypt/gpgme-1.13.1:= )
+ autocrypt? ( >=dev-db/sqlite-3 )
+ idn? ( net-dns/libidn2:= )
+ kerberos? ( virtual/krb5 )
+ notmuch? ( net-mail/notmuch:= )
+ sasl? ( >=dev-libs/cyrus-sasl-2 )
+ ssl? ( >=dev-libs/openssl-1.0.2u:0= )
+ lz4? ( app-arch/lz4 )
+ zlib? ( virtual/zlib:= )
+ zstd? ( app-arch/zstd )
+"
+DEPEND="${CDEPEND}
+ dev-lang/tcl:=
+ net-mail/mailbase
+ doc? (
+ dev-libs/libxml2
+ dev-libs/libxslt
+ app-text/docbook-xsl-stylesheets
+ || (
+ www-client/lynx
+ www-client/w3m
+ www-client/elinks
+ )
+ )
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-mutt )
+"
+
+RESTRICT="!test? ( test )"
+
+src_unpack() {
+ if [[ -n ${A} ]]; then
+ unpack ${A}
+ fi
+ if [[ ${PV} =~ 99999999$ ]]; then
+ git-r3_src_unpack
+ fi
+}
+
+src_configure() {
+ local myconf=(
+ "$(usex doc --full-doc --disable-doc)"
+ "$(use_enable nls)"
+ "$(use_enable notmuch)"
+
+ "$(use_enable autocrypt)"
+ "$(use_enable gpgme)"
+ "$(use_enable pgp-classic pgp)"
+ "$(use_enable smime-classic smime)"
+
+ # Database backends.
+ "$(use_enable berkdb bdb)"
+ "$(use_enable gdbm)"
+ "$(use_enable kyotocabinet)"
+ "$(use_enable qdbm)"
+ "$(use_enable tokyocabinet)"
+
+ # Header compression.
+ "$(use_enable lz4)"
+ "$(use_enable zlib)"
+ "$(use_enable zstd)"
+
+ --disable-idn
+ "$(use_enable idn idn2)"
+ "$(use_enable kerberos gss)"
+ "$(use_enable lmdb)"
+ "$(use_enable sasl)"
+ "--sysconfdir=${EPREFIX}/etc/${PN}"
+ "$(use_enable ssl)"
+ "$(use_enable gnutls)"
+
+ "$(usex test --testing --disable-testing)"
+ )
+
+ if is-flagq -fsanitize=address; then
+ myconf+=( --asan )
+ fi
+ if is-flagq -fsanitize=undefined; then
+ myconf+=( --ubsan )
+ fi
+
+ econf CCACHE=none CC_FOR_BUILD="$(tc-getCC)" "${myconf[@]}"
+}
+
+src_test() {
+ local test_dir="$(readlink --canonicalize "${S}"/../neomutt-test-files-${TEST_FILES_COMMIT})"
+ pushd ${test_dir} || die "Could not cd into test_dir"
+ NEOMUTT_TEST_DIR="${test_dir}" ./setup.sh \
+ || die "Failed to run the setup.sh script"
+ popd || die "Could not cd back"
+ NEOMUTT_TEST_DIR="${test_dir}" emake test
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # A man-page is always handy, so fake one - here neomuttrc.5 (neomutt.1
+ # already exists)
+ if use !doc; then
+ sed -n \
+ -e '/^\(CC_FOR_BUILD\|CFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXTRA_CFLAGS_FOR_BUILD\|LDFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXEEXT\|SRCDIR\)\s*=/p' \
+ Makefile > docs/Makefile.fakedoc || die
+ sed -n \
+ -e '/^MAKEDOC_CPP\s*=/,/^\s*$/p' \
+ -e '/^docs\/\(makedoc$(EXEEXT)\|neomutt\.1\|neomuttrc\.5\)\s*:/,/^\s*$/p' \
+ docs/Makefile.autosetup >> docs/Makefile.fakedoc || die
+ emake -f docs/Makefile.fakedoc docs/neomutt.1
+ emake -f docs/Makefile.fakedoc docs/neomuttrc.5
+ doman docs/neomutt.1 docs/neomuttrc.5
+ fi
+
+ dodoc LICENSE* ChangeLog* README*
+}
+
+pkg_postinst() {
+ if use gpgme && ( use pgp-classic || use smime-classic ); then
+ ewarn " Note that gpgme (old gpg) includes both pgp and smime"
+ ewarn " support. You can probably remove pgp-classic (old crypt)"
+ ewarn " and smime-classic (old smime) from your USE-flags and"
+ ewarn " only enable gpgme."
+ fi
+
+ if use autocrypt && ! use idn; then
+ ewarn " It is highly recommended that NeoMutt be also configured"
+ ewarn " with idn when autocrypt is enabled."
+ fi
+}
diff --git a/mail-client/neomutt/neomutt-20251211-r1.ebuild b/mail-client/neomutt/neomutt-20251211-r1.ebuild
new file mode 100644
index 000000000000..814d9acf1047
--- /dev/null
+++ b/mail-client/neomutt/neomutt-20251211-r1.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="A small but very powerful text-based mail client"
+HOMEPAGE="https://neomutt.org/"
+
+if [[ ${PV} =~ 99999999$ ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/neomutt/neomutt.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+fi
+
+TEST_FILES_COMMIT=8629adab700a75c54e8e28bf05ad092503a98f75
+SRC_URI+=" test? ( https://github.com/${PN}/neomutt-test-files/archive/${TEST_FILES_COMMIT}.tar.gz -> neomutt-test-files-${TEST_FILES_COMMIT}.tar.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="autocrypt berkdb doc gdbm gnutls gpgme idn kerberos kyotocabinet lmdb lz4
+ nls notmuch pgp-classic qdbm sasl selinux smime-classic ssl tokyocabinet
+ test zlib zstd"
+REQUIRED_USE="
+ autocrypt? ( gpgme )
+ gnutls? ( !ssl )
+ ssl? ( !gnutls )
+"
+CDEPEND="
+ app-misc/mime-types
+ berkdb? (
+ || (
+ sys-libs/db:6.0
+ sys-libs/db:5.3
+ sys-libs/db:4.8
+ )
+ <sys-libs/db-6.3:=
+ )
+ gdbm? ( sys-libs/gdbm:= )
+ kyotocabinet? ( dev-db/kyotocabinet )
+ lmdb? ( dev-db/lmdb:= )
+ nls? ( virtual/libintl )
+ qdbm? ( dev-db/qdbm )
+ tokyocabinet? ( dev-db/tokyocabinet )
+ gnutls? ( >=net-libs/gnutls-1.0.17:= )
+ gpgme? ( >=app-crypt/gpgme-1.13.1:= )
+ autocrypt? ( >=dev-db/sqlite-3 )
+ idn? ( net-dns/libidn2:= )
+ kerberos? ( virtual/krb5 )
+ notmuch? ( net-mail/notmuch:= )
+ sasl? ( >=dev-libs/cyrus-sasl-2 )
+ ssl? ( >=dev-libs/openssl-1.0.2u:0= )
+ lz4? ( app-arch/lz4 )
+ zlib? ( virtual/zlib:= )
+ zstd? ( app-arch/zstd )
+"
+DEPEND="${CDEPEND}
+ dev-lang/tcl:=
+ net-mail/mailbase
+ doc? (
+ dev-libs/libxml2
+ dev-libs/libxslt
+ app-text/docbook-xsl-stylesheets
+ || (
+ www-client/lynx
+ www-client/w3m
+ www-client/elinks
+ )
+ )
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-mutt )
+"
+
+RESTRICT="!test? ( test )"
+
+src_unpack() {
+ if [[ -n ${A} ]]; then
+ unpack ${A}
+ fi
+ if [[ ${PV} =~ 99999999$ ]]; then
+ git-r3_src_unpack
+ fi
+}
+
+src_configure() {
+ # fix typo found right after release:
+ # https://github.com/neomutt/neomutt/commit/cddbd189aab68f1978ef0e361217514ec94321b3
+ sed -i 's/-smine/-smime/' "${S}"/smime/Makefile.autosetup
+
+ local myconf=(
+ "$(usex doc --full-doc --disable-doc)"
+ "$(use_enable nls)"
+ "$(use_enable notmuch)"
+
+ "$(use_enable autocrypt)"
+ "$(use_enable gpgme)"
+ "$(use_enable pgp-classic pgp)"
+ "$(use_enable smime-classic smime)"
+
+ # Database backends.
+ "$(use_enable berkdb bdb)"
+ "$(use_enable gdbm)"
+ "$(use_enable kyotocabinet)"
+ "$(use_enable qdbm)"
+ "$(use_enable tokyocabinet)"
+
+ # Header compression.
+ "$(use_enable lz4)"
+ "$(use_enable zlib)"
+ "$(use_enable zstd)"
+
+ --disable-idn
+ "$(use_enable idn idn2)"
+ "$(use_enable kerberos gss)"
+ "$(use_enable lmdb)"
+ "$(use_enable sasl)"
+ "--sysconfdir=${EPREFIX}/etc/${PN}"
+ "$(use_enable ssl)"
+ "$(use_enable gnutls)"
+
+ "$(usex test --testing --disable-testing)"
+ )
+
+ if is-flagq -fsanitize=address; then
+ myconf+=( --asan )
+ fi
+ if is-flagq -fsanitize=undefined; then
+ myconf+=( --ubsan )
+ fi
+
+ econf CCACHE=none CC_FOR_BUILD="$(tc-getCC)" "${myconf[@]}"
+}
+
+src_test() {
+ local test_dir="$(readlink --canonicalize "${S}"/../neomutt-test-files-${TEST_FILES_COMMIT})"
+ pushd ${test_dir} || die "Could not cd into test_dir"
+ NEOMUTT_TEST_DIR="${test_dir}" ./setup.sh \
+ || die "Failed to run the setup.sh script"
+ popd || die "Could not cd back"
+ NEOMUTT_TEST_DIR="${test_dir}" emake test
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # A man-page is always handy, so fake one - here neomuttrc.5 (neomutt.1
+ # already exists)
+ if use !doc; then
+ sed -n \
+ -e '/^\(CC_FOR_BUILD\|CFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXTRA_CFLAGS_FOR_BUILD\|LDFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXEEXT\|SRCDIR\)\s*=/p' \
+ Makefile > docs/Makefile.fakedoc || die
+ sed -n \
+ -e '/^MAKEDOC_CPP\s*=/,/^\s*$/p' \
+ -e '/^docs\/\(makedoc$(EXEEXT)\|neomutt\.1\|neomuttrc\.5\)\s*:/,/^\s*$/p' \
+ docs/Makefile.autosetup >> docs/Makefile.fakedoc || die
+ emake -f docs/Makefile.fakedoc docs/neomutt.1
+ emake -f docs/Makefile.fakedoc docs/neomuttrc.5
+ doman docs/neomutt.1 docs/neomuttrc.5
+ fi
+
+ dodoc LICENSE* ChangeLog* README*
+}
+
+pkg_postinst() {
+ if use gpgme && ( use pgp-classic || use smime-classic ); then
+ ewarn " Note that gpgme (old gpg) includes both pgp and smime"
+ ewarn " support. You can probably remove pgp-classic (old crypt)"
+ ewarn " and smime-classic (old smime) from your USE-flags and"
+ ewarn " only enable gpgme."
+ fi
+
+ if use autocrypt && ! use idn; then
+ ewarn " It is highly recommended that NeoMutt be also configured"
+ ewarn " with idn when autocrypt is enabled."
+ fi
+}
diff --git a/mail-client/neomutt/neomutt-20260105.ebuild b/mail-client/neomutt/neomutt-20260105.ebuild
new file mode 100644
index 000000000000..bac6fca51025
--- /dev/null
+++ b/mail-client/neomutt/neomutt-20260105.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="A small but very powerful text-based mail client"
+HOMEPAGE="https://neomutt.org/"
+
+if [[ ${PV} =~ 99999999$ ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/neomutt/neomutt.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+fi
+
+TEST_FILES_COMMIT=8629adab700a75c54e8e28bf05ad092503a98f75
+SRC_URI+=" test? ( https://github.com/${PN}/neomutt-test-files/archive/${TEST_FILES_COMMIT}.tar.gz -> neomutt-test-files-${TEST_FILES_COMMIT}.tar.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="autocrypt berkdb doc gdbm gnutls gpgme idn kerberos kyotocabinet lmdb lz4
+ nls notmuch pgp-classic qdbm sasl selinux smime-classic ssl tokyocabinet
+ test zlib zstd"
+REQUIRED_USE="
+ autocrypt? ( gpgme )
+ gnutls? ( !ssl )
+ ssl? ( !gnutls )
+"
+CDEPEND="
+ app-misc/mime-types
+ berkdb? (
+ || (
+ sys-libs/db:6.0
+ sys-libs/db:5.3
+ sys-libs/db:4.8
+ )
+ <sys-libs/db-6.3:=
+ )
+ gdbm? ( sys-libs/gdbm:= )
+ kyotocabinet? ( dev-db/kyotocabinet )
+ lmdb? ( dev-db/lmdb:= )
+ nls? ( virtual/libintl )
+ qdbm? ( dev-db/qdbm )
+ tokyocabinet? ( dev-db/tokyocabinet )
+ gnutls? ( >=net-libs/gnutls-1.0.17:= )
+ gpgme? ( >=app-crypt/gpgme-1.13.1:= )
+ autocrypt? ( >=dev-db/sqlite-3 )
+ idn? ( net-dns/libidn2:= )
+ kerberos? ( virtual/krb5 )
+ notmuch? ( net-mail/notmuch:= )
+ sasl? ( >=dev-libs/cyrus-sasl-2 )
+ ssl? ( >=dev-libs/openssl-1.0.2u:0= )
+ lz4? ( app-arch/lz4 )
+ zlib? ( virtual/zlib:= )
+ zstd? ( app-arch/zstd )
+"
+DEPEND="${CDEPEND}
+ dev-lang/tcl:=
+ net-mail/mailbase
+ doc? (
+ dev-libs/libxml2
+ dev-libs/libxslt
+ app-text/docbook-xsl-stylesheets
+ || (
+ www-client/lynx
+ www-client/w3m
+ www-client/elinks
+ )
+ )
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-mutt )
+"
+
+RESTRICT="!test? ( test )"
+
+src_unpack() {
+ if [[ -n ${A} ]]; then
+ unpack ${A}
+ fi
+ if [[ ${PV} =~ 99999999$ ]]; then
+ git-r3_src_unpack
+ fi
+}
+
+src_configure() {
+ local myconf=(
+ "$(usex doc --full-doc --disable-doc)"
+ "$(use_enable nls)"
+ "$(use_enable notmuch)"
+
+ "$(use_enable autocrypt)"
+ "$(use_enable gpgme)"
+ "$(use_enable pgp-classic pgp)"
+ "$(use_enable smime-classic smime)"
+
+ # Database backends.
+ "$(use_enable berkdb bdb)"
+ "$(use_enable gdbm)"
+ "$(use_enable kyotocabinet)"
+ "$(use_enable qdbm)"
+ "$(use_enable tokyocabinet)"
+
+ # Header compression.
+ "$(use_enable lz4)"
+ "$(use_enable zlib)"
+ "$(use_enable zstd)"
+
+ --disable-idn
+ "$(use_enable idn idn2)"
+ "$(use_enable kerberos gss)"
+ "$(use_enable lmdb)"
+ "$(use_enable sasl)"
+ "--sysconfdir=${EPREFIX}/etc/${PN}"
+ "$(use_enable ssl)"
+ "$(use_enable gnutls)"
+
+ "$(usex test --testing --disable-testing)"
+ )
+
+ if is-flagq -fsanitize=address; then
+ myconf+=( --asan )
+ fi
+ if is-flagq -fsanitize=undefined; then
+ myconf+=( --ubsan )
+ fi
+
+ econf CCACHE=none CC_FOR_BUILD="$(tc-getCC)" "${myconf[@]}"
+}
+
+src_test() {
+ local test_dir="$(readlink --canonicalize "${S}"/../neomutt-test-files-${TEST_FILES_COMMIT})"
+ pushd ${test_dir} || die "Could not cd into test_dir"
+ NEOMUTT_TEST_DIR="${test_dir}" ./setup.sh \
+ || die "Failed to run the setup.sh script"
+ popd || die "Could not cd back"
+ NEOMUTT_TEST_DIR="${test_dir}" emake test
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # A man-page is always handy, so fake one - here neomuttrc.5 (neomutt.1
+ # already exists)
+ if use !doc; then
+ sed -n \
+ -e '/^\(CC_FOR_BUILD\|CFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXTRA_CFLAGS_FOR_BUILD\|LDFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXEEXT\|SRCDIR\)\s*=/p' \
+ Makefile > docs/Makefile.fakedoc || die
+ sed -n \
+ -e '/^MAKEDOC_CPP\s*=/,/^\s*$/p' \
+ -e '/^docs\/\(makedoc$(EXEEXT)\|neomutt\.1\|neomuttrc\.5\)\s*:/,/^\s*$/p' \
+ docs/Makefile.autosetup >> docs/Makefile.fakedoc || die
+ emake -f docs/Makefile.fakedoc docs/neomutt.1
+ emake -f docs/Makefile.fakedoc docs/neomuttrc.5
+ doman docs/neomutt.1 docs/neomuttrc.5
+ fi
+
+ dodoc LICENSE* ChangeLog* README*
+}
+
+pkg_postinst() {
+ if use gpgme && ( use pgp-classic || use smime-classic ); then
+ ewarn " Note that gpgme (old gpg) includes both pgp and smime"
+ ewarn " support. You can probably remove pgp-classic (old crypt)"
+ ewarn " and smime-classic (old smime) from your USE-flags and"
+ ewarn " only enable gpgme."
+ fi
+
+ if use autocrypt && ! use idn; then
+ ewarn " It is highly recommended that NeoMutt be also configured"
+ ewarn " with idn when autocrypt is enabled."
+ fi
+}
diff --git a/mail-client/neomutt/neomutt-20260406.ebuild b/mail-client/neomutt/neomutt-20260406.ebuild
new file mode 100644
index 000000000000..bac6fca51025
--- /dev/null
+++ b/mail-client/neomutt/neomutt-20260406.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="A small but very powerful text-based mail client"
+HOMEPAGE="https://neomutt.org/"
+
+if [[ ${PV} =~ 99999999$ ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/neomutt/neomutt.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+fi
+
+TEST_FILES_COMMIT=8629adab700a75c54e8e28bf05ad092503a98f75
+SRC_URI+=" test? ( https://github.com/${PN}/neomutt-test-files/archive/${TEST_FILES_COMMIT}.tar.gz -> neomutt-test-files-${TEST_FILES_COMMIT}.tar.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="autocrypt berkdb doc gdbm gnutls gpgme idn kerberos kyotocabinet lmdb lz4
+ nls notmuch pgp-classic qdbm sasl selinux smime-classic ssl tokyocabinet
+ test zlib zstd"
+REQUIRED_USE="
+ autocrypt? ( gpgme )
+ gnutls? ( !ssl )
+ ssl? ( !gnutls )
+"
+CDEPEND="
+ app-misc/mime-types
+ berkdb? (
+ || (
+ sys-libs/db:6.0
+ sys-libs/db:5.3
+ sys-libs/db:4.8
+ )
+ <sys-libs/db-6.3:=
+ )
+ gdbm? ( sys-libs/gdbm:= )
+ kyotocabinet? ( dev-db/kyotocabinet )
+ lmdb? ( dev-db/lmdb:= )
+ nls? ( virtual/libintl )
+ qdbm? ( dev-db/qdbm )
+ tokyocabinet? ( dev-db/tokyocabinet )
+ gnutls? ( >=net-libs/gnutls-1.0.17:= )
+ gpgme? ( >=app-crypt/gpgme-1.13.1:= )
+ autocrypt? ( >=dev-db/sqlite-3 )
+ idn? ( net-dns/libidn2:= )
+ kerberos? ( virtual/krb5 )
+ notmuch? ( net-mail/notmuch:= )
+ sasl? ( >=dev-libs/cyrus-sasl-2 )
+ ssl? ( >=dev-libs/openssl-1.0.2u:0= )
+ lz4? ( app-arch/lz4 )
+ zlib? ( virtual/zlib:= )
+ zstd? ( app-arch/zstd )
+"
+DEPEND="${CDEPEND}
+ dev-lang/tcl:=
+ net-mail/mailbase
+ doc? (
+ dev-libs/libxml2
+ dev-libs/libxslt
+ app-text/docbook-xsl-stylesheets
+ || (
+ www-client/lynx
+ www-client/w3m
+ www-client/elinks
+ )
+ )
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-mutt )
+"
+
+RESTRICT="!test? ( test )"
+
+src_unpack() {
+ if [[ -n ${A} ]]; then
+ unpack ${A}
+ fi
+ if [[ ${PV} =~ 99999999$ ]]; then
+ git-r3_src_unpack
+ fi
+}
+
+src_configure() {
+ local myconf=(
+ "$(usex doc --full-doc --disable-doc)"
+ "$(use_enable nls)"
+ "$(use_enable notmuch)"
+
+ "$(use_enable autocrypt)"
+ "$(use_enable gpgme)"
+ "$(use_enable pgp-classic pgp)"
+ "$(use_enable smime-classic smime)"
+
+ # Database backends.
+ "$(use_enable berkdb bdb)"
+ "$(use_enable gdbm)"
+ "$(use_enable kyotocabinet)"
+ "$(use_enable qdbm)"
+ "$(use_enable tokyocabinet)"
+
+ # Header compression.
+ "$(use_enable lz4)"
+ "$(use_enable zlib)"
+ "$(use_enable zstd)"
+
+ --disable-idn
+ "$(use_enable idn idn2)"
+ "$(use_enable kerberos gss)"
+ "$(use_enable lmdb)"
+ "$(use_enable sasl)"
+ "--sysconfdir=${EPREFIX}/etc/${PN}"
+ "$(use_enable ssl)"
+ "$(use_enable gnutls)"
+
+ "$(usex test --testing --disable-testing)"
+ )
+
+ if is-flagq -fsanitize=address; then
+ myconf+=( --asan )
+ fi
+ if is-flagq -fsanitize=undefined; then
+ myconf+=( --ubsan )
+ fi
+
+ econf CCACHE=none CC_FOR_BUILD="$(tc-getCC)" "${myconf[@]}"
+}
+
+src_test() {
+ local test_dir="$(readlink --canonicalize "${S}"/../neomutt-test-files-${TEST_FILES_COMMIT})"
+ pushd ${test_dir} || die "Could not cd into test_dir"
+ NEOMUTT_TEST_DIR="${test_dir}" ./setup.sh \
+ || die "Failed to run the setup.sh script"
+ popd || die "Could not cd back"
+ NEOMUTT_TEST_DIR="${test_dir}" emake test
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # A man-page is always handy, so fake one - here neomuttrc.5 (neomutt.1
+ # already exists)
+ if use !doc; then
+ sed -n \
+ -e '/^\(CC_FOR_BUILD\|CFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXTRA_CFLAGS_FOR_BUILD\|LDFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXEEXT\|SRCDIR\)\s*=/p' \
+ Makefile > docs/Makefile.fakedoc || die
+ sed -n \
+ -e '/^MAKEDOC_CPP\s*=/,/^\s*$/p' \
+ -e '/^docs\/\(makedoc$(EXEEXT)\|neomutt\.1\|neomuttrc\.5\)\s*:/,/^\s*$/p' \
+ docs/Makefile.autosetup >> docs/Makefile.fakedoc || die
+ emake -f docs/Makefile.fakedoc docs/neomutt.1
+ emake -f docs/Makefile.fakedoc docs/neomuttrc.5
+ doman docs/neomutt.1 docs/neomuttrc.5
+ fi
+
+ dodoc LICENSE* ChangeLog* README*
+}
+
+pkg_postinst() {
+ if use gpgme && ( use pgp-classic || use smime-classic ); then
+ ewarn " Note that gpgme (old gpg) includes both pgp and smime"
+ ewarn " support. You can probably remove pgp-classic (old crypt)"
+ ewarn " and smime-classic (old smime) from your USE-flags and"
+ ewarn " only enable gpgme."
+ fi
+
+ if use autocrypt && ! use idn; then
+ ewarn " It is highly recommended that NeoMutt be also configured"
+ ewarn " with idn when autocrypt is enabled."
+ fi
+}
diff --git a/mail-client/neomutt/neomutt-20260504.ebuild b/mail-client/neomutt/neomutt-20260504.ebuild
new file mode 100644
index 000000000000..bac6fca51025
--- /dev/null
+++ b/mail-client/neomutt/neomutt-20260504.ebuild
@@ -0,0 +1,178 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="A small but very powerful text-based mail client"
+HOMEPAGE="https://neomutt.org/"
+
+if [[ ${PV} =~ 99999999$ ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/neomutt/neomutt.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+fi
+
+TEST_FILES_COMMIT=8629adab700a75c54e8e28bf05ad092503a98f75
+SRC_URI+=" test? ( https://github.com/${PN}/neomutt-test-files/archive/${TEST_FILES_COMMIT}.tar.gz -> neomutt-test-files-${TEST_FILES_COMMIT}.tar.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="autocrypt berkdb doc gdbm gnutls gpgme idn kerberos kyotocabinet lmdb lz4
+ nls notmuch pgp-classic qdbm sasl selinux smime-classic ssl tokyocabinet
+ test zlib zstd"
+REQUIRED_USE="
+ autocrypt? ( gpgme )
+ gnutls? ( !ssl )
+ ssl? ( !gnutls )
+"
+CDEPEND="
+ app-misc/mime-types
+ berkdb? (
+ || (
+ sys-libs/db:6.0
+ sys-libs/db:5.3
+ sys-libs/db:4.8
+ )
+ <sys-libs/db-6.3:=
+ )
+ gdbm? ( sys-libs/gdbm:= )
+ kyotocabinet? ( dev-db/kyotocabinet )
+ lmdb? ( dev-db/lmdb:= )
+ nls? ( virtual/libintl )
+ qdbm? ( dev-db/qdbm )
+ tokyocabinet? ( dev-db/tokyocabinet )
+ gnutls? ( >=net-libs/gnutls-1.0.17:= )
+ gpgme? ( >=app-crypt/gpgme-1.13.1:= )
+ autocrypt? ( >=dev-db/sqlite-3 )
+ idn? ( net-dns/libidn2:= )
+ kerberos? ( virtual/krb5 )
+ notmuch? ( net-mail/notmuch:= )
+ sasl? ( >=dev-libs/cyrus-sasl-2 )
+ ssl? ( >=dev-libs/openssl-1.0.2u:0= )
+ lz4? ( app-arch/lz4 )
+ zlib? ( virtual/zlib:= )
+ zstd? ( app-arch/zstd )
+"
+DEPEND="${CDEPEND}
+ dev-lang/tcl:=
+ net-mail/mailbase
+ doc? (
+ dev-libs/libxml2
+ dev-libs/libxslt
+ app-text/docbook-xsl-stylesheets
+ || (
+ www-client/lynx
+ www-client/w3m
+ www-client/elinks
+ )
+ )
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-mutt )
+"
+
+RESTRICT="!test? ( test )"
+
+src_unpack() {
+ if [[ -n ${A} ]]; then
+ unpack ${A}
+ fi
+ if [[ ${PV} =~ 99999999$ ]]; then
+ git-r3_src_unpack
+ fi
+}
+
+src_configure() {
+ local myconf=(
+ "$(usex doc --full-doc --disable-doc)"
+ "$(use_enable nls)"
+ "$(use_enable notmuch)"
+
+ "$(use_enable autocrypt)"
+ "$(use_enable gpgme)"
+ "$(use_enable pgp-classic pgp)"
+ "$(use_enable smime-classic smime)"
+
+ # Database backends.
+ "$(use_enable berkdb bdb)"
+ "$(use_enable gdbm)"
+ "$(use_enable kyotocabinet)"
+ "$(use_enable qdbm)"
+ "$(use_enable tokyocabinet)"
+
+ # Header compression.
+ "$(use_enable lz4)"
+ "$(use_enable zlib)"
+ "$(use_enable zstd)"
+
+ --disable-idn
+ "$(use_enable idn idn2)"
+ "$(use_enable kerberos gss)"
+ "$(use_enable lmdb)"
+ "$(use_enable sasl)"
+ "--sysconfdir=${EPREFIX}/etc/${PN}"
+ "$(use_enable ssl)"
+ "$(use_enable gnutls)"
+
+ "$(usex test --testing --disable-testing)"
+ )
+
+ if is-flagq -fsanitize=address; then
+ myconf+=( --asan )
+ fi
+ if is-flagq -fsanitize=undefined; then
+ myconf+=( --ubsan )
+ fi
+
+ econf CCACHE=none CC_FOR_BUILD="$(tc-getCC)" "${myconf[@]}"
+}
+
+src_test() {
+ local test_dir="$(readlink --canonicalize "${S}"/../neomutt-test-files-${TEST_FILES_COMMIT})"
+ pushd ${test_dir} || die "Could not cd into test_dir"
+ NEOMUTT_TEST_DIR="${test_dir}" ./setup.sh \
+ || die "Failed to run the setup.sh script"
+ popd || die "Could not cd back"
+ NEOMUTT_TEST_DIR="${test_dir}" emake test
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # A man-page is always handy, so fake one - here neomuttrc.5 (neomutt.1
+ # already exists)
+ if use !doc; then
+ sed -n \
+ -e '/^\(CC_FOR_BUILD\|CFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXTRA_CFLAGS_FOR_BUILD\|LDFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXEEXT\|SRCDIR\)\s*=/p' \
+ Makefile > docs/Makefile.fakedoc || die
+ sed -n \
+ -e '/^MAKEDOC_CPP\s*=/,/^\s*$/p' \
+ -e '/^docs\/\(makedoc$(EXEEXT)\|neomutt\.1\|neomuttrc\.5\)\s*:/,/^\s*$/p' \
+ docs/Makefile.autosetup >> docs/Makefile.fakedoc || die
+ emake -f docs/Makefile.fakedoc docs/neomutt.1
+ emake -f docs/Makefile.fakedoc docs/neomuttrc.5
+ doman docs/neomutt.1 docs/neomuttrc.5
+ fi
+
+ dodoc LICENSE* ChangeLog* README*
+}
+
+pkg_postinst() {
+ if use gpgme && ( use pgp-classic || use smime-classic ); then
+ ewarn " Note that gpgme (old gpg) includes both pgp and smime"
+ ewarn " support. You can probably remove pgp-classic (old crypt)"
+ ewarn " and smime-classic (old smime) from your USE-flags and"
+ ewarn " only enable gpgme."
+ fi
+
+ if use autocrypt && ! use idn; then
+ ewarn " It is highly recommended that NeoMutt be also configured"
+ ewarn " with idn when autocrypt is enabled."
+ fi
+}
diff --git a/mail-client/neomutt/neomutt-99999999.ebuild b/mail-client/neomutt/neomutt-99999999.ebuild
new file mode 100644
index 000000000000..f55c71781bf5
--- /dev/null
+++ b/mail-client/neomutt/neomutt-99999999.ebuild
@@ -0,0 +1,179 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="A small but very powerful text-based mail client"
+HOMEPAGE="https://neomutt.org/"
+
+if [[ ${PV} =~ 99999999$ ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/neomutt/neomutt.git"
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~ppc64 ~riscv ~x86"
+fi
+
+TEST_FILES_COMMIT=8629adab700a75c54e8e28bf05ad092503a98f75
+SRC_URI+=" test? ( https://github.com/${PN}/neomutt-test-files/archive/${TEST_FILES_COMMIT}.tar.gz -> neomutt-test-files-${TEST_FILES_COMMIT}.tar.gz )"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="autocrypt berkdb doc gdbm gnutls gpgme idn kerberos kyotocabinet lmdb lz4
+ nls notmuch pgp-classic qdbm sasl selinux smime-classic ssl tokyocabinet
+ test zlib zstd"
+REQUIRED_USE="
+ autocrypt? ( gpgme )
+ gnutls? ( !ssl )
+ ssl? ( !gnutls )
+"
+
+CDEPEND="
+ app-misc/mime-types
+ berkdb? (
+ || (
+ sys-libs/db:6.0
+ sys-libs/db:5.3
+ sys-libs/db:4.8
+ )
+ <sys-libs/db-6.3:=
+ )
+ gdbm? ( sys-libs/gdbm:= )
+ kyotocabinet? ( dev-db/kyotocabinet )
+ lmdb? ( dev-db/lmdb:= )
+ nls? ( virtual/libintl )
+ qdbm? ( dev-db/qdbm )
+ tokyocabinet? ( dev-db/tokyocabinet )
+ gnutls? ( >=net-libs/gnutls-1.0.17:= )
+ gpgme? ( >=app-crypt/gpgme-1.13.1:= )
+ autocrypt? ( >=dev-db/sqlite-3 )
+ idn? ( net-dns/libidn2:= )
+ kerberos? ( virtual/krb5 )
+ notmuch? ( net-mail/notmuch:= )
+ sasl? ( >=dev-libs/cyrus-sasl-2 )
+ ssl? ( >=dev-libs/openssl-1.0.2u:0= )
+ lz4? ( app-arch/lz4 )
+ zlib? ( virtual/zlib:= )
+ zstd? ( app-arch/zstd )
+"
+DEPEND="${CDEPEND}
+ dev-lang/tcl:=
+ net-mail/mailbase
+ doc? (
+ dev-libs/libxml2
+ dev-libs/libxslt
+ app-text/docbook-xsl-stylesheets
+ || (
+ www-client/lynx
+ www-client/w3m
+ www-client/elinks
+ )
+ )
+"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-mutt )
+"
+
+RESTRICT="!test? ( test )"
+
+src_unpack() {
+ if [[ -n ${A} ]]; then
+ unpack ${A}
+ fi
+ if [[ ${PV} =~ 99999999$ ]]; then
+ git-r3_src_unpack
+ fi
+}
+
+src_configure() {
+ local myconf=(
+ "$(usex doc --full-doc --disable-doc)"
+ "$(use_enable nls)"
+ "$(use_enable notmuch)"
+
+ "$(use_enable autocrypt)"
+ "$(use_enable gpgme)"
+ "$(use_enable pgp-classic pgp)"
+ "$(use_enable smime-classic smime)"
+
+ # Database backends.
+ "$(use_enable berkdb bdb)"
+ "$(use_enable gdbm)"
+ "$(use_enable kyotocabinet)"
+ "$(use_enable qdbm)"
+ "$(use_enable tokyocabinet)"
+
+ # Header compression.
+ "$(use_enable lz4)"
+ "$(use_enable zlib)"
+ "$(use_enable zstd)"
+
+ --disable-idn
+ "$(use_enable idn idn2)"
+ "$(use_enable kerberos gss)"
+ "$(use_enable lmdb)"
+ "$(use_enable sasl)"
+ "--sysconfdir=${EPREFIX}/etc/${PN}"
+ "$(use_enable ssl)"
+ "$(use_enable gnutls)"
+
+ "$(usex test --testing --disable-testing)"
+ )
+
+ if is-flagq -fsanitize=address; then
+ myconf+=( --asan )
+ fi
+ if is-flagq -fsanitize=undefined; then
+ myconf+=( --ubsan )
+ fi
+
+ econf CCACHE=none CC_FOR_BUILD="$(tc-getCC)" "${myconf[@]}"
+}
+
+src_test() {
+ local test_dir="$(readlink --canonicalize "${S}"/../neomutt-test-files-${TEST_FILES_COMMIT})"
+ pushd ${test_dir} || die "Could not cd into test_dir"
+ NEOMUTT_TEST_DIR="${test_dir}" ./setup.sh \
+ || die "Failed to run the setup.sh script"
+ popd || die "Could not cd back"
+ NEOMUTT_TEST_DIR="${test_dir}" emake test
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ # A man-page is always handy, so fake one - here neomuttrc.5 (neomutt.1
+ # already exists)
+ if use !doc; then
+ sed -n \
+ -e '/^\(CC_FOR_BUILD\|CFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXTRA_CFLAGS_FOR_BUILD\|LDFLAGS_FOR_BUILD\)\s*=/p' \
+ -e '/^\(EXEEXT\|SRCDIR\)\s*=/p' \
+ Makefile > docs/Makefile.fakedoc || die
+ sed -n \
+ -e '/^MAKEDOC_CPP\s*=/,/^\s*$/p' \
+ -e '/^docs\/\(makedoc$(EXEEXT)\|neomutt\.1\|neomuttrc\.5\)\s*:/,/^\s*$/p' \
+ docs/Makefile.autosetup >> docs/Makefile.fakedoc || die
+ emake -f docs/Makefile.fakedoc docs/neomutt.1
+ emake -f docs/Makefile.fakedoc docs/neomuttrc.5
+ doman docs/neomutt.1 docs/neomuttrc.5
+ fi
+
+ dodoc LICENSE* ChangeLog* README*
+}
+
+pkg_postinst() {
+ if use gpgme && ( use pgp-classic || use smime-classic ); then
+ ewarn " Note that gpgme (old gpg) includes both pgp and smime"
+ ewarn " support. You can probably remove pgp-classic (old crypt)"
+ ewarn " and smime-classic (old smime) from your USE-flags and"
+ ewarn " only enable gpgme."
+ fi
+
+ if use autocrypt && ! use idn; then
+ ewarn " It is highly recommended that NeoMutt be also configured"
+ ewarn " with idn when autocrypt is enabled."
+ fi
+}