From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:44766) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hCZYA-00023j-Da for guix-patches@gnu.org; Fri, 05 Apr 2019 20:51:15 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hCZY4-0005ku-Je for guix-patches@gnu.org; Fri, 05 Apr 2019 20:51:12 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:32871) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hCZY1-0005hO-R4 for guix-patches@gnu.org; Fri, 05 Apr 2019 20:51:06 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hCZY1-0000cv-PE for guix-patches@gnu.org; Fri, 05 Apr 2019 20:51:05 -0400 Subject: [bug#35142] [PATCH 8/8] gnu: Add public-inbox. Resent-Message-ID: From: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Sat, 6 Apr 2019 08:50:05 +0800 Message-Id: <20190406005005.3893-8-iyzsong@member.fsf.org> In-Reply-To: <20190406005005.3893-1-iyzsong@member.fsf.org> References: <20190406005005.3893-1-iyzsong@member.fsf.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 35142@debbugs.gnu.org Cc: =?UTF-8?Q?=E5=AE=8B=E6=96=87=E6=AD=A6?= * gnu/packages/mail.scm (public-inbox): New variable. --- gnu/packages/mail.scm | 77 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 97cb78eaea..f1390fd4fb 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -95,6 +95,7 @@ #:use-module (gnu packages onc-rpc) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) + #:use-module (gnu packages perl-web) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-web) @@ -110,6 +111,7 @@ #:use-module (gnu packages texinfo) #:use-module (gnu packages time) #:use-module (gnu packages tls) + #:use-module (gnu packages version-control) #:use-module (gnu packages w3m) #:use-module (gnu packages web) #:use-module (gnu packages webkit) @@ -2888,3 +2890,78 @@ replacement for the @code{urlview} program.") (description "This package provides a TNEF stream reader library and related tools to process winmail.dat files.") (license gpl2+))) + +(define-public public-inbox + (let ((commit "3cf66514aea9e958999973b9f104473b6d800fbe") + (revision "0")) + (package + (name "public-inbox") + (version (git-version "1.0.0" revision commit)) + (source + (origin (method git-fetch) + (uri (git-reference + (url "https://public-inbox.org") + (commit commit))) + (sha256 + (base32 + "1sxycwlm2n6p544gn9f0vf3xs6gz8vdswdhs2ha6fka8mgabvmdh")) + (file-name (git-file-name name version)))) + (build-system perl-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'configure 'qualify-paths + (lambda _ + ;; Use absolute paths for 'git' and 'xapian-compact'. + (let ((git (which "git")) + (xapian-compact (which "xapian-compact"))) + (substitute* "script/public-inbox-compact" + (("xapian-compact") xapian-compact)) + (substitute* "script/public-inbox-init" + (("git init") (string-append git " init")) + (("qw/git config/") (string-append "qw(" git " config)")))) + #t)) + (add-before 'check 'pre-check + (lambda _ + (substitute* "t/spawn.t" + (("\\['env'\\]") (string-append "['" (which "env") "']"))) + #t)) + (add-after 'install 'wrap-programs + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (for-each + (lambda (prog) + (wrap-program prog + `("PERL5LIB" ":" prefix + (,(string-append out "/lib/perl5/site_perl") + ,(getenv "PERL5LIB"))))) + (find-files (string-append out "/bin")))) + #t))))) + (native-inputs + `(("git" ,git) + ("xapian" ,xapian))) + (inputs + `(("perl-danga-socket" ,perl-danga-socket) + ("perl-dbd-sqlite" ,perl-dbd-sqlite) + ("perl-dbi" ,perl-dbi) + ("perl-email-address-xs" ,perl-email-address-xs) + ("perl-email-mime-contenttype" ,perl-email-mime-contenttype) + ("perl-email-mime" ,perl-email-mime) + ("perl-email-simple" ,perl-email-simple) + ("perl-filesys-notify-simple" ,perl-filesys-notify-simple) + ("perl-plack-middleware-deflater" ,perl-plack-middleware-deflater) + ("perl-plack-middleware-reverseproxy" ,perl-plack-middleware-reverseproxy) + ("perl-plack" ,perl-plack) + ("perl-search-xapian" ,perl-search-xapian) + ("perl-timedate" ,perl-timedate) + ("perl-uri-escape" ,perl-uri-escape) + ;; For testing. + ("perl-ipc-run" ,perl-ipc-run) + ("perl-xml-feed" ,perl-xml-feed))) + (home-page "https://public-inbox.org/README.html") + (synopsis "Archive mailing lists in git repositories") + (description + "public-inbox implements the sharing of an email inbox via git to +complement or replace traditional mailing lists. Readers may read via NNTP, +Atom feeds or HTML archives.") + (license agpl3+)))) -- 2.19.2