Giter Club home page Giter Club logo

aur-build's Introduction

This is the NeoMutt Project

Stars Twitter Contributors Release License: GPL v2 Code build Coverity Scan Website build

What is NeoMutt?

  • NeoMutt is a project of projects.
  • A place to gather all the patches against Mutt.
  • A place for all the developers to gather.

Hopefully this will build the community and reduce duplicated effort.

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?

Name Description
Account Command Populate account credentials via an external command
Attach Headers Color Color attachment headers using regex, just like mail bodies
Command-line Crypto (-C) Enable message security in modes that by default don't enable it
Compose to Sender Send new mail to the sender of the current mail
Compressed Folders Read from/write to compressed mailboxes
Conditional Dates Use rules to choose date format
Custom Mailbox Tags Implements Notmuch tags and Imap keywords
Encrypt-to-Self Save a self-encrypted copy of emails
Fmemopen Replace some temporary files with memory buffers
Forgotten Attachment Alert user when (s)he forgets to attach a file to an outgoing email.
Global Hooks Define actions to run globally within NeoMutt
Header Cache Compression Options for compressing the header cache files
Ifdef Conditional config options
Index Color Custom rules for theming the email index
Initials Expando Expando for author's initials
Kyoto Cabinet Kyoto Cabinet backend for the header cache
Limit Current Thread Focus on one Email Thread
LMDB LMDB backend for the header cache
Multiple FCC Save multiple copies of outgoing mail
Nested If Allow complex nested conditions in format strings
New Mail Execute a command upon the receipt of new mail.
NNTP Talk to a Usenet news server
Notmuch Email search engine
Pager Read Delay Delay when the pager marks a previewed message as read
Progress Bar Show a visual progress bar on slow operations
Quasi-Delete Mark emails that should be hidden, but not deleted
Reply With X-Original-To Direct reply to email using X-Original-To header
Sensible Browser Make the file browser behave
Sidebar Panel containing list of Mailboxes
Skip Quoted Leave some context visible
Status Color Custom rules for theming the status bar
TLS-SNI Negotiate with a server for a TLS/SSL certificate
Trash Folder Automatically move deleted emails to a trash bin
Use Threads Improve the experience with viewing threads in the index

Contributed Scripts and Config

Name Description
Header Cache Benchmark Script to test the speed of the header cache
Keybase Keybase Integration
Useful programs List of useful programs interacting with NeoMutt
Vi Keys Easy and clean Vi-keys for NeoMutt
Vim Syntax Vim Syntax File

How to Install NeoMutt?

NeoMutt may be packaged for your distribution, and otherwise it can be built from source. Please refer to the instructions on the distro page.

Where is NeoMutt?

Copyright

NeoMutt is released under the GPL v2+ (GNU General Public License). See LICENSE.md.

The principal authors of NeoMutt are:

aur-build's People

Contributors

flatcap avatar inglor avatar shioyama avatar whynothugo avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aur-build's Issues

GPG Key expired

The GPG key has expired, this produces the following warning:

==> Verifying source file signatures with gpg...
    neomutt-20170714.tar.gz ... Passed (WARNING: the key has expired.)
==> WARNING: Warnings have occurred while verifying the signatures.
    Please make sure you really trust them.
:: Building neomutt package(s)...

It's only a warning, the package still builds correctly.

Build and Install Changes to NeoMutt

Hello @neomutt/arch-users!

Management of Arch/AUR

There are a lot of changes coming to NeoMutt's build and install.
I suggest using this issue as a discussion board and creating pull-requests as needed.
Whether you make changes as they happen in NeoMutt, or wait for us to finish, is up to you.

If you have any questions you'd like me to answer, please @mention me.
Any of the Team's maintainers can authorise adding new members to @neomutt/arch-users.

You can create any branches you need.
You can merge any commits you like.

At release time, @shioyama or @flatcap can push the changes to the AUR repo.

Changes

Pull-request neomutt/neomutt#763 renames a few more files to ensure that Mutt and NeoMutt can be installed in parallel.

Obvious changes:

  • Binary is now called neomutt.
  • Version number doesn't contain Mutt's version
  • Strings presented to the user refer to NeoMutt, not Mutt

The Build

Since its creation NeoMutt has stripped out a lot of compatibility code that Mutt had, for: regexes, iconv, ... We now rely on the host system to provide these.

Also, we have reduced the number of build choices.
Having so many configure options made testing the Mutt build a nightmare.
Any options that didn't require any external dependencies are now built-in by default:

  • compressed
  • imap
  • nntp
  • pop
  • sidebar
  • smtp

I suggest making all the remaining configurable options available to the user.

Testing

@hobarrera has hooked up GitHub to Travis and Docker.

All new commits to GitHub will be tested.
You may wish to tweak the Travis options if you with to reduce the load on Travis.

For more details, see:

Should we fork this repo into NeoMutt?
Should we adopt the repo completely?

The New Build

Future change

The plan is to replace the autoconf build system with autosetup.
autosetup will make it easier for us to maintain the build system.
Also, it's simpler to use and quicker to run.

The configure options have changed and been standardised:

You can experiment with it in the autosetup branch devel/autosetup.

Both systems will be available in parallel for several releases

Splitting the Build

Future change

Currently, there's one repo which contains everything.
The plan is to split into three repos: code, docs, contrib.

This will make more packages to deal with, but will make each one much simpler.

Do you need more repos?
Would extra branches be enough?

Deprecation Warnings

Future change

There are 24 config symbols that are aliases for other config items.
They haven't been documented for many years. They will be removed in a future release of NeoMutt.

For compatibility, NeoMutt loads config from Mutt locations, such as .muttrc, /etc/Muttrc. They will stop being read in a future release of NeoMutt.

These changes will be introduced very gradually, over many releases.
The current idea is:

  1. Advanced notices to users
    No warnings or errors
    New CLI option mutt -DX to list any future problems

  2. Warn user once after startup (suggest mutt -DX)
    Warn user if they source
    Warn user if they manually enter
    Symbols are recognised as deprecated, but still accepted

  3. Warn user of every symbol
    Pause after warnings
    Symbols are recognised as deprecated, but still accepted

  4. Deprecation 1
    Symbols are recognised as deprecated, but not accepted
    Warnings for unrecognised symbols

  5. Deprecation 2
    Symbols are no longer recognised at all

Distro Pages

The distro pages should be a good starting place for new users.
Their instructions should be understandable by a complete novice.
This includes NeoMutt developers who might have a VM with your OS in it.

They should start with:

  • Name and home of distro
  • Contact details for Distro's NeoMutt package

Imagine they've started with a minimal install of the OS, what do they need to do?

  • Support
    Which versions / streams of the OS are supported?

  • Installation
    Simple instructions to install NeoMutt

  • Update
    How to update both NeoMutt and the main system

  • Removal
    How to remove NeoMutt
    How to downgrade to Mutt

  • Building from Source
    How to install the build requirements for NeoMutt
    (the specifics of the build are common to all)
    How to install NeoMutt

  • Debugging
    How to install the debugging requirements for NeoMutt
    (the specifics of debugging NeoMutt are common to all)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.