unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Arun Isaac <arunisaac@systemreboot.net>
To: 47604@debbugs.gnu.org
Cc: Arun Isaac <arunisaac@systemreboot.net>
Subject: [bug#47604] [PATCH] gnu: Add crm114.
Date: Tue,  6 Apr 2021 00:07:40 +0530	[thread overview]
Message-ID: <20210405183740.9181-1-arunisaac@systemreboot.net> (raw)

* gnu/packages/mail.scm (crm114): New variable.
---
 gnu/packages/mail.scm | 82 ++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 81 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 489053544b..dfc45983df 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -17,7 +17,7 @@
 ;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
 ;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
 ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
-;;; Copyright © 2016, 2017, 2018, 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2016, 2018 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
@@ -129,6 +129,7 @@
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages ragel)
+  #:use-module (gnu packages regex)
   #:use-module (gnu packages rdf)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages ruby)
@@ -4296,3 +4297,82 @@ black lists.  Each message is analysed by Rspamd and given a spam
 score.")
     (home-page "https://www.rspamd.com/")
     (license license:asl2.0)))
+
+(define-public crm114
+  (package
+    (name "crm114")
+    (version "20100106")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://crm114.sourceforge.net/tarballs/crm114-"
+                           version "-BlameMichelson.src.tar.gz"))
+       (sha256
+        (base32
+         "0awcjc5j2mclkkpbjyijj9mv8xjz3haljvaj0fyc4fm4xir68qpv"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:modules ((guix build gnu-build-system)
+                  ((guix build emacs-build-system) #:prefix emacs:)
+                  (guix build utils)
+                  (ice-9 string-fun))
+       #:imported-modules (,@%gnu-build-system-modules
+                           (guix build emacs-build-system)
+                           (guix build emacs-utils))
+       #:make-flags (list (string-append "prefix=" %output)
+                          "LDFLAGS=")   ; disable static linking
+       ;; Test suite is not fully automated. It requires a human to read the
+       ;; results and determine if the tests have passed.
+       #:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (add-before 'build 'fix-build
+           (lambda _
+             ;; Inline functions can only be used from the same compilation
+             ;; unit. This causes the build to fail.
+             (substitute* "crm_svm_matrix.c"
+               (("^inline ") ""))))
+         (add-before 'install 'pre-install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               ;; Install maillib.crm library.
+               (install-file "maillib.crm" (string-append out "/share/crm"))
+               ;; Set absolute store paths.
+               (substitute* "mailreaver.crm"
+                 (("insert maillib.crm")
+                  (string-append "insert " out "/share/crm/maillib.crm"))
+                 (("\\\\/bin\\\\/ls")
+                  (string-replace-substring (which "ls") "/" "\\/"))
+                 ((":\\*:trainer_invoke_command:")
+                  (string-append out "/bin/mailtrainer.crm")))
+               ;; Install mail related crm scripts.
+               (for-each (lambda (file)
+                           (install-file file (string-append out "/bin")))
+                         (list "mailfilter.crm" "mailreaver.crm" "mailtrainer.crm"))
+               ;; Create emacs site-lisp directory so that the install phase
+               ;; can install crm-mode.
+               (mkdir-p (string-append out "/share/emacs/site-lisp")))))
+         ;; Run phases from the emacs build system.
+         (add-after 'install 'make-autoloads
+           (assoc-ref emacs:%standard-phases 'make-autoloads))
+         (add-after 'make-autoloads 'enable-autoloads-compilation
+           (assoc-ref emacs:%standard-phases 'enable-autoloads-compilation))
+         (add-after 'enable-autoloads-compilation 'emacs-build
+           (assoc-ref emacs:%standard-phases 'build))
+         (add-after 'emacs-build 'validate-compiled-autoloads
+           (assoc-ref emacs:%standard-phases 'validate-compiled-autoloads)))))
+    (inputs
+     `(("tre" ,tre)))
+    (native-inputs
+     `(("emacs" ,emacs-minimal)))
+    (home-page "http://crm114.sourceforge.net/")
+    (synopsis "Controllable regex mutilator")
+    (description "CRM114 is a system to examine incoming e-mail, system log
+streams, data files or other data streams, and to sort, filter, or alter the
+incoming files or data streams according to the user's wildest desires.
+Criteria for categorization of data can be via a host of methods, including
+regexes, approximate regexes, a Hidden Markov Model, Orthogonal Sparse
+Bigrams, WINNOW, Correllation, KNN/Hyperspace, or Bit Entropy (or by other
+means--it's all programmable).")
+    (license license:gpl3)))
-- 
2.31.0





             reply	other threads:[~2021-04-05 18:40 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-05 18:37 Arun Isaac [this message]
     [not found] ` <handler.47604.B.16176478856474.ack@debbugs.gnu.org>
2021-04-21 18:51   ` bug#47604: Acknowledgement ([PATCH] gnu: Add crm114.) Arun Isaac

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210405183740.9181-1-arunisaac@systemreboot.net \
    --to=arunisaac@systemreboot.net \
    --cc=47604@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).