From mboxrd@z Thu Jan 1 00:00:00 1970 From: ng0 Subject: [PATCH] gnu: Add dbacl. Date: Sun, 16 Oct 2016 23:00:28 +0000 Message-ID: <20161016230028.2666-2-ng0@we.make.ritual.n0.is> References: <20161016230028.2666-1-ng0@we.make.ritual.n0.is> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:50193) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bvuQM-00044g-Qx for guix-devel@gnu.org; Sun, 16 Oct 2016 19:01:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bvuQI-0001TW-Tl for guix-devel@gnu.org; Sun, 16 Oct 2016 19:00:58 -0400 Received: from aibo.runbox.com ([91.220.196.211]:52272) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1bvuQI-0001T8-HL for guix-devel@gnu.org; Sun, 16 Oct 2016 19:00:54 -0400 Received: from [10.9.9.211] (helo=mailfront11.runbox.com) by bars.runbox.com with esmtp (Exim 4.71) (envelope-from ) id 1bvuQG-0007Bl-1O for guix-devel@gnu.org; Mon, 17 Oct 2016 01:00:52 +0200 In-Reply-To: <20161016230028.2666-1-ng0@we.make.ritual.n0.is> 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: guix-devel@gnu.org * gnu/packages/textutils.scm (dbacl): New variable. --- gnu/packages/textutils.scm | 145 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 144 insertions(+), 1 deletion(-) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index a9725b4..6ab7cd4 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016 Jelle Licht ;;; Copyright © 2016 Alex Griffin ;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,7 +34,12 @@ #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages python) - #:use-module (gnu packages zip)) + #:use-module (gnu packages zip) + #:use-module (gnu packages perl) + #:use-module (gnu packages slang) + #:use-module (gnu packages readline) + #:use-module (gnu packages ncurses) + #:use-module (gnu packages pkg-config)) (define-public recode (package @@ -373,3 +379,140 @@ runs Word\".") (description "UTF8-CPP is a C++ library for handling UTF-8 encoded text in a portable way.") (license license:boost1.0))) + +(define-public dbacl + (package + (name "dbacl") + (version "1.14") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.lbreyer.com/gpl/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "0224g6x71hyvy7jikfxmgcwww1r5lvk0jx36cva319cb9nmrbrq7")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (list + (string-append "-I" (assoc-ref %build-inputs "slang") + "/include/slang") + (string-append "-I" (assoc-ref %build-inputs "ncurses") + "/include/ncurses")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'delete-sample6-and-japanese + (lambda _ + (substitute* "doc/Makefile.am" + (("sample6.txt") "") + (("japanese.txt") "")) + (delete-file "doc/sample6.txt") + (delete-file "doc/japanese.txt") + (substitute* (list "src/tests/Makefile.am" + "src/tests/Makefile.in") + (("dbacl-jap.shin") "") + (("dbacl-jap.sh") "")))) + (add-after 'unpack 'delete-test + ;; See comments about the license. + (lambda _ + (delete-file "src/tests/dbacl-jap.shin"))) + (add-after 'delete-sample6-and-japanese 'autoreconf + (lambda _ + (zero? (system* "autoreconf" "-vif")))) + (add-after 'unpack 'fix-test-files + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (substitute* '("src/tests/html-links.shin" + "src/tests/email-xheaders.shin" + "src/tests/email-forms.shin" + "src/tests/dbacl-O.shin" + "src/tests/mailinspect-V.shin" + "src/tests/pcheck-821g.shin" + "src/tests/email-badmime2.shin" + "src/tests/email-style.shin" + "src/tests/email-l.shin" + "src/tests/reservoir.shin" + "src/tests/dbacl-g.shin" + "src/tests/html.shin" + "src/tests/pcheck-821b.shin" + "src/tests/dbacl-alpha.shin" + "src/tests/dbacl-graph.shin" + "src/tests/email-uu.shin" + "src/tests/email-2047.shin" + "src/tests/dbacl-z.shin" + "src/tests/dbacl-adp.shin" + "src/tests/pcheck-2822g.shin" + "src/tests/email-mbox.shin" + "src/tests/dbacl-alnum.shin" + "src/tests/xml.shin" + "src/tests/pcheck-2821b.shin" + "src/tests/model-sum1.shin" + "src/tests/dbacl-jap.shin" + "src/tests/email-maildir.shin" + "src/tests/html-alt.shin" + "src/tests/dbacl-cef2.shin" + "src/tests/email-pgp.shin" + "src/tests/dbacl-w3.shin" + "src/tests/model-sym3.shin" + "src/tests/lscheck.shin" + "src/tests/class-unknown1.shin" + "src/tests/email-uri.shin" + "src/tests/class-unknown2.shin" + "src/tests/score-1.shin" + "src/tests/pcheck-822b.shin" + "src/tests/shannon-2.shin" + "src/tests/dbacl-cef.shin" + "src/tests/pcheck-2822b.shin" + "src/tests/dbacl-zo.shin" + "src/tests/email-badmime1.shin" + "src/tests/shannon.shin" + "src/tests/bayesol-V.shin" + "src/tests/dbacl-V.shin" + "src/tests/dbacl-o.shin" + "src/tests/model-sym2.shin" + "src/tests/icheck.shin" + "src/tests/pcheck-822g.shin" + "src/tests/dbacl-j.shin" + "src/tests/model-sym1.shin" + "src/tests/email-theaders.shin" + "src/tests/pcheck-2821g.shin" + "src/tests/score-2.shin" + "src/tests/email-scripts.shin" + "src/tests/dbacl-a.shin" + "src/tests/shannon-1.shin" + "src/tests/dbacl-l.shin" + "src/tests/email-headers.shin") + (("PATH=/bin:/usr/bin") + "#PATH=/bin:/usr/bin") + (("diff") (string-append (which "diff"))) + (("tr") (string-append (which "tr")))))))))) + (inputs + `(("perl" ,perl) + ("slang" ,slang) + ("ncurses" ,ncurses) + ("readline" ,readline))) + (native-inputs + `(("libtool" ,libtool) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config))) + (home-page "http://www.lbreyer.com/dbacl.html") + (synopsis "Bayesian text and email classifier") + (description + "dbacl is a fast Bayesian text and email classifier. It builds a variety +of language models using maximum entropy (minimum divergence) principles, and +these can then be used to categorize input data automatically among multiple +categories.") + ;; The software is licensed as GPLv3 or later, but + ;; includes various sample texts in the doc dir: + ;; - sample1.txt, sample3 and sampe5.txt are in the public domain, + ;; by Mark Twain. + ;; - sample2.txt, sample4.txt are in the public domain, by Aristotle. + ;; - sample6.txt is a forwarded email, copyright unknown. + ;; Guix does exclude sample6.txt. + ;; - japanese.txt is a Japanese unoffical translation of the + ;; GNU General Public License, (c) by the Free Software Foundation. + ;; Guix excludes this file. + (license '(license:gpl-3 license:public-domain)))) -- 2.10.1