unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#51115] [PATCH 0/3] Add lurch.
@ 2021-10-10  9:01 James Thomas
  2021-10-10 23:39 ` [bug#51115] [PATCH 1/3] Add axc James Thomas
  2021-11-14 18:35 ` bug#51115: [PATCH 0/3] Add lurch Ludovic Courtès
  0 siblings, 2 replies; 5+ messages in thread
From: James Thomas @ 2021-10-10  9:01 UTC (permalink / raw)
  To: 51115

This patchset adds lurch for OMEMO encryption support in libpurple based
programs such as Pidgin. I have tested it (not on Pidgin, but) on a
feature branch of bitlbee-purple:
https://github.com/paretje/bitlbee/tree/feature/lurch

James Thomas (3):
  gnu: Add axc.
  gnu: Add libomemo.
  gnu: Add purple-lurch.

 gnu/packages/messaging.scm | 128 +++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 128 insertions(+)

--
2.32.0




^ permalink raw reply	[flat|nested] 5+ messages in thread

* [bug#51115] [PATCH 1/3] Add axc.
  2021-10-10  9:01 [bug#51115] [PATCH 0/3] Add lurch James Thomas
@ 2021-10-10 23:39 ` James Thomas
  2021-10-10 23:42   ` [bug#51115] [PATCH 2/3] Add libomemo James Thomas
  2021-11-14 18:35 ` bug#51115: [PATCH 0/3] Add lurch Ludovic Courtès
  1 sibling, 1 reply; 5+ messages in thread
From: James Thomas @ 2021-10-10 23:39 UTC (permalink / raw)
  To: 51115

* gnu/packages/messaging.scm (axc): New variable
---
 gnu/packages/messaging.scm | 41 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 6b4f26880c..13909cca4c 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -547,6 +547,47 @@ messaging environments.  It can be used with messaging software to provide
 end-to-end encryption.")
   (license license:gpl3+)))

+(define-public axc
+  (package
+    (name "axc")
+    (version "0.3.6")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/gkdr/axc")
+             (commit (string-append "v" version))))
+       (modules '((guix build utils)))
+       (snippet
+        `(begin
+           ;; Submodules
+           (delete-file-recursively "lib")))
+       (file-name
+        (git-file-name name version))
+       (sha256
+        (base32 "05sv7l6lk0xk4wb2bspc2sdpygrb1f0szzi82a1kyfm0fjz887b3"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'configure
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let ((out (assoc-ref outputs "out")))
+                        (setenv "CC" "gcc")
+                        (setenv "PREFIX" out)))))
+       #:parallel-tests? #f))
+    (native-inputs `(("cmocka" ,cmocka)
+                     ("pkg-config" ,pkg-config)))
+    (inputs `(("glib" ,glib)
+              ("libgcrypt" ,libgcrypt)
+              ("libsignal-protocol-c" ,libsignal-protocol-c)
+              ("sqlite" ,sqlite)))
+    (synopsis "Client library for libsignal-protocol-c")
+    (description "This is a client library for @code{libsignal-protocol-c}.
+It implements the necessary interfaces using @code{libgcrypt} and
+@code{sqlite}.")
+    (home-page "https://github.com/gkdr/axc")
+    (license license:gpl3+)))
+
 (define-public bitlbee
   (package
     (name "bitlbee")
--
2.32.0





^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [bug#51115] [PATCH 2/3] Add libomemo.
  2021-10-10 23:39 ` [bug#51115] [PATCH 1/3] Add axc James Thomas
@ 2021-10-10 23:42   ` James Thomas
  2021-10-10 23:44     ` [bug#51115] [PATCH 3/3] Add purple-lurch James Thomas
  0 siblings, 1 reply; 5+ messages in thread
From: James Thomas @ 2021-10-10 23:42 UTC (permalink / raw)
  To: 51115

* gnu/packages/messaging.scm (libomemo): New variable
---
 gnu/packages/messaging.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 13909cca4c..35ca61be81 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -588,6 +588,41 @@ It implements the necessary interfaces using @code{libgcrypt} and
     (home-page "https://github.com/gkdr/axc")
     (license license:gpl3+)))

+(define-public libomemo
+  (package
+    (name "libomemo")
+    (version "0.7.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/gkdr/libomemo")
+             (commit (string-append "v" version))))
+       (file-name
+        (git-file-name name version))
+       (sha256
+        (base32 "1q3vyj8zk3vm0a4v6w8qya5dhk2yw04bga8799a0zl6907nf122k"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'configure
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let ((out (assoc-ref outputs "out")))
+                        (setenv "CC" "gcc")
+                        (setenv "PREFIX" out)))))
+       #:parallel-tests? #f))
+    (native-inputs `(("cmocka" ,cmocka)
+                     ("pkg-config" ,pkg-config)))
+    (inputs `(("glib" ,glib)
+              ("libgcrypt" ,libgcrypt)
+              ("minixml" ,minixml)
+              ("sqlite" ,sqlite)))
+    (synopsis "OMEMO C library")
+    (description "This library implements @acronym{OMEMO, OMEMO Multi-End
+Message and Object Encryption} of XMPP (XEP-0384) in C.")
+    (home-page "https://github.com/gkdr/libomemo")
+    (license license:expat)))
+
 (define-public bitlbee
   (package
     (name "bitlbee")
--
2.32.0





^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [bug#51115] [PATCH 3/3] Add purple-lurch.
  2021-10-10 23:42   ` [bug#51115] [PATCH 2/3] Add libomemo James Thomas
@ 2021-10-10 23:44     ` James Thomas
  0 siblings, 0 replies; 5+ messages in thread
From: James Thomas @ 2021-10-10 23:44 UTC (permalink / raw)
  To: 51115

* gnu/packages/messaging.scm (purple-lurch): New variable
---
 gnu/packages/messaging.scm | 52 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 35ca61be81..5671d36a57 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -2700,6 +2700,58 @@ support for high performance Telegram Bot creation.")
     (home-page "https://source.puri.sm/Librem5/purple-mm-sms")
     (license license:gpl2+)))

+(define-public purple-lurch
+  (package
+    (name "purple-lurch")
+    (version "0.7.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference (url "https://github.com/gkdr/lurch")
+                       (commit (string-append "v" version))))
+       (modules '((guix build utils)))
+       (snippet
+        `(begin
+           ;; Submodules
+           (delete-file-recursively "lib")))
+       (file-name
+        (git-file-name name version))
+       (sha256
+        (base32 "1ipd9gwh04wbqv6c10yxi02lc2yjsr02hwjycgxhl4r9x8b33psd"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'configure
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let ((out (assoc-ref outputs "out")))
+                        (substitute* "Makefile"
+                          (("^PURPLE_PLUGIN_DIR = .*")
+                           (string-append "PURPLE_PLUGIN_DIR = " out
+                                          "/lib/purple-2\n")))
+                        (setenv "CC" "gcc")))))
+       #:parallel-tests? #f))
+    (native-inputs `(("cmocka" ,cmocka)
+                     ("pkg-config" ,pkg-config)))
+    (inputs `(("axc" ,axc)
+              ("glib" ,glib)
+              ("libgcrypt" ,libgcrypt)
+              ("libomemo" ,libomemo)
+              ("libsignal-protocol-c" ,libsignal-protocol-c)
+              ("libxml2" ,libxml2)
+              ("minixml" ,minixml)
+              ("pidgin" ,pidgin)
+              ("sqlite" ,sqlite)))
+    (synopsis "OMEMO Encryption for libpurple")
+    (description "Purple-lurch plugin adds end-to-end encryption support
+through the Double Ratchet (Axolotl) algorithm, to @code{libpurple}
+applications using @acronym{XMPP, Extensible Messaging and Presence Protocol},
+through its standard XEP-0384: @acronym{OMEMO, OMEMO Multi-End Message and
+Object Encryption} Encryption.  It provides confidentiality, (weak) forward
+secrecy, break-in recovery, authentication, integrity, deniability, and
+asynchronicity.")
+    (home-page "https://github.com/gkdr/lurch")
+    (license license:gpl3+)))
+
 (define-public chatty
  (package
    (name "chatty")
--
2.32.0





^ permalink raw reply related	[flat|nested] 5+ messages in thread

* bug#51115: [PATCH 0/3] Add lurch.
  2021-10-10  9:01 [bug#51115] [PATCH 0/3] Add lurch James Thomas
  2021-10-10 23:39 ` [bug#51115] [PATCH 1/3] Add axc James Thomas
@ 2021-11-14 18:35 ` Ludovic Courtès
  1 sibling, 0 replies; 5+ messages in thread
From: Ludovic Courtès @ 2021-11-14 18:35 UTC (permalink / raw)
  To: James Thomas; +Cc: 51115-done

Hi,

James Thomas <jimjoe@gmx.net> skribis:

>   gnu: Add axc.
>   gnu: Add libomemo.
>   gnu: Add purple-lurch.

Pushed as 704bd694d198ed568349e4772bc6488a58f15d8b, thanks!

Ludo’.




^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-11-14 18:37 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-10-10  9:01 [bug#51115] [PATCH 0/3] Add lurch James Thomas
2021-10-10 23:39 ` [bug#51115] [PATCH 1/3] Add axc James Thomas
2021-10-10 23:42   ` [bug#51115] [PATCH 2/3] Add libomemo James Thomas
2021-10-10 23:44     ` [bug#51115] [PATCH 3/3] Add purple-lurch James Thomas
2021-11-14 18:35 ` bug#51115: [PATCH 0/3] Add lurch Ludovic Courtès

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).