[PATCH] gnu: Add muchsync.

DoneSubmitted by Justus Winter.
Details
2 participants
  • Justus Winter
  • Nicolas Goaziou
Owner
unassigned
Severity
normal
J
J
Justus Winter wrote on 3 Apr 2020 00:24
(address . guix-patches@gnu.org)(name . Justus Winter)(address . justus@sequoia-pgp.org)
20200402222441.16772-1-justus@sequoia-pgp.org
* gnu/packages/mail.scm (muchsync): New variable.
---
gnu/packages/mail.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index ed14360066..061dc237f3 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -30,6 +30,7 @@
 ;;; Copyright © 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
+;;; Copyright © 2020 Justus Winter <justus@sequoia-pgp.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -82,6 +83,7 @@
   #:use-module (gnu packages guile)
   #:use-module (gnu packages guile-xyz)
   #:use-module (gnu packages flex)
+  #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages kerberos)
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages libevent)
@@ -1074,6 +1076,38 @@ and search library.")
 (define-public python2-notmuch
   (package-with-python2 python-notmuch))
 
+(define-public muchsync
+  (package
+    (name "muchsync")
+    (version "5")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://www.muchsync.org/src/muchsync-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1k2m44pj5i6vfhp9icdqs42chsp208llanc666p3d9nww8ngq2lb"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("ghc-pandoc" ,ghc-pandoc)))
+    (inputs
+     `(("notmuch" ,notmuch)
+       ("sqlite" ,sqlite)
+       ("xapian" ,xapian)
+       ("libcrypto" ,openssl)))
+    (home-page "https://www.muchsync.org/")
+    (synopsis "Synchronize notmuch mail across machines")
+    (description
+     "Muchsync brings notmuch to all of your computers by synchronizing your
+mail messages and notmuch tags across machines.  The protocol is heavily
+pipelined to work efficiently over high-latency networks such as mobile
+broadband.  Muchsync supports arbitrary pairwise synchronization among
+replicas.  A version-vector-based algorithm allows it to exchange only the
+minimum information necessary to bring replicas up to date regardless of which
+pairs have previously synchronized.")
+    (license gpl2+)))
+
 (define-public getmail
   (package
     (name "getmail")
-- 
2.26.0
J
J
Justus Winter wrote on 3 Apr 2020 10:06
(address . 40394@debbugs.gnu.org)(name . Justus Winter)(address . justus@sequoia-pgp.org)
20200403080646.24056-1-justus@sequoia-pgp.org
* gnu/packages/mail.scm (muchsync): New variable.
---
gnu/packages/mail.scm | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)

Toggle diff (61 lines)
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index ed14360066..ca10c68586 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -30,6 +30,7 @@
 ;;; Copyright © 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
 ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
+;;; Copyright © 2020 Justus Winter <justus@sequoia-pgp.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -82,6 +83,7 @@
   #:use-module (gnu packages guile)
   #:use-module (gnu packages guile-xyz)
   #:use-module (gnu packages flex)
+  #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages kerberos)
   #:use-module (gnu packages libcanberra)
   #:use-module (gnu packages libevent)
@@ -1074,6 +1076,38 @@ and search library.")
 (define-public python2-notmuch
   (package-with-python2 python-notmuch))
 
+(define-public muchsync
+  (package
+    (name "muchsync")
+    (version "5")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://www.muchsync.org/src/muchsync-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1k2m44pj5i6vfhp9icdqs42chsp208llanc666p3d9nww8ngq2lb"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("ghc-pandoc" ,ghc-pandoc)))
+    (inputs
+     `(("notmuch" ,notmuch)
+       ("sqlite" ,sqlite)
+       ("xapian" ,xapian)
+       ("libcrypto" ,openssl)))
+    (home-page "http://www.muchsync.org/")
+    (synopsis "Synchronize notmuch mail across machines")
+    (description
+     "Muchsync brings notmuch to all of your computers by synchronizing your
+mail messages and notmuch tags across machines.  The protocol is heavily
+pipelined to work efficiently over high-latency networks such as mobile
+broadband.  Muchsync supports arbitrary pairwise synchronization among
+replicas.  A version-vector-based algorithm allows it to exchange only the
+minimum information necessary to bring replicas up to date regardless of which
+pairs have previously synchronized.")
+    (license gpl2+)))
+
 (define-public getmail
   (package
     (name "getmail")
-- 
2.26.0
N
N
Nicolas Goaziou wrote on 3 Apr 2020 10:58
(name . Justus Winter)(address . justus@sequoia-pgp.org)(address . 40394-done@debbugs.gnu.org)
87y2rdx7wo.fsf@nicolasgoaziou.fr
Hello,

Justus Winter <justus@sequoia-pgp.org> writes:

Toggle quote (2 lines)
> * gnu/packages/mail.scm (muchsync): New variable.

I reordered alphabetically the inputs, and applied your patch as
9ec27360af620fcbab8139e4d8963cccddda2b55.

Thank you!

Regards,

--
Nicolas Goaziou
Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 40394@debbugs.gnu.org