diff mbox series

[bug#43974] gnu: Add rspamd.

Message ID 20201013105723.14495-1-brown121407@posteo.ro
State Accepted
Headers show
Series [bug#43974] gnu: Add rspamd. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job

Commit Message

Alexandru-Sergiu Marton Oct. 13, 2020, 10:57 a.m. UTC
* gnu/packages/mail.scm (rspamd): New variable.
---
This patch adds a recipe for the "rspamd" spam filter. In an ideal world we
would have a service definition for this as well, but I don't know how to
write those yet, so I'd appreciate any help from the community. Rspamd already
has service definitions for systemd, we could try to translate those to the
Guix APIs.

 gnu/packages/mail.scm | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

Comments

Marius Bakke Oct. 18, 2020, 9:57 p.m. UTC | #1
Alexandru-Sergiu Marton <brown121407@posteo.ro> writes:

> * gnu/packages/mail.scm (rspamd): New variable.

This patch did not apply for me, can you rebase it on current 'master'?

> This patch adds a recipe for the "rspamd" spam filter. In an ideal world we
> would have a service definition for this as well, but I don't know how to
> write those yet, so I'd appreciate any help from the community. Rspamd already
> has service definitions for systemd, we could try to translate those to the
> Guix APIs.

Cool!  Feel free to drop by the #guix IRC channel for live help with
writing service definitions.  It may look intimidating with types and
all, but is actually not that difficult.  :-)

[...]

> +    (synopsis "Fast, free and open-source spam filtering system")

s/free and open-source// (everything is free in Guix by definition)

Can you send an updated patch?  Thanks!
diff mbox series

Patch

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 2bab7b4645..337ef97a7f 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -35,6 +35,7 @@ 
 ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
 ;;; Copyright © 2020 Alexey Abramov <levenson@mmer.org>
+;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -75,6 +76,7 @@ 
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages emacs)
   #:use-module (gnu packages enchant)
+  #:use-module (gnu packages file)
   #:use-module (gnu packages gdb)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages ghostscript)
@@ -115,6 +117,7 @@ 
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages ragel)
   #:use-module (gnu packages rdf)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages ruby)
@@ -141,6 +144,7 @@ 
   #:use-module (guix git-download)
   #:use-module (guix svn-download)
   #:use-module (guix utils)
+  #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system guile)
   #:use-module (guix build-system perl)
@@ -3902,3 +3906,42 @@  DKIM and ARC sign messages and output the corresponding signature headers.")
 based on asyncio.")
     (license (list license:asl2.0
                    license:lgpl3))))    ; only for setup_helpers.py
+
+(define-public rspamd
+  (package
+    (name "rspamd")
+    (version "2.6")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/rspamd/rspamd")
+             (commit version)))
+       (sha256
+        (base32 "0vwa7k2s2bkfb8w78z5izkd6ywjbzqysb0grls898y549hm8ii70"))
+       (file-name (git-file-name name version))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:configure-flags '("-DENABLE_LUAJIT=ON")))
+    (inputs
+     `(("openssl" ,openssl)
+       ("glib" ,glib)
+       ("ragel" ,ragel)
+       ("luajit" ,luajit)
+       ("sqlite" ,sqlite)
+       ("file" ,file)
+       ("icu4c" ,icu4c)
+       ("pcre" ,pcre)
+       ("zlib" ,zlib)
+       ("perl" ,perl)
+       ("libsodium" ,libsodium)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (synopsis "Fast, free and open-source spam filtering system")
+    (description "Rspamd is an advanced spam filtering system that
+allows evaluation of messages by a number of rules including regular
+expressions, statistical analysis and custom services such as URL
+black lists.  Each message is analysed by Rspamd and given a spam
+score.")
+    (home-page "https://www.rspamd.com/")
+    (license license:asl2.0)))