mu is a set of command-line tools for dealing with e-mail messages
stored in the Maildir-format. mu's goal is to help you to quickly find
the messages you need, view them, extract attachments, create new
maildirs, and so on.
Built on top of mu are some extensions (included in this package):
- mu4e: a full-featured e-mail client that runs inside emacs
- mu-scm: bindings for the Guile/Scheme programming language
===> The following configuration options are available for mu-1.14.3:
CLD2=off: Install CL2 support
DOCS=on: Build and/or install documentation
GUILE=off: Install guile support
MANPAGES=on: Build and/or install manual pages
MU4E=on: Install mu4e e-mail client for emacs
===> Use 'make config' to modify these settings
Reason:
mail/mu now uses XDG Base Directory Specification for the default
locations for various files. The mu database now lives under
~/.cache/mu rather than ~/.mu by default. After upgrading,
move the contents under ~/.mu to ~/.cache/mu.
Port Moves
port moved here from mail/mu4e-maildirs on 2025-12-01 REASON: Has expired: Upstream discourages using this software and recommends feature now integrated into mail/mu
port moved here from mail/mu4e on 2025-10-21 REASON: Becomes integrated as default to its backend port mail/mu
mail/mu: Fix build
Fix build with MANPAGES=off and MU4E=on because BUILD_DEPENDS=emacs was
changed to MANPAGES_BUILD_DEPENDS.
Delete the *.elc files to enable compatibility with the new Emacs
framework.
PR: 295350
Approved by: rwn@mailo.com (maintainer, timeout, implicit)
Approved by: fluffy (mentor)
mail/mu: Improve port and fix compatibility with (lib)fmt 12
* Switch to upstream release archive
* Backport upstream patch 0a4fabbf446d15b538600dfe7d879cad70ce941e
for comptibility with (lib)fmt 12
* Make MANPAGES optional (removes build dependency of emacs)
* Drop info files to simplify port
* Define SHEBANG_FILES as we're only patching a single file
* Sort options and related variables in port Makefile
References:
https://github.com/djcb/mu/commit/0a4fabbf446d15b538600dfe7d879cad70ce941e
PR: 290616
Reviewed by: RwN <rwn@mailo.com> (maintainer)
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
Update Guile to version 2.2.5, modern stable version, and fix dependent
ports to build against it. Most changes are rather minor and mechanical
except for the devel/gdb (obtained via their bugtracker [1], courtesy of
Doug Evans). One port (science/meep) I had to mark BROKEN after fixing
it proved to be very tedious and actually unreliable. It is very old,
there are newer versions available so it should be fixed by updating.
One port (devel/libruin) had revealed a bug in the new Guile code (an
auxiliary script, really) that had to be worked-round; reference to the
problematic upstream commit is provided in the patch.
PR: 229613
Exp-run by: antoine
[1] https://sourceware.org/bugzilla/show_bug.cgi?id=21104#c8
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
Most commonly used build systems support silent builds, when they
hide actual commands executed and only show short summary line (like
"CC foo.c"). CMake and ninja enable this by default, some autotools
using ports do as well. This is unacceptable because we need complete
build logs at any time, so we now switch to verbose build logs
unconditionally. Note that this change deliberately affects ALL
builds and not only package builds on cluster, because we need to
be sure that user experiencing failure can always provide informative
build log regardless of settings and without rerunning the build.
Change summary:
- Always do verbose builds for cmake, ninja and GNU configure (the
latter includes check if --disable-silent-rules is actually supported
by the configure script; there are isolated cases when it's not true)
(Only the first 15 lines of the commit message are shown above )
- Split mail/mu into mail/mu4e.
- mail/mu4e now installs gzip'd elisp files.
- Add mail/mu4e-maildirs, Maildirs extension for Mu4e.
- Take maintainership of the related ports.
Discussed with: William Waites (maintainer)
USE_GITHUB: For the new support, fix DISTNAME to be more consistent.
When using GH_TAGNAME the DISTNAME would have GH_PROJECT and GH_ACCOUNT in
it. When not using GH_TAGNAME it would not have this. Now both cases
will add in the GH_PROJECT and GH_ACCOUNT.
Add special care to ensure that the DISTVERSION is not added in twice. If
a port does GH_TAGNAME=v${PORTVERSION} it will be added in twice though. For
that case DISTVERSIONPREFIX=v should be set and no GH_TAGNAME should be used.
empty() is used rather than (!defined || !${}) to support fmake.
The purpose of setting DISTNAME at all in these cases is to make it more clear
that the distfile is from *GITHUB* and to avoid collisions if a project were
to be renamed or moved. Without adding in GH_PROJECT and GH_ACCOUNT then there
are real risks that collisions on filenames would happen on renamed or moved
projects, which is fairly common. A GITHUB-generated file may not match
a custom-rolled or git-archive-rolled distfile.
PR: 199069
With hat: portmgr
Testing done: All USE_GITHUB ports without GH_COMMIT were
checksum/fetch/extract/WRKSRC tested.
Update USE_GITHUB so it does not require GH_COMMIT.
Using this new scheme allows only setting the _tag_ or _commit hash_ in
GH_TAGNAME and not having to know the hash for a tag. This scheme will
download a tarball that has a different checksum than before due to a changed
directory name for extraction.
The following MASTER_SITES are provided to retain the old checksum and
directory structure (that require GH_COMMIT):
GH -> GHL
GITHUB -> GITHUB_LEGACY
Differential Revision: https://reviews.freebsd.org/D748
Submitted by: amdmi3
Reviewed by: mat, swills, antoine, bdrewery
With hat: portmgr
lang/guile2:
- Convert to USES=libtool and bump dependent ports
- Convert to USES=charsetfix and USES=pathfix
- Drop USE_GCC=any
- Add INSTALL_TARGET=install-strip
- Avoid USE_AUTOTOOLS
mail/mu: upgrade to 0.9.9
Changelog entries since 0.9.8.1:
- remove --summary (use --summary-len instead)
- add --after for mu find, to limit to messages after T
- add new command `mu verify', to verify signatures
- fix iso-2022-jp decoding (and other 7-bit clean non-ascii)
- add support for X-keywords
- performance improvements for threaded display (~ 25% for
23K msgs)
- mu improved user-help (and the 'mu help' command)
- toys/mug2 replaces toys/mug
- support .noupdate files (parallel to .noindex, dir is ignored
(Only the first 15 lines of the commit message are shown above )
New port: mail/mu
Mu is the mail indexer that uses Xapian as the search engine.
In my tests it is blazingly fast, at least 5 times faster
than nmzmail and it understands cyrillic ;))
QA page: http://codelabs.ru/fbsd/ports/qa/mail/mu/0.9.8.1