From mboxrd@z Thu Jan 1 00:00:00 1970 From: ng0 Subject: Re: [PATCH]: opensmtpd, opensmtpd-extras, libasr. Date: Fri, 09 Sep 2016 21:43:29 +0000 Message-ID: <87mvjg3g1q.fsf@we.make.ritual.n0.is> References: <87lgz2tzfq.fsf@we.make.ritual.n0.is> <20160908232102.4faeca44@openmailbox.org> Mime-Version: 1.0 Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:39882) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1biTaV-0003Tx-72 for guix-devel@gnu.org; Fri, 09 Sep 2016 17:43:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1biTaR-0003Jl-3A for guix-devel@gnu.org; Fri, 09 Sep 2016 17:43:55 -0400 Received: from aibo.runbox.com ([91.220.196.211]:35124) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1biTaQ-0003JZ-NC for guix-devel@gnu.org; Fri, 09 Sep 2016 17:43:51 -0400 In-Reply-To: <20160908232102.4faeca44@openmailbox.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Eric Bavier Cc: guix-devel@gnu.org --==-=-= Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Hi, Eric Bavier writes: > On Thu, 08 Sep 2016 11:15:37 +0000 > ng0 wrote: > >> From 43b89c0b548e1bca2ff59271ac15b1fbe6e7ca6e Mon Sep 17 00:00:00 2001 >> From: ng0 >> Date: Tue, 6 Sep 2016 18:23:15 +0000 >> Subject: [PATCH 2/3] gnu: Add opensmtpd. >>=20 >> * gnu/packages/mail.scm (opensmtpd): New variable. >> --- > [...] >> + (synopsis "Lightweight but fully featured SMTP daemon from OpenBSD") > > This sounds too much like marketing. Considering the "Synopses and > Descriptions" section in the manual, perhaps "Lightweight SMTP daemon". > > Considering Efraim and Marius's comments, LGTM. > > `~Eric > I commented mariadb + postgresql for now. I want some feedback first if you think we should provide it this way, or if we should add both to different outputs. It would not make much difference in the size of the dependency graph unless one creates a opensmtpd-extras-postgresql package for example which just builds the postgresql related things. What do you think? --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline; filename=0001-gnu-Add-libasr.patch Content-Transfer-Encoding: quoted-printable From=209f6f6761751ca5d057b91167b302767aba4638be Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 6 Sep 2016 17:10:18 +0000 Subject: [PATCH 1/3] gnu: Add libasr. * gnu/packages/dns.scm (libasr): New variable. =2D-- gnu/packages/dns.scm | 34 ++++++++++++++++++++++++++++++++++ gnu/packages/web.scm | 1 + 2 files changed, 35 insertions(+) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 819343a..35d7052 100644 =2D-- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -3,6 +3,7 @@ ;;; Copyright =C2=A9 2016 Mark H Weaver ;;; Copyright =C2=A9 2016 Ricardo Wurmus ;;; Copyright =C2=A9 2016 Efraim Flashner +;;; Copyright =C2=A9 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,9 +21,12 @@ ;;; along with GNU Guix. If not, see . =20 (define-module (gnu packages dns) + #:use-module (gnu packages autotools) #:use-module (gnu packages databases) + #:use-module (gnu packages groff) #:use-module (gnu packages linux) #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) #:use-module (gnu packages tls) #:use-module (gnu packages xml) #:use-module ((guix licenses) #:prefix license:) @@ -116,3 +120,33 @@ and BOOTP/TFTP for network booting of diskless machine= s.") "These tools, included with ISC BIND, are useful for analysis of DNS issues or verification of configuration.") (license (list license:isc)))) + +(define-public libasr + (package + (name "libasr") + (version "201602131606") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.opensmtpd.org/archives/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "18kdmbjsxrfai16d66qslp48b1zf7gr8him2jj5dcqgbsl44ls75")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config) + ("groff" ,groff))) + (home-page "https://www.opensmtpd.org") + (synopsis "Asynchronous resolver library by the OpenBSD project") + (description + "libasr is a free, simple and portable asynchronous resolver library. +It allows to run DNS queries and perform hostname resolutions in a fully +asynchronous fashion.") + (license (list license:isc + license:bsd-2 ; last part of getrrsetbyname_async.c + license:bsd-3 + (license:non-copyleft "file://LICENSE") ; includes.h + license:openssl)))) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 70bfd9e..ed0a453 100644 =2D-- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -61,6 +61,7 @@ #:use-module (gnu packages gnome) #:use-module (gnu packages gperf) #:use-module (gnu packages gtk) + #:use-module (gnu packages groff) #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages lua) =2D-=20 2.10.0 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0002-gnu-Add-opensmtpd.patch Content-Transfer-Encoding: quoted-printable From=207f5e30bc0f0ae1689db1876edac6bbffe39a2e88 Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 6 Sep 2016 18:23:15 +0000 Subject: [PATCH 2/3] gnu: Add opensmtpd. * gnu/packages/mail.scm (opensmtpd): New variable. =2D-- gnu/packages/mail.scm | 55 +++++++++++++++++++++++++++++++++++++++++++++++= +++- 1 file changed, 54 insertions(+), 1 deletion(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index c2fc1a9..e80a5c1 100644 =2D-- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -45,6 +45,7 @@ #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages databases) #:use-module (gnu packages dejagnu) + #:use-module (gnu packages dns) #:use-module (gnu packages emacs) #:use-module (gnu packages enchant) #:use-module (gnu packages ghostscript) @@ -56,6 +57,7 @@ #:use-module (gnu packages guile) #:use-module (gnu packages flex) #:use-module (gnu packages libcanberra) + #:use-module (gnu packages libevent) #:use-module (gnu packages libidn) #:use-module (gnu packages linux) #:use-module (gnu packages m4) @@ -80,7 +82,8 @@ #:use-module ((guix licenses) #:select (gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ lgpl3+ non-copyleft (expat . license:expat) bsd-3 =2D public-domain)) + public-domain bsd-4 isc (openssl . license:open= ssl) + bsd-2)) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) @@ -1388,3 +1391,53 @@ to mbox files, maildir folders or a Mail Delivery Ag= ent (MDA), TLS/SSL, several authentication methods, Internationalized Domain Names (IDN) and SOCKS proxies.") (license gpl3+))) + +(define-public opensmtpd + (package + (name "opensmtpd") + (version "5.9.2p1") + (source (origin + (method url-fetch) + (uri (string-append "https://www.opensmtpd.org/archives/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "07d7f1m5sxyz6mkk228rcm7fsf7350994ayvmhgph333q5rz48im")))) + (build-system gnu-build-system) + (inputs + `(("bdb" ,bdb) + ("libressl" ,libressl) + ("libevent" ,libevent) + ("libasr" ,libasr) + ("linux-pam" ,linux-pam) + ("zlib" ,zlib))) + (native-inputs + `(("bison" ,bison))) + (arguments + `(#:configure-flags (list "--with-table-db" "--localstatedir=3D/var" + "--with-user-smtpd=3Dsmtpd" "--with-user-qu= eue=3Dsmtpq" + "--with-group-queue=3Dsmtpq") + #:phases + (modify-phases %standard-phases + ;; OpenSMTPD provides a single utility smtpctl to control the dae= mon and + ;; the local submission subsystem. To accomodate systems that re= quire + ;; historical interfaces such as sendmail, newaliases or makemap,= the + ;; smtpctl utility can operate in compatibility mode if called wi= th the + ;; historical name. + (add-after 'install 'install-compabilitymode + (lambda _ + (let* ((out (assoc-ref %outputs "out")) + (sbin (string-append out "/sbin/"))) + (for-each (lambda (cmd) + (symlink "smtpctl" (string-append sbin cmd))) + '("makemap" "sendmail" "send-mail" + "newaliases" "mailq"))) + #t))))) + (synopsis "Lightweight SMTP daemon") + (description + "OpenSMTPD is an implementation of the server-side SMTP protocol, with +some additional standard extensions. It allows ordinary machines to excha= nge +e-mails with other systems speaking the SMTP protocol.") + (home-page "https://www.opensmtpd.org") + (license (list bsd-2 bsd-3 bsd-4 (non-copyleft "file://COPYING") + public-domain isc openssl)))) =2D-=20 2.10.0 --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0003-gnu-Add-opensmtpd-extras.patch Content-Transfer-Encoding: quoted-printable From=2087cf35ef0e5e78e9cdf05ab025d7151dd92e1902 Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 6 Sep 2016 20:12:00 +0000 Subject: [PATCH 3/3] gnu: Add opensmtpd-extras. * gnu/packages/mail.scm (opensmtpd-extras): New variable. =2D-- gnu/packages/mail.scm | 72 +++++++++++++++++++++++++++++++++++++++++++++++= ++++ 1 file changed, 72 insertions(+) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index e80a5c1..fd03d1e 100644 =2D-- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -52,6 +52,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) + #:use-module (gnu packages groff) #:use-module (gnu packages gsasl) #:use-module (gnu packages gtk) #:use-module (gnu packages guile) @@ -60,6 +61,7 @@ #:use-module (gnu packages libevent) #:use-module (gnu packages libidn) #:use-module (gnu packages linux) + #:use-module (gnu packages lua) #:use-module (gnu packages m4) #:use-module (gnu packages ncurses) #:use-module (gnu packages pcre) @@ -1441,3 +1443,73 @@ e-mails with other systems speaking the SMTP protoco= l.") (home-page "https://www.opensmtpd.org") (license (list bsd-2 bsd-3 bsd-4 (non-copyleft "file://COPYING") public-domain isc openssl)))) + +(define-public opensmtpd-extras + (package + (name "opensmtpd-extras") + (version "5.7.1") + (source (origin + (method url-fetch) + (uri (string-append "https://www.opensmtpd.org/archives/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1kld4hxgz792s0cb2gl7m2n618ikzqkj88w5dhaxdrxg4x2c4vdm")))) + (build-system gnu-build-system) + (inputs + `(("libressl" ,libressl) + ("libevent" ,libevent) + ("libasr" ,libasr) + ("python-2" ,python-2) + ("opensmtpd" ,opensmtpd) + ("perl" ,perl) + ("lua" ,lua) + ;; ("postgresql" ,postgresql) ; split this + ;; ("mariadb" ,mariadb) ; split this + ("sqlite" ,sqlite) + ("linux-pam" ,linux-pam))) + (native-inputs + `(("bison" ,bison) + ("pkg-config" ,pkg-config) + ("groff" ,groff) + ("automake" ,automake) + ("autoconf" ,autoconf))) + (arguments + `(;; We have to configure it like this because the default checks for= for example + ;; python in /usr/local/bin, /usr/bin and fails otherwise. + #:configure-flags (list + "--with-filter-clamav" "--with-filter-dkim-si= gner" + "--with-filter-dnsbl" "--with-filter-lua" + "--with-filter-monkey" "--with-filter-pause" + "--with-filter-perl" "--with-filter-python" + "--with-filter-regex" "--with-filter-spamass= assin" + "--with-filter-stub" "--with-filter-trace" + "--with-filter-void" + + "--with-queue-null" "--with-queue-python" + "--with-queue-ram" "--with-queue-stub" + + "--with-scheduler-python" "--with-scheduler-ram" + "--with-scheduler-stub" + + "--with-table-ldap" ; "--with-table-mysql" + "--with-table-passwd" ; "--with-table-postgr= es" + "--with-table-python" "--with-table-socketma= p" + "--with-table-sqlite" "--with-table-stub" + ;;"--with-table-redis" ; TODO: package hiredis + + "--with-user=3Dsmtpd" "--with-privsep-user= =3Dsmtpd" + "--localstatedir=3D/var" "--sysconfdir=3D/etc" + "--with-lua-type=3Dlua" ; can use lua or lua= jit + + (string-append "--with-python=3D" + (assoc-ref %build-inputs "python-= 2")) + (string-append "--with-lua=3D" + (assoc-ref %build-inputs "lua")))= )) + (license (list bsd-2 bsd-3 bsd-4 non-copyleft + public-domain isc openssl)) + (synopsis "Extra tables, filters, and various other addons for OpenSMT= PD") + (description + "This package provides extra tables, filters, and various other addons +for OpenSMTPD to extend its functionality.") + (home-page "https://www.opensmtpd.org"))) =2D-=20 2.10.0 --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable =2D-=20 ng0 For non-prism friendly talk find me on http://www.psyced.org --=-=-=-- --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIcBAEBCgAGBQJX0y0CAAoJEAKilhUMIBgjBAcQAJQCMy072+AV+soerm35YlOk W+fMZJyE7O0cd5KpFmtAM0Gk7nmb4UNUBja35mvw2NcM0c9+/YbbWQZOQLCqY9zK 2qqMIZQjs57t4MMTl/iYeDAp9rpLBJM0vlLf+pSXgnyg9POn4pEPMUrYLNOSOahG mBSrWUzcTamA4BioyL/13SglLbJrPiLUNpfmEUjkpHuHdQfMiSQisNAY59f71tZe 3QpXne7E4O75kIw3M9MLp8hsVxgDh2k2KJtmuYgMhTgdP+egRIH3ZB9CSwxsjsZG JsRnz9xf/8IbDWk9hGXN22A22I9+IbVoAMp8o44epFUW2XZAzj5Md0WonCPyqWrz p6VQWmGIaQECOx/27943LVFRcFiJRm9WrT0aBz+Y4bCbBm+ZRI9g9SBv3uhw13Ao eiuZQIxZ9SBleVYyWc1erNuqvAA/PJMWX3gL4j7Wx8W/a8a4B91zm/DXxxZyz1U3 FvA6UXMtTBX0rh/vPwS0wIpM6DORLHG5gtM9XbP7yIkwVQsZIQKiKyAxDXJrQcCu 4Q7f7xKTeU8fyU6Nw3O/PqLj3RYTUaCZyrSVh9/IbwKa5oI8F4phJQoB3UreoCzY TcLvX4SAcBBalkGpSj1Cn9N3fCN7l1dv9MykZAeSVoI1bL27JXM3eRw1gfW2AI/k XGqO5qlemn0t09SZyzB8 =X+NM -----END PGP SIGNATURE----- --==-=-=--