Skip to content

Commit

Permalink
nmh: init at 1.7.1
Browse files Browse the repository at this point in the history
These tools are mainly useful for writing scripts that manipulating
claws-mail's mail folders.  I doubt anybody uses nmh to read their
email anymore, and most other mail clients have migrated to maildir.

Co-authored-by: Anderson Torres <[email protected]>
  • Loading branch information
Adam Joseph and AndersonTorres committed Apr 24, 2023
1 parent ca50dac commit 0227195
Show file tree
Hide file tree
Showing 2 changed files with 87 additions and 0 deletions.
85 changes: 85 additions & 0 deletions pkgs/tools/networking/nmh/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
{ lib
, stdenv
, autoreconfHook
, bison
, coreutils
, cyrus_sasl
, db
, fetchFromSavannah
, flex
, gdbm
, liblockfile
, ncurses
, openssl
, readline
, runtimeShell
}:

stdenv.mkDerivation (finalAttrs: {

pname = "nmh";
version = "1.7.1";
src = fetchFromSavannah {
repo = "nmh";
rev = finalAttrs.version;
hash = "sha256-sBftXl4hWs4bKw5weHkif1KIJBpheU/RCePx0WXuv9o=";
};

postPatch = ''
substituteInPlace config/config.c --replace /bin/cat ${coreutils}/bin/cat
substituteInPlace \
sbr/arglist.c \
uip/mhbuildsbr.c \
uip/whatnowsbr.c \
uip/slocal.c \
--replace '"/bin/sh"' '"${runtimeShell}"'
# the "cleanup" pseudo-test makes diagnosing test failures a pain
ln -s -f ${stdenv}/bin/true test/cleanup
'';

nativeBuildInputs = [
autoreconfHook
flex
bison
];

buildInputs = [
cyrus_sasl
db
gdbm
liblockfile
ncurses
openssl
readline
];

doCheck = true;
enableParallelBuilding = true;

meta = {
description = "New MH Mail Handling System";
homepage = "https://nmh.nongnu.org/";
downloadPage = "http://download.savannah.nongnu.org/releases/nmh/";
changelog = "http://savannah.nongnu.org/news/?group=nmh";
license = [ lib.licenses.bsd3 ];
longDescription = ''
This is the nmh mail user agent (reader/sender), a command-line based
mail reader that is powerful and extensible. nmh is an excellent choice
for people who receive and process a lot of mail.
Unlike most mail user agents, nmh is not a single program, rather it is
a set of programs that are run from the shell. This allows the user to
utilize the full power of the Unix shell in coordination with nmh.
Various front-ends are available, such as mh-e (an emacs mode), xmh, and
exmh (X11 clients).
nmh was originally based on MH version 6.8.3, and is intended to be a
(mostly) compatible drop-in replacement for MH.
These tools are mainly useful for writing scripts that manipulating
claws-mail's mail folders. Most other mail clients have migrated to
maildir.
'';
};

})
2 changes: 2 additions & 0 deletions pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5452,6 +5452,8 @@ with pkgs;

notifymuch = callPackage ../applications/misc/notifymuch { };

nmh = callPackage ../tools/networking/nmh { };

npins = callPackage ../tools/nix/npins { };

nrsc5 = callPackage ../applications/misc/nrsc5 { };
Expand Down

0 comments on commit 0227195

Please sign in to comment.