[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#33020] [PATCH] gnu: Add nullmailer.
From: |
Tobias Geerinckx-Rice |
Subject: |
[bug#33020] [PATCH] gnu: Add nullmailer. |
Date: |
Fri, 12 Oct 2018 01:06:32 +0200 |
* gnu/packages/mail.scm (nullmailer): New public variable.
---
gnu/packages/mail.scm | 82 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 82 insertions(+)
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 7348719ed..e7f5584b0 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -45,6 +45,7 @@
(define-module (gnu packages mail)
#:use-module (gnu packages)
+ #:use-module (gnu packages admin)
#:use-module (gnu packages aspell)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
@@ -225,6 +226,87 @@ software.")
;; Libraries are under LGPLv3+, and programs under GPLv3+.
(list gpl3+ lgpl3+))))
+(define-public nullmailer
+ (package
+ (name "nullmailer")
+ (version "2.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (list
+ (string-append "https://untroubled.org/nullmailer/"
+ "nullmailer-" version ".tar.gz")
+ ;; Previous releases are moved to this subdirectory.
+ (string-append "https://untroubled.org/nullmailer/archive/"
+ "nullmailer-" version ".tar.gz")))
+ (sha256
+ (base32 "0gykh0qc86rk0knfvp8ndqkryal3pvqdfdya94wvb6n1cc8p3ild"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags
+ (list "--enable-tls"
+ "--localstatedir=/var"
+ "--sysconfdir=/etc")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'patch-test-FHS-file-names
+ (lambda _
+ (with-directory-excursion "test"
+ (substitute* (list "functions.in"
+ "tests/send")
+ ;; Fix some shebangs later generated on the fly.
+ (("/bin/sh") (which "bash"))))
+ #t))
+ (add-before 'check 'pass-PATH-to-tests
+ ;; 'runtest' launches each test through 'env -', clearing $PATH. The
+ ;; tests then source 'functions', which first demands a working
$PATH,
+ ;; and later clobbers it again. Pass our $PATH to the test
environment
+ ;; and don't touch it after that.
+ (lambda _
+ (with-directory-excursion "test"
+ (substitute* "runtests"
+ (("env - bash")
+ (string-append "env - PATH=\"" (getenv "PATH") "\" bash")))
+ (substitute* "functions.in"
+ (("export PATH=.*") "")))
+ #t))
+ (add-before 'check 'delete-failing-tests
+ (lambda _
+ (with-directory-excursion "test/tests"
+ (for-each delete-file
+ (list
+ ;; XXX 'nullmailer-inject: nullmailer-queue failed:
15'
+ "inject/queue"
+ ;; XXX This equires the not-yet-packaged tcpserver.
+ "protocols")))
+ #t))
+ (add-before 'install 'skip-install-data-local
+ ;; Don't attempt to install run-time files outside of the store.
+ (lambda _
+ (substitute* "Makefile"
+ ((" install-data-local") ""))
+ #t)))))
+ (native-inputs
+ ;; For tests.
+ `(("daemontools" ,daemontools))) ; for svc
+ (inputs
+ `(("gnutls" ,gnutls)))
+ (home-page "https://untroubled.org/nullmailer/")
+ (synopsis "Simple relay-only mail transport agent")
+ (description
+ "Nullmailer is a simple replacement Mail Transfer Agent (@dfn{MTA}) for
+hosts that receive no local mail and only relay mail to a fixed set of smart
+relays. It's useful for systems such as Web servers that must be able to send
+email notifications, without having to run a full-blown MTA such as sendmail
+or qmail.
+
+Nullmailer is designed to be simple to configure, easy to extend, and secure.
+It requires little ongoing administration. The included @command{sendmail}
+emulator front-end should allow most (if not all) sendmail-compatible programs
+to run without any changes.")
+ (license (list lgpl2.1+ ; lib/cli++/ (but some files lack headers)
+ gpl2+)))) ; everything else
+
(define-public fetchmail
(package
(name "fetchmail")
--
2.18.0
- [bug#33020] [PATCH] gnu: Add nullmailer.,
Tobias Geerinckx-Rice <=