]> granicus.if.org Git - neomutt/commitdiff
tidy docs
authorRichard Russon <rich@flatcap.org>
Sat, 12 May 2018 00:21:50 +0000 (01:21 +0100)
committerRichard Russon <rich@flatcap.org>
Sat, 12 May 2018 00:21:50 +0000 (01:21 +0100)
AUTOSETUP.md [deleted file]
COPYRIGHT [deleted file]
COPYRIGHT.md [new file with mode: 0644]
INSTALL [deleted file]
INSTALL.md [new file with mode: 0644]
README.SSL [deleted file]
README.md
imap/README [deleted file]

diff --git a/AUTOSETUP.md b/AUTOSETUP.md
deleted file mode 100644 (file)
index 6a70fb3..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-# Autosetup build system for NeoMutt
-
-This document explains the changes introduced to NeoMutt's build system by
-switching to an Autosetup-based configuration and the rationale behind some of
-the choices that have been made.
-
-## Introduction
-
-"[Autosetup](https://msteveb.github.io/autosetup/) is a tool, similar to the
-Autotools family, to configure a build system for the appropriate environment,
-according to the system capabilities and the user-selected options."
-
-The website explains in great details the major goals of the project and the
-similarities and differences with Autotools. For the sake of this short
-introduction, I'll summarize the major points, as relevant to Neomutt.
-
-### Zero-dependency
-
-In general, Autotools-based systems read a script named `configure.ac`, which
-is written in a mix of m4 and shell called M4sh. This script is translated into
-a portable shell script named `configure` by means of `autoconf` and other
-support tools.
-Autosetup, on the other hand, reads and directly runs a configuration script,
-usually named `auto.def`. The script and the support modules in the
-`autosetup/` directory are written in [Tcl](https://tcl.tk). The major result
-of this choice is that there is no need for an initial translation to a
-portable environment.  Autosetup ships with a minimal implementation of Tcl
-called [Jim](http://jim.tcl.tk), which is compiled and used on-demand, if no
-full Tcl shell is found in the path.  Projects ship a `configure` script that
-can be directly run.
-
-So, this
-
-```sh
-autoreconf --install && ./configure && make
-```
-
-becomes
-
-```sh
-./configure && make
-```
-
-**Bottom line**: no build-time dependencies, faster configure stage, higher
-level of debuggability of the build scripts, no more "autoconf before ship".
-
-### Simple and consistent options system
-
-Autosetup allows users to personalize the build at configure time. Unlike
-Autotools, the object model for the options system is simple and consistent.
-There are two types of options: booleans and strings. Both can be specified to
-have default values. The options are defined in a self-explanatory `options`
-section (it's actually a proc under the hood):
-
-```
-options {
-   smime=1                    => "Disable S/Mime"
-   gpgme=0                    => "Enable GPGME"
-   with-gpgme:path            => "Location of GPGME"
-   with-mailpath:=/var/mail   => "Location of the spool mailboxes"
-}
-```
-
-A user can configure the build to suit his needs by modifying the default
-values, e.g.,
-`./configure --disable-smime --gpgme --with-gpgme=/usr/local`.
-
-Within `auto.def`, option can be easily queried with `[opt-bool smime]` and
-`[opt-val with-gpgme $prefix]`, with the latter using `$prefix` if not value
-was given. In the above example, `[opt-val with-mailpath]` will return the
-default value `/var/mail` if not overridden by the user.
-
-**Bottom line**: no more confusion due to the differences and similarities
-between `--with-opt`, `--enable-opt`, `with_val`, `without_val`.  Simple and
-self-documenting API for managing configure options.
-
-### Focus on features
-
-Autotools comes with high level primitives, which allow to focus on the
-features to be tested. In the ~850 lines of our `auto.def` file - compare to
-the current 970 lines in configure.ac - there is almost no boilerplate code.
-The code is self-explanatory and easily readable - yes, it is Tcl and it might
-take a little getting used to, but it's nothing compared to M4sh.
-
-**Bottom line**: readable and debuggable configure script, no M4sh quoting
-intricacies, easily extensible.
-
-## Autosetup for Neomutt
-
-In this section, I'll explain a few design decisions I took when porting
-NeoMutt's build system to Autosetup.
-
-### Non-recursive Makefiles
-
-The build system is driven by the top-level Makefile, which includes additional
-Makefiles from the subdirectories `doc`, `contrib`, and `po`. I'll stress that
-these Makefiles are included by the main Makefile and *not* invoked recursively
-(google for "recursive make considered harmful"). The build system relies on
-the fact that each of the sub-makefiles defines its own targets, conventionally
-named all-*subdir*, clean-*subdir*, install-*subdir*, and uninstall-*subdir*.
-For example, `po/Makefile` defines the targets `all-po`, `clean-po`,
-`install-po`, and `uninstall-po`. To add a new subdir named `mydir` to the
-build system, follow these steps:
-
-1. create `mydir/Makefile.autosetup`
-2. define the target `all-mydir`, `clean-mydir`, `install-mydir`, and
-   `uninstall-mydir`
-3. update the `subdirs` variable definition in `auto.def`
-
-The top-level Makefile will invoke your targets as dependencies for the main
-`all`, `clean`, `install`, and `uninstall` targets.
-
-### Configuration options
-
-For a list of the currently supported options and a brief help text, please run
-`./configure.autosetup --help`.
-
-### Installation / uninstallation
-
-Two parameters play an important role when deciding where to install NeoMutt.
-The first is the `--prefix` parameter to configure. The second is the `DESTDIR`
-variable used by Makefiles.
-
-The parameter `--prefix` is used to specify both the default search path for
-headers and libraries and the final directory structure of the installed files.
-These are often the same: if you have your dependencies installed in
-`/usr/include` and `/usr/lib`, you also probably want the NeoMutt executable to
-end up in `/usr/bin` and its documentation in `/usr/share/doc`. This behavior
-can be tweaked by specifying where 3rd party dependencies are to be found. This
-is done on a per-dependency basis using the `--with-<dep>=path` family of
-options. As an example, a GPGMe installation in `/opt` can be looked up using
-the arguments `--gpgme --with-gpgme=/opt`.
-
-The second parameter, the `DESTDIR` make variable, is used for staged builds
-and is prepended to the final path. This allows to stage the whole installation
-into `./tmp` by simply using a make invokation like `make DESTDIR=./tmp
-install`.
-Staged builds are used by downstream packagers and allow to track the list of
-files installed by a package: it is easier to `find ./tmp -type f` than to
-snapshot the whole `/` filesystem and figure out the modifications introduced
-by installing a package. This information is usually used to list the contents
-of an installed package or to uninstall it.
diff --git a/COPYRIGHT b/COPYRIGHT
deleted file mode 100644 (file)
index 2291d96..0000000
--- a/COPYRIGHT
+++ /dev/null
@@ -1,34 +0,0 @@
-The following copyright notices apply to most of the program.  Some
-modules are under different licenses, or in the public domain.
-
-Please note that this is by no means an exhaustive list of all the
-persons who have been contributing to this program.  Please see the
-manual for a (probably still non complete) list of the persons who
-have been helpful with the development of this program.  Please also
-see our source code repository at http://dev.mutt.org/hg/mutt/ for
-the full history of commits.
-
-Copyright (C) 1996-2016 Michael R. Elkins <me@cs.hmc.edu>
-Copyright (C) 1996-2002 Brandon Long <blong@fiction.net>
-Copyright (C) 1997-2009 Thomas Roessler <roessler@does-not-exist.org>
-Copyright (C) 1998-2005 Werner Koch <wk@isil.d.shuttle.de>
-Copyright (C) 1999-2017 Brendan Cully <brendan@kublai.com>
-Copyright (C) 1999-2002 Tommi Komulainen <Tommi.Komulainen@iki.fi>
-Copyright (C) 2000-2004 Edmund Grimley Evans <edmundo@rano.org>
-Copyright (C) 2006-2009 Rocco Rutte <pdmef@gmx.net>
-Copyright (C) 2014-2018 Kevin J. McCarthy <kevin@8t8.us>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
-
diff --git a/COPYRIGHT.md b/COPYRIGHT.md
new file mode 100644 (file)
index 0000000..c37a484
--- /dev/null
@@ -0,0 +1,40 @@
+NeoMutt Copyright Statement
+---------------------------
+
+Almost all of the source of NeoMutt is released under version 2 of the GPL, the
+GNU General Public License.  See [LICENSE.md](LICENSE.md).
+
+> This program is free software: you can redistribute it and/or modify it under
+> the terms of the GNU General Public License as published by the Free Software
+> Foundation, either version 2 of the License, or (at your option) any later
+> version.
+> 
+> This program is distributed in the hope that it will be useful, but WITHOUT
+> ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+> FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
+> details.
+> 
+> You should have received a copy of the GNU General Public License along with
+> this program.  If not, see http://www.gnu.org/licenses/
+
+A few source files are in the public domain.
+
+The principal authors of NeoMutt are:
+
+- Copyright (C) 1996-2016 Michael R. Elkins `<me@.s.hmc.edu>`
+- Copyright (C) 1996-2002 Brandon Long `<blong@fiction.net>`
+- Copyright (C) 1997-2009 Thomas Roessler `<roessler@does-not-exist.org>`
+- Copyright (C) 1998-2005 Werner Koch `<wk@isil.d.shuttle.de>`
+- Copyright (C) 1999-2017 Brendan Cully `<brendan@kublai.com>`
+- Copyright (C) 1999-2002 Tommi Komulainen `<Tommi.Komulainen@iki.fi>`
+- Copyright (C) 2000-2004 Edmund Grimley Evans `<edmundo@rano.org>`
+- Copyright (C) 2006-2009 Rocco Rutte `<pdmef@gmx.net>`
+- Copyright (C) 2014-2018 Kevin J. McCarthy `<kevin@8t8.us>`
+- Copyright (C) 2015-2018 Richard Russon `<rich@flatcap.org>`
+
+For a full list of contributors to NeoMutt, see the [README.md](README.md)
+
+For the complete history of NeoMutt, see the source repository on GitHub:
+
+- https://github.com/neomutt
+
diff --git a/INSTALL b/INSTALL
deleted file mode 100644 (file)
index e593517..0000000
--- a/INSTALL
+++ /dev/null
@@ -1,165 +0,0 @@
-Notes
-=====
-
-- A C99 compiler (such as GCC) is required.
-
-- You must also have a SysV compatible curses library, or you must
-  install either
-
-       GNU ncurses, ftp://prep.ai.mit.edu/pub/gnu/
-  or
-       S-Lang, ftp://space.mit.edu/pub/davis/slang/
-
-- NeoMutt needs an implementation of the iconv API for character set
-  conversions.  A free one can be found under the following URL:
-
-       http://www.gnu.org/software/libiconv/
-
-- For building the manual, neomutt needs the DocBook XSL stylesheets
-  as well as the DocBook DTD as of version 4.2 installed locally.
-
-
-Installation
-============
-
-Installing NeoMutt is rather painless through the use of the GNU
-autoconf package.  Simply untar the NeoMutt distribution, and run the
-``configure'' script.  If you have obtained the distribution from
-the Mercurial repository, run the ``prepare'' script with the same command
-line parameters you would pass to configure.  It will set up neomutt's
-build environment and add the files which are present in the tar
-balls, but not in the Mercurial repository.
-
-In most cases, configure will automatically determine everything it
-needs to know in order to compile.  However, there are a few options
-to ``configure'' to help it out, or change the default behavior:
-
---prefix=DIR
-       install NeoMutt in DIR instead of /usr/local
-
---with-curses=DIR
-       use the curses lib in DIR/lib.  If you have ncurses, ``configure''
-       will automatically look in /usr/include/ncurses for the include
-       files.
-
---with-lock=(fcntl | flock)
-
-       select between fcntl() and flock() for file locking. Neomutt will
-       use fcntl() by default, but this can result in poor performance 
-       on NFS.
-
---with-slang[=DIR]
-       use the S-Lang library instead of ncurses.  This library seems to
-       work better for some people because it is less picky about proper
-       termcap entries than ncurses.  It is recommended that you use at
-       *least* version 0.99-38 with NeoMutt.
-
---with-mailpath=DIR
-       specify where the spool mailboxes are located on your system
-
---with-homespool[=FILE]
-       treat file in the user's home directory as the spool mailbox.  Note
-       that this is *not* the full pathname, but relative to the user's
-       home directory.  Defaults to "mailbox" if FILE is not specified.
-
---with-gss[=PFX]
-       Enable GSSAPI authentication to IMAP servers. This should work with
-       both MIT and Heimdal GSSAPI implementations - others haven't been
-       tested. Note that the Cyrus SASL library also supports GSSAPI,
-       and may be able to encrypt your session with it - you should use
-       SASL instead if you can.
-
---with-ssl[=PFX]
-       enable SSL support with IMAP and POP. SSL support requires you to
-       have OpenSSL headers and libraries properly installed before
-       compiling.  If the OpenSSL headers and libraries are not in the
-       default system pats you can use the optional PFX argument to
-       define the root directory of your installation.  The libraries
-       are then expected to be found in PFX/lib and headers in
-       PFX/include/openssl.
-
---with-sasl[=PFX]
-       Use the Cyrus SASL library for IMAP or POP authentication. This
-       library provides generic support for several authentication methods,
-       and more may be added by the system administrator without recompiling
-       neomutt. SASL may also be able to encrypt your mail session even if
-       SSL is not available.
-
---disable-nls
-       This switch disables neomutt's native language support.
-
---enable-locales-fix
-       on some systems, the result of isprint() can't be used reliably
-       to decide which characters are printable, even if you set the
-       LANG environment variable.  If you set this option, NeoMutt will
-       assume all characters in the ISO-8859-* range are printable.  If
-       you leave it unset, NeoMutt will attempt to use isprint() if either
-       of the environment variables LANG, LC_ALL or LC_CTYPE is set,
-       and will revert to the ISO-8859-* range if they aren't.
-       If you need --enable-locales-fix then you will probably need
-       --without-wc-funcs too. However, on a correctly configured
-       modern system you shouldn't need either (try setting LANG,
-       LC_ALL or LC_CTYPE instead).
-
---without-wc-funcs
-       by default NeoMutt uses the functions mbrtowc(), wctomb() and
-       wcwidth() provided by the system, when they are available.
-       With this option NeoMutt will use its own version of those
-       functions, which should work with 8-bit display charsets, UTF-8,
-       euc-jp or shift_jis, even if the system doesn't normally support
-       those multibyte charsets.
-
-       If you find NeoMutt is displaying non-ascii characters as octal
-       escape sequences (e.g. \243), even though you have set LANG and
-       LC_CTYPE correctly, then you might find you can solve the problem
-       with either or both of --enable-locales-fix and --without-wc-funcs.
-
-Once ``configure'' has completed, simply type ``make install.''
-
-NeoMutt should compile cleanly (without errors) and you should end up with a
-binary called ``neomutt.''  If you get errors about undefined symbols like
-A_NORMAL or KEY_MIN, then you probably don't have a SysV compliant curses
-library.  You should install either ncurses or S-Lang (see above), and then
-run the ``configure'' script again.
-
-Please note that "VPATH" builds currently only work with GNU make (gmake).
-
-
-
-Character set support
-=====================
-
-NeoMutt no longer contains functions for doing character set conversion.
-Instead, it expects the iconv functions (iconv_open, iconv,
-iconv_close) to be provided. Most up-to-date systems provide these
-functions, often as part of the C library. If you are installing NeoMutt
-on a system which does not have them, it is recommended that you
-install Bruno Haible's portable libiconv library, which you can obtain
-from:
-
-              ftp://ftp.ilog.fr/pub/Users/haible/gnu/
-
-Even if your system does provide the iconv functions, you might want
-to install libiconv, as some systems provide only a very limited
-version of iconv.
-
-
-If you decide to use your system's iconv implementation, you may
-need to tell neomutt about implementation-defined names for some
-character sets.  Sample configuration files for various systems can
-be found in the directory contrib/iconv/ in this source
-distribution, and will be installed in the samples/iconv directory
-as part of neomutt's documentation.
-
-In order to use these sample configuration files, just put a line
-like
-
-     source /usr/local/doc/neomutt/samples/iconv/iconv.osf1-4.0d.rc
-
-into your system's global Muttrc, which normally resides in /etc or
-/usr/local/etc.
-
-
-If you really want to, you can configure NeoMutt --disable-iconv, but
-there will then be no character set conversion.
-
diff --git a/INSTALL.md b/INSTALL.md
new file mode 100644 (file)
index 0000000..eab82de
--- /dev/null
@@ -0,0 +1,157 @@
+# Installing NeoMutt
+
+NeoMutt is a command line email client (Mail User Agent).
+It's fast, powerful and flexible.
+
+The simplest way to obtain NeoMutt is to use your OS's package.
+See the [distro page](https://neomutt.org/distro.html) to see if there's one for you.
+
+## Obtaining the Source
+
+The source can be downloaded from our project site on GitHub.
+It's available as a git repository or a 'tar.gz' archive.
+
+### Git
+
+Clone the NeoMutt repository:
+
+```
+git clone https://github.com/neomutt/neomutt
+```
+
+It's recommended to use the latest tagged version.
+The 'master' branch is used for development and may not be as stable.
+
+### Source Archive
+
+The latest release of NeoMutt can be found, here:
+
+- https://github.com/neomutt/neomutt/releases/latest
+
+All source releases are signed for security.
+See [Signing Releases](https://neomutt.org/dev/signing#source-example) for details.
+
+## Building NeoMutt
+
+To build NeoMutt, you will need, at the very minimum:
+
+- A C99 compiler such as gcc or clang
+- SysV-compatible curses library: ncurses or slang
+- Some common libraries, such as iconv and regex
+- DocBook XSL stylesheets and DTDs (for building the docs)
+
+NeoMutt's build system uses [Autosetup](https://msteveb.github.io/autosetup/).
+It depends on [Tcl](https://tcl.tk) and [Jim](http://jim.tcl.tk) to run its test scripts.
+If they aren't available, Autosetup will use a version bundled with NeoMutt.
+
+### Configure
+
+Autosetup's  `configure.autosetup` performs two tasks.  It allows the user to
+enable/disable certain features of NeoMutt and it checks that all the build
+dependencies are present.
+
+For a list of the currently supported options and a brief help text, run:
+`./configure.autosetup --help`
+
+| Configure option        | Path | Notes                                        |
+| :---------------------- | :--- | :------------------------------------------- |
+| `--with-ui=CHOICE`      |      | Select 'ncurses' or 'slang'                  |
+| `--with-ncurses=path`   |      | Location of ncurses                          |
+| `--with-slang=path`     |      | Location of S-Lang                           |
+|                         |      |                                              |
+| `--gpgme`               | Path | GPG Made Easy                                |
+| `--gnutls`              | Path | Gnu TLS (SSL)                                |
+| `--gss`                 | Path | Generic Security Services                    |
+| `--sasl`                | Path | Simple Authentication and Security Layer     |
+| `--ssl`                 | Path | OpenSSL                                      |
+|                         |      |                                              |
+| `--fmemopen`            |      | Optional Feature (Dangerous)                 |
+| `--lua`                 | Path | Optional Feature                             |
+| `--notmuch`             | Path | Optional Feature                             |
+| `--mixmaster`           |      | Optional Feature                             |
+|                         |      |                                              |
+| `--bdb`                 | Path | Header cache backend                         |
+| `--gdbm`                | Path | Header cache backend                         |
+| `--kyotocabinet`        | Path | Header cache backend                         |
+| `--lmdb`                | Path | Header cache backend                         |
+| `--qdbm`                | Path | Header cache backend                         |
+| `--tokyocabinet`        | Path | Header cache backend                         |
+|                         |      |                                              |
+| `--with-lock=CHOICE`    |      | Select 'fcntl' or 'flock'                    |
+| `--locales-fix`         |      | Workaround for broken locales                |
+| `--disable-nls`         | Path | National Language Support (translations)     |
+| `--disable-pgp`         | Path | Pretty Good Privacy                          |
+| `--disable-smime`       | Path | Secure/Multipurpose Internet Mail Extensions |
+| `--disable-idn`         | Path | Internationalised domain names               |
+|                         |      |                                              |
+| `--with-domain=DOMAIN`  |      | Default email domain                         |
+| `--with-mailpath`       | Path | Location of spooled mail                     |
+| `--homespool`           | Path | Spooled mail is in user's home dir           |
+|                         |      |                                              |
+| `--prefix`              | Path | Target directory for build (default: `/usr`) |
+| `--disable-doc`         |      | Don't build the docs                         |
+| `--full-doc`            |      | Document disabled features                   |
+| `--quiet`               |      | Only show the summary                        |
+
+The options marked "Path" have either take a path, or have an extra option for
+specifying the library path.
+e.g.  `./configure --notmuch --with-notmuch=/usr/local/lib/notmuch`
+
+The parameter `--prefix` is used to specify both the default search path for
+headers and libraries and the final directory structure of the installed files.
+These are often the same: if you have your dependencies installed in
+`/usr/include` and `/usr/lib`, you also probably want the NeoMutt executable to
+end up in `/usr/bin` and its documentation in `/usr/share/doc`. This behavior
+can be tweaked by specifying where 3rd party dependencies are to be found. This
+is done on a per-dependency basis using the `--with-<dep>=path` family of
+options. As an example, a GPGMe installation in `/opt` can be looked up using
+the arguments `--gpgme --with-gpgme=/opt`.
+
+The build can be adjusted by setting any of six environment variables:
+
+- `CC`            - set the compiler
+- `CFLAGS`        - replace **all** the compiler flags
+- `EXTRA_CFLAGS`  - append flags to the default compiler flags
+- `LD`            - set the linker
+- `LDFLAGS`       - replace **all** the linker flags
+- `EXTRA_LDFLAGS` - append flags to the default linker flags
+
+e.g.  `make EXTRA_CFLAGS=-g`
+
+Here are the sample commands to configure and build NeoMutt:
+
+```
+./configure --gnutls --gpgme --gss --sasl --tokyocabinet
+make
+```
+
+### Install / Uninstall
+
+NeoMutt will be installed into the directory configured with `--prefix`.
+This can be modified using the `DESTDIR` make variable, for example when doing
+staged builds.  `DESTDIR` is prepended to the install path.
+
+To install NeoMutt to the configured location, run:
+
+```
+make install
+```
+
+To override the root directory, use the `DESTDIR` make variable, e.g.
+
+```
+make DESTDIR=$HOME/install install'
+```
+
+To uninstall NeoMutt from the configured location, run:
+
+```
+make uninstall
+```
+
+To override the root directory, use the `DESTDIR` make variable, e.g.
+
+```
+make DESTDIR=$HOME/install uninstall'
+```
+
diff --git a/README.SSL b/README.SSL
deleted file mode 100644 (file)
index 084f1fa..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-IMAP/SSL in neomutt
-================
-
-Compilation
------------
-If you want to have SSL support in neomutt, you need to install OpenSSL
-(http://www.openssl.org) libraries and headers before compiling.
-OpenSSL versions 0.9.3 through 1.0.1c have been tested.
-
-For SSL support to be enabled, you need to run the ``configure''
-script with ``--with-ssl[=PFX]'' parameters.  If the
-OpenSSL headers and libraries are not in the default system search
-paths (usually /usr/include and /usr/lib) you can use the optional PFX
-argument to define the root directory of your installation.  The
-libraries are then expected to be found in PFX/lib and headers in
-PFX/include/openssl.
-
-
-Usage
------
-IMAP/SSL folders can be accessed just like normal IMAP folders, but you
-will also have to add '/ssl' before the closing curly brace. Or you can
-use IMAP url notation, where the methods is called imaps.
-
-For example:
-       mailboxes {localhost/ssl}inbox
-       mailboxes {localhost:994/ssl}inbox
-or
-       mailboxes imaps://localhost/inbox
-       mailboxes imaps://localhost:994/inbox
-
-If you get errors about lack of entropy, it means that NeoMutt was unable
-to find a source of random data to initialize SSL library with. Should
-this happen, you need to generate the data yourself and save it in a
-file pointed by $entropy_file or $RANDFILE (environment) variables or
-in ~/.rnd.
-
-One way to generate random data would be to run a command which
-generates unpredictable output, for example 'ps aluxww' in Linux, and
-calculating the MD5-sum from the output and saving it in a file.
-
-** Note: The contents of the file pointed by $RANDFILE environment
-** variable (or ~/.rnd if unset) will be overwritten every time NeoMutt
-** is run so don't put anything you can't afford to lose in that file.
-
-The files NeoMutt will try to use to initialize SSL library with are files
-pointed by $entropy_file and $RANDFILE (or ~/.rnd if unset.) If your
-OpenSSL is version 0.9.5 or later, the previous files can also be EGD
-sockets (see http://www.lothar.com/tech/crypto/ for more information
-about Entropy Gathering Daemon) and in addition sockets in the following
-places are tried: socket pointed by $EGDSOCKET environment variable,
-~/.entropy and /tmp/entropy.
-
-All the files and sockets mentioned above must be owned by the user and
-have permissions of 600.
-
-
-Certificates
-------------
-Each time a server is contacted, its certificate is checked against
-known valid certificates. When an unknown certificate is encountered,
-you are asked to verify it. If you reject the certificate, the
-connection will be terminated immediately. If you accept the
-certificate, the connection will be established. Accepted certificates
-can also be saved so that further connections to the server are
-automatically accepted.
-
-If OpenSSL was built with support for ServerNameIndication (SNI) and TLS
-is used in the negotiation, neomutt will send its idea of the server-name
-as part of the TLS negotiation.  This allows the server to select an
-appropriate certificate, in the event that one server handles multiple
-hostnames with different certificates.
-
-If your organization has several equivalent IMAP-servers, each of them
-should have a unique certificate which is signed with a common
-certificate.  If you want to use all of those servers, you don't need to
-save each server certificate on the first connect.  Instead, you can get
-the signer certificate and save it instead.  That way, neomutt will
-automatically accept all certificates signed with the saved certificate.
-
-System-wide certificates are by default considered trusted when checking
-certificates by signer.  This allows system administrators to setup
-trusted certificates for all users.  How to install certificates
-system-wide, depends on the OpenSSL installation.  Use of system-wide
-certificates can be disabled by unsetting $ssl_usesystemcerts variable.
-
-Certificates will be saved in the file specified by $certificate_file
-variable.  It is empty as default, so if you don't want to verify
-certificates each time you connect to a server, you have set this
-variable to some reasonable value.
-
-For example:
-       set certificate_file=~/.neomutt/certificates
-
-
-Troubleshooting
----------------
-If after doing the above, you are unable to successfully connect, it
-is likely that your IMAP server does not support one of the SSL protocols.
-There exist three different protocols, TLSv1, SSLv2, and SSLv3.  To check
-each of these, you use the following:
-    openssl s_client -host <imap server> -port <port> -verify -debug -no_tls1
-    openssl s_client -host <imap server> -port <port> -verify -debug -no_ssl2
-    openssl s_client -host <imap server> -port <port> -verify -debug -no_ssl3
-
-You can also combine the options until you get a successful connect.  Once
-you know which options do not work, you can set the variables for non-working
-protocols to know.  The variables for the protocols are ssl_use_tlsv1,
-ssl_use_sslv2, and ssl_use_sslv3.
-
-To verify TLS SNI support by a server, you can use:
-    openssl s_client -host <imap server> -port <port> \
-        -tls1 -servername <imap server>
-
-
---
-Tommi Komulainen
-Tommi.Komulainen@iki.fi
-
-Updated by:
-  Jeremy Katz <katzj@linuxpower.org>
-  Phil Pennock <neomutt-dev@spodhuis.org>
index 98f42ba2b46f2539f967de3d8db9d72400ca17c8..91032394743e2f54b492aba965fd0f41c5e84f08 100644 (file)
--- a/README.md
+++ b/README.md
@@ -2,12 +2,12 @@
 
 [![Stars](https://img.shields.io/github/stars/neomutt/neomutt.svg?style=social&label=Stars)](https://github.com/neomutt/neomutt "Give us a Star")
 [![Twitter](https://img.shields.io/twitter/follow/NeoMutt_Org.svg?style=social&label=Follow)](https://twitter.com/NeoMutt_Org "Follow us on Twitter")
-[![Contributors](https://img.shields.io/badge/Contributors-115-orange.svg)](#contributors)
+[![Contributors](https://img.shields.io/badge/Contributors-115-orange.svg)](#contributors "All of NeoMutt's Contributors")
 [![Release](https://img.shields.io/github/release/neomutt/neomutt.svg)](https://github.com/neomutt/neomutt/releases/latest "Latest Release Notes")
-[![License: GPL v2](https://img.shields.io/badge/License-GPL%20v2-blue.svg)](https://github.com/neomutt/neomutt/blob/master/COPYRIGHT)
-[![Code build](https://img.shields.io/travis/neomutt/neomutt.svg?label=code)](https://travis-ci.org/neomutt/neomutt)
-[![Coverity Scan](https://img.shields.io/coverity/scan/8495.svg)](https://scan.coverity.com/projects/neomutt-neomutt)
-[![Website build](https://img.shields.io/travis/neomutt/neomutt.github.io.svg?label=website)](https://travis-ci.org/neomutt/neomutt.github.io)
+[![License: GPL v2](https://img.shields.io/badge/License-GPL%20v2-blue.svg)](https://github.com/neomutt/neomutt/blob/master/COPYRIGHT.md "Copyright Statement")
+[![Code build](https://img.shields.io/travis/neomutt/neomutt.svg?label=code)](https://travis-ci.org/neomutt/neomutt "Latest Automatic Code Build")
+[![Coverity Scan](https://img.shields.io/coverity/scan/8495.svg)](https://scan.coverity.com/projects/neomutt-neomutt "Latest Code Static Analysis)
+[![Website build](https://img.shields.io/travis/neomutt/neomutt.github.io.svg?label=website)](https://travis-ci.org/neomutt/neomutt.github.io "Latest Website Test")
 
 ## What is NeoMutt?
 
@@ -17,7 +17,7 @@
 
 Hopefully this will build the community and reduce duplicated effort.
 
-NeoMutt was created when Richard Russon (FlatCap) took all the old Mutt patches,
+NeoMutt was created when Richard Russon (@FlatCap) took all the old Mutt patches,
 sorted through them, fixed them up and documented them.
 
 ## What Features does NeoMutt have?
diff --git a/imap/README b/imap/README
deleted file mode 100644 (file)
index ba81554..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-IMAP in neomutt should be considered beta quality. For the most part it
-works well, but it is still not quite as stable or as full-featured
-as some of the other drivers. I believe it is now acceptable for
-daily use (and that's how I use it now, currently against Cyrus 1.6.24 and
-previously against UW-IMAP 4.7 and 2000).
-
-You may still lose some work if you are suddenly disconnected from your
-server (but your mailboxes should be fine). Currently accessing the same
-IMAP folder with multiple clients is not supported - it may work, but
-no guarantees. There are still several non-critical known bugs, see
-http://bugs.guug.de/ for the current list.
-
-You may also be disappointed in neomutt's handling of very large IMAP mailboxes.
-To build the message index neomutt must fetch a subset of headers from every
-message in the mailbox, which costs time and network traffic linear to the
-number of messages in your mailbox.
-
-Nevertheless in general neomutt is quite a fast and fully-featured IMAP client.
-It tries to be polite to IMAP servers as well, opening few connections and
-avoiding needless polls of the server, unlike certain other popular IMAP
-clients by certain large corporations :)
-
-NeoMutt supports almost all official authentication and security protocols for
-IMAP, including SSL/TLS, native CRAM-MD5 and GSSAPI routines, and a SASL
-plugin which can handle just about everything else.
-
-Please report bugs to neomutt-dev@neomutt.org and/or brendan@kublai.com. Version,
-options, stack-trace and .neomuttdebug files are a plus.
-
-Brendan Cully <brendan@kublai.com>
-20010506