This repo is a collection of scripts and notes that help to automate the day-to-day running of the NeoMutt Project.
Two scripts to automate the building of NeoMutt.
| Script | Description |
|---|---|
| build.sh | Build NeoMutt with your favourite options |
| test-configs.sh | Build NeoMutt with a wide set of configure options |
It's important for new features to be well-documented. To help new users, each NeoMutt feature comes with a Chapter in the Manual, a sample muttrc and for Vim users a vim syntax file for config-file highlighting.
When making a release, these templates save time preparing the accompanying notes.
| File | Description |
|---|---|
| changelog | ChangeLog |
| dev-ml | NeoMutt Devel Mailing List |
| emojis | Emojis for website/GitHub |
| github | GitHub Release Announcement |
| rpm | RPM Spec changelog |
| user-ml | NeoMutt Users Mailing List |
| website | Website News Article |
Make manual work semi-automatic.
| File | Description |
|---|---|
| get_summary.sh | Print summary for new release message to maillists, updates list of contributors |
| generate.sh | Regenerates mailmaps and credits |
-
get_summary.sh </path/to/neomutt/repo> [<since ref>] [<to ref>]- Execute after merging branchces into master before neomutt release,
- Prints summary of contributions to repository since last release
(or
<since ref>if specified) to HEAD (or<to ref>if specified). - Adds new contributors to neomutt.txt, so they will be present in
mailmap files (mailmap files are created by
generate.sh) - It's a good idea to revisit neomutt.txt diff after running the script.
-
generate.sh- regenerates mailmap, mailmap-name-nick, mailmap-nick and credits
After a release, NeoMutt provides automatic updates for several distros. There's an update script and a git repo for each.
| Distro | Script | GitHub Repo |
|---|---|---|
| Arch (AUR) | aur.sh | https://github.com/neomutt/aur-build |
| Fedora (COPR) | copr.sh | https://github.com/neomutt/copr-neomutt |
| Gentoo | gentoo.sh | https://github.com/neomutt/gentoo-neomutt |
| Homebrew (MacOS) | homebrew.sh | https://github.com/neomutt/homebrew-neomutt |
Various useful scripts. Warning: Don't use unless you know what you're doing.
| Script | Description |
|---|---|
| update-from-hg.sh | Pull upstream commits into our NeoMutt repo |
| webhook-bridge.py | Notify poeditor.com of changes to translations |
A list of the minimum requirements to build NeoMutt.
| File | Headers | Standard | Permitted |
|---|---|---|---|
| c99.txt | c99h.txt | C99 | Yes |
| 2001.txt | 2001h.txt | POSIX:2001 | Yes |
| 2008.txt | 2008h.txt | POSIX:2008 | No |
These are copies of our Travis control files.
| File | Branch |
|---|---|
| aur.yml | https://github.com/neomutt/aur-buildll |
| macports.yml | https://github.com/neomutt/neomutt/tree/distro/macports |
| master.yml | https://github.com/neomutt/neomutt/tree/master |
This script minimises a NeoMutt git repo. For those times that you just want to look at the code.
| File | Description |
|---|---|
| make-min-build.sh | Script to remove non-code files |
| min-config.h | Minimal config.h |
| min-gitignore | Minimal .gitignore |
| min-Makefile | Minimal Makefile |
These files configure Universal Ctags to parse some of NeoMutt's pre-processor macros.
The ctags directory can be symlinked from your home dir as .ctags.d
| File | Description |
|---|---|
| queue.ctags | Expand macros to reveal the struct within |
A couple of tools for processing DocBook into HTML.
| File | Description |
|---|---|
| fix-feature-since.sh | Restore the 'since' date |
| transform-links.vim | Fix the html links |
| fix-links.sed | Fix some internal links |