Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
MU INIT(1)		    General Commands Manual		    MU INIT(1)

NAME
       mu-init - initialize the	mu message database

SYNOPSIS
       mu [COMMON-OPTIONS] init	[OPTIONS]

DESCRIPTION
       mu init is the subcommand for setting up	the mu message database. After
       mu init has completed, you can run mu index.

INIT OPTIONS
   -m, --maildir maildir
       Use maildir as the root-maildir.

       By  default,  mu	uses the MAILDIR environment to	find the root-maildir.
       If it is	not set, it uses ~/Maildir if it is an existing	directory.  If
       neither of those	can be used, the --maildir option is required; it must
       be an absolute path (but	~/ expansion is	performed).

   --personal-address email-address-or-regex
       nil

   --my-address	email-address-or-regex	(alias)
       Specifies  that	some  e-mail address is	a personal address. The	option
       can be used multiple times, to specify all your addresses.

       Any message in which at least one of the	contact	fields matches a  per-
       sonal  address,	is  considered	a `personal' message; this can then be
       used for	filtering in mu-find(1), mu-cfind(1) and mu4e, e.g. to filter-
       out mailing list	messages.

       email-address-or-regex can be either a plain e-mail  address  (such  as
       foo@example.com),  or  a	basic PCRE regular-expression (see pcre(3) for
       details), wrapped in / (such as	/foo-.*@example\.com/).	 Depending  on
       your shell, the argument	may need to be quoted.

       A  note	of  warning  for mu4e users: any regular-expressions used with
       --with-address are also used by mu4e. Unfortunately, PCRE  regular  ex-
       pressions  are not generally compatible with Emacs regular expressions.
       For instance, (foo|bar) in PCRE syntax has  as its Emacs	equivalent.

       The good	news is	that mu4e can automatically translate the  regular-ex-
       pressions, if you allow it to, by installing the	pcre2el	Elisp package.
       See the mu4e documentation for further details.

   --ignored-address email-address-or-regex
       Specifies  that some e-mail address is to be ignored from the contacts-
       cache (the option can be	used multiple times). Such addresses then can-
       not be found with mu-cfind(1) or	in the Mu4e contacts cache.

       my-email-address	can be either a	plain e-mail address or	a regexp, just
       like for	the --personal-address option.

   --max-message-size size
       Specifies the maximum size for an e-mail	message. Usually, the  default
       of 100000000 bytes should be fine.

   --batch-size	size
       The  number  of changes after which they	are committed to the database;
       decreasing the value reduces the	memory requirements, at	 the  cost  of
       make  indexing  substantially  slower.  Usually,	 the default of	250000
       should be fine.

       Batch-size 0 is interpreted as `use the default'.

   --support-ngrams
       Whether to enable support for using ngrams in indexing and query	 pars-
       ing;  this  can	be  useful for languages without explicit word breaks,
       such as Chinese/Japanese/Korean.	See NGRAM SUPPORT below	for details.

   --reinit
       Reinitialize the	database from an earlier version; that	is,  create  a
       new  empty database with	the existing settings. This cannot be combined
       with the	other init options.

       When you	have labels defined for	messages in your database, mu automat-
       ically exports those to file for	importing later. See RESTORING	LABELS
       below.

   --muhome
       Use  a  non-default directory to	store and read the database, write the
       logs, etc.  By default, mu uses the XDG	Base  Directory	 Specification
       (e.g. on	GNU/Linux this defaults	to ~/.cache/mu and ~/.config/mu). Ear-
       lier   versions	 of   mu   defaulted  to  ~/.mu,  which	 now  requires
       --muhome=~/.mu.

       The environment variable	MUHOME	can  be	 used  as  an  alternative  to
       --muhome. The latter has	precedence.

NGRAM SUPPORT
       mu's  underlying	 Xapian	 database  supports  `ngrams',	which  improve
       searching for languages/scripts that do not have	explicit word  breaks,
       such  as	 Chinese, Japanese and Korean. It is fairly intrusive, and in-
       fluences	both indexing and query-parsing; it is not enabled by default,
       and is recommended only if you need to search for messages  written  in
       such languages.

       When  enabled, mu automatically uses ngrams automatically. Xapian envi-
       ronment variables such as XAPIAN_CJK_NGRAM are ignored.

EXIT CODE
       This command returns 0 upon successful completion, or a	non-zero  exit
       code otherwise.

       0.  success

       2.  no matches found. Try a different query

       11. database  schema  mismatch.	You  need to re-initialize mu, see mu-
	   init(1)

       19. failed to acquire lock. Some	other program has exclusive access  to
	   the mu database

       99. caught an exception

RESTORING LABELS
       When  you  have	any labels defined for your database, mu automatically
       exports those to	a file in the mu cache directory; you see this in  the
       --init output.

	      $	mu init	--reinit
	      exported labels to: /home/user/.cache/mu/mu-export-2025-08-16-13:43:27.txt

       You can restore those labels after re-indexing, e.g.,
	      $	mu label import	/home/user/.cache/mu/mu-export-2025-08-16-13:43:27.txt

       Please see mu-labels(1) for further details.

EXAMPLE
	      $	mu init	--maildir=~/Maildir --my-address=alice@example.com --my-address=bob@example.com	--ignored-address='/.*reply.*/'

REPORTING BUGS
       Please report bugs at https://github.com/djcb/mu/issues.

AUTHOR
       Dirk-Jan	C. Binnema <djcb@djcbsoftware.nl>

COPYRIGHT
       This manpage is part of mu 1.12.15.

       Copyright   2008-2026 Dirk-Jan C. Binnema. License GPLv3+: GNU GPL ver-
       sion 3 or later https://gnu.org/licenses/gpl.html. This is  free	 soft-
       ware: you are free to change and	redistribute it. There is NO WARRANTY,
       to the extent permitted by law.

SEE ALSO
       mu-index(1), mu-find(1),	mu-labels(1), mu-cfind(1), pcre(3)

								    MU INIT(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=mu-init&sektion=1&manpath=FreeBSD+Ports+15.0.quarterly>

home | help