unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2.
@ 2022-09-25 15:15 Morgan.J.Smith
  2022-10-06 20:47 ` Ludovic Courtès
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Morgan.J.Smith @ 2022-09-25 15:15 UTC (permalink / raw)
  To: 58074; +Cc: Morgan Smith

From: Morgan Smith <Morgan.J.Smith@outlook.com>

* gnu/packages/cyrus-sasl.scm (cyrus-sasl-xoauth2): New variable.
---
 gnu/packages/cyrus-sasl.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/cyrus-sasl.scm b/gnu/packages/cyrus-sasl.scm
index 2cd18f3e5e..5374effbcd 100644
--- a/gnu/packages/cyrus-sasl.scm
+++ b/gnu/packages/cyrus-sasl.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2022 Morgan Smith <Morgan.J.Smith@outlook.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -26,8 +27,10 @@ (define-module (gnu packages cyrus-sasl)
   #:use-module (gnu packages kerberos)
   #:use-module (gnu packages tls)
   #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix gexp)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix build-system gnu))
 
 (define-public cyrus-sasl
@@ -78,3 +81,34 @@ (define-public cyrus-sasl
    (license (license:non-copyleft "file://COPYING"
                                   "See COPYING in the distribution."))
    (home-page "https://cyrusimap.org/sasl/")))
+
+(define-public cyrus-sasl-xoauth2
+  (package
+    (name "cyrus-sasl-xoauth2")
+    (version "0.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/moriyoshi/cyrus-sasl-xoauth2")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1py9f1mn5k5xihrk0lfrwr6723c22gjb7lmgya83ibvislm2x3wl"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:configure-flags #~(list (string-append "--with-cyrus-sasl="
+                                                    #$output)
+                                     "--disable-static")))
+
+    (inputs (list cyrus-sasl))
+    (native-inputs (list autoconf automake libtool))
+    (native-search-paths
+     (list (search-path-specification
+            (variable "SASL_PATH")
+            (files (list "lib/sasl2")))))
+    (home-page "https://github.com/moriyoshi/cyrus-sasl-xoauth2")
+    (synopsis "XOAUTH2 plugin for Cyrus SASL")
+    (description "Adds support for XOAUTH2 authentication to Cyrus SASL.  Can
+be used with isync to fetch mail from servers that support it.")
+    (license license:expat)))
-- 
2.37.3





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

* [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2.
  2022-09-25 15:15 [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2 Morgan.J.Smith
@ 2022-10-06 20:47 ` Ludovic Courtès
  2022-12-23 19:27 ` [bug#58074] [PATCH staging v2 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins Morgan.J.Smith
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 7+ messages in thread
From: Ludovic Courtès @ 2022-10-06 20:47 UTC (permalink / raw)
  To: Morgan.J.Smith; +Cc: 58074

Hi,

Morgan.J.Smith@outlook.com skribis:

> From: Morgan Smith <Morgan.J.Smith@outlook.com>
>
> * gnu/packages/cyrus-sasl.scm (cyrus-sasl-xoauth2): New variable.

LGTM, modulo two things:

> +    (native-search-paths
> +     (list (search-path-specification
> +            (variable "SASL_PATH")
> +            (files (list "lib/sasl2")))))

I believe this search path belongs in cyrus-sasl (see
<https://guix.gnu.org/manual/devel/en/html_node/Search-Paths.html>).

Could you provide a patch that does that?  However, due to the number of
dependents of cyrus-sasl, this change will have to go on ‘staging’.

> +    (home-page "https://github.com/moriyoshi/cyrus-sasl-xoauth2")
> +    (synopsis "XOAUTH2 plugin for Cyrus SASL")
> +    (description "Adds support for XOAUTH2 authentication to Cyrus SASL.  Can
> +be used with isync to fetch mail from servers that support it.")

Please write full sentences.

Thanks in advance,
Ludo’.




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

* [bug#58074] [PATCH staging v2 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins
  2022-09-25 15:15 [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2 Morgan.J.Smith
  2022-10-06 20:47 ` Ludovic Courtès
@ 2022-12-23 19:27 ` Morgan.J.Smith
  2022-12-23 19:27 ` [bug#58074] [PATCH staging v3 " Reily Siegel
  2024-03-15 14:46 ` [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2 Zac Berkowitz
  3 siblings, 0 replies; 7+ messages in thread
From: Morgan.J.Smith @ 2022-12-23 19:27 UTC (permalink / raw)
  To: ludo; +Cc: Morgan Smith, 58074

From: Morgan Smith <Morgan.J.Smith@outlook.com>

* gnu/packages/cyrus-sasl.scm (cyrus-sasl)[native-search-paths]: Add
"lib/sasl2" to SASL_PATH
---

Sorry for the delay in my followup

Yep the environment should be set in the original package.  I also think I've written in full sentences this time.  English hard

 gnu/packages/cyrus-sasl.scm | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/gnu/packages/cyrus-sasl.scm b/gnu/packages/cyrus-sasl.scm
index 2cd18f3e5e..d644d04e44 100644
--- a/gnu/packages/cyrus-sasl.scm
+++ b/gnu/packages/cyrus-sasl.scm
@@ -69,6 +69,10 @@ (define-public cyrus-sasl
         (add-after 'unpack 'autogen
           (lambda _
             (invoke "autoreconf" "-vif"))))))
+   (native-search-paths
+    (list (search-path-specification
+           (variable "SASL_PATH")
+           (files (list "lib/sasl2")))))
    (synopsis "Simple Authentication Security Layer implementation")
    (description
     "SASL (Simple Authentication Security Layer) is an Internet
-- 
2.38.1





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

* [bug#58074] [PATCH staging v3 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins
  2022-09-25 15:15 [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2 Morgan.J.Smith
  2022-10-06 20:47 ` Ludovic Courtès
  2022-12-23 19:27 ` [bug#58074] [PATCH staging v2 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins Morgan.J.Smith
@ 2022-12-23 19:27 ` Reily Siegel
  2022-12-23 19:27   ` [bug#58074] [PATCH staging v3 2/2] gnu: Add cyrus-sasl-xoauth2 Reily Siegel
  2024-02-12 18:48   ` [bug#58074] [PATCH staging v3 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins Samuel Fadel
  2024-03-15 14:46 ` [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2 Zac Berkowitz
  3 siblings, 2 replies; 7+ messages in thread
From: Reily Siegel @ 2022-12-23 19:27 UTC (permalink / raw)
  To: 58074


From: Morgan Smith <Morgan.J.Smith@outlook.com>

* gnu/packages/cyrus-sasl.scm (cyrus-sasl)[native-search-paths]: Add
"lib/sasl2" to SASL_PATH
---

I added the patches from this issue to a personal Guix checkout, and was
unable to build cyrus-sasl-xoauth2 due to autogen.sh being an executable
file without a shebang. This updated patch sets the permission bits to
o400, so that the bootstrap phase passes autogen.sh to /bin/sh, rather
than attempt to execute it directly.

 gnu/packages/cyrus-sasl.scm | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/cyrus-sasl.scm b/gnu/packages/cyrus-sasl.scm
index 70d579c127..8254e04993 100644
--- a/gnu/packages/cyrus-sasl.scm
+++ b/gnu/packages/cyrus-sasl.scm
@@ -63,9 +63,13 @@ (define-public cyrus-sasl
       ;; ends up doing "ln -s plugin_common.lo plugin_common.o", which can
       ;; fail with EEXIST when building things in parallel.
       #:parallel-build? #f))
-    (synopsis "Simple Authentication Security Layer implementation")
-    (description
-     "SASL (Simple Authentication Security Layer) is an Internet
+   (native-search-paths
+    (list (search-path-specification
+           (variable "SASL_PATH")
+           (files (list "lib/sasl2")))))
+   (synopsis "Simple Authentication Security Layer implementation")
+   (description
+    "SASL (Simple Authentication Security Layer) is an Internet
 standards-track method for remote computers to authenticate.  The Cyrus SASL
 library makes supporting various SASL mechanisms easy for both client and
 server writers.")

base-commit: 4ded034a57ffacdd6c7afa73bb58893afd614644
prerequisite-patch-id: 081e3072b6b3a070fffd62da42f3e622317684bf




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

* [bug#58074] [PATCH staging v3 2/2] gnu: Add cyrus-sasl-xoauth2.
  2022-12-23 19:27 ` [bug#58074] [PATCH staging v3 " Reily Siegel
@ 2022-12-23 19:27   ` Reily Siegel
  2024-02-12 18:48   ` [bug#58074] [PATCH staging v3 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins Samuel Fadel
  1 sibling, 0 replies; 7+ messages in thread
From: Reily Siegel @ 2022-12-23 19:27 UTC (permalink / raw)
  To: 58074


From: Morgan Smith <Morgan.J.Smith@outlook.com>

* gnu/packages/cyrus-sasl.scm (cyrus-sasl-xoauth2): New variable.
---
 gnu/packages/cyrus-sasl.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/cyrus-sasl.scm b/gnu/packages/cyrus-sasl.scm
index 8254e04993..efeeb519c4 100644
--- a/gnu/packages/cyrus-sasl.scm
+++ b/gnu/packages/cyrus-sasl.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
+;;; Copyright © 2022 Morgan Smith <Morgan.J.Smith@outlook.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -30,6 +31,7 @@ (define-module (gnu packages cyrus-sasl)
   #:use-module (guix gexp)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix build-system gnu))
 
 (define-public cyrus-sasl
@@ -76,3 +78,34 @@ (define-public cyrus-sasl
     (license (license:non-copyleft "file://COPYING"
                                    "See COPYING in the distribution."))
     (home-page "https://cyrusimap.org/sasl/")))
+
+(define-public cyrus-sasl-xoauth2
+  (package
+    (name "cyrus-sasl-xoauth2")
+    (version "0.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/moriyoshi/cyrus-sasl-xoauth2")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1py9f1mn5k5xihrk0lfrwr6723c22gjb7lmgya83ibvislm2x3wl"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:configure-flags #~(list (string-append "--with-cyrus-sasl="
+                                                    #$output)
+                                     "--disable-static")
+           #:phases #~(modify-phases %standard-phases
+                        (add-before 'bootstrap 'fix-autogen
+                          (lambda _
+                            ;; autogen.sh is executable but does not have a shebang.
+                            (chmod "autogen.sh" #o400))))))
+    (inputs (list cyrus-sasl))
+    (native-inputs (list autoconf automake libtool))
+    (home-page "https://github.com/moriyoshi/cyrus-sasl-xoauth2")
+    (synopsis "XOAUTH2 plugin for Cyrus SASL")
+    (description "Adds support for XOAUTH2 authentication to Cyrus SASL.  This
+package can be used with isync to fetch mail from servers that support it.")
+    (license license:expat)))




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

* [bug#58074] [PATCH staging v3 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins
  2022-12-23 19:27 ` [bug#58074] [PATCH staging v3 " Reily Siegel
  2022-12-23 19:27   ` [bug#58074] [PATCH staging v3 2/2] gnu: Add cyrus-sasl-xoauth2 Reily Siegel
@ 2024-02-12 18:48   ` Samuel Fadel
  1 sibling, 0 replies; 7+ messages in thread
From: Samuel Fadel @ 2024-02-12 18:48 UTC (permalink / raw)
  To: Reily Siegel, 58074

Hi,

Reily Siegel (2022-12-23 14:27 -0500):
> From: Morgan Smith <Morgan.J.Smith@outlook.com> 
> 
> * gnu/packages/cyrus-sasl.scm (cyrus-sasl)[native-search-paths]: 
> Add "lib/sasl2" to SASL_PATH --- 
> 
> I added the patches from this issue to a personal Guix checkout, 
> and was unable to build cyrus-sasl-xoauth2 due to autogen.sh 
> being an executable file without a shebang. This updated patch 
> sets the permission bits to o400, so that the bootstrap phase 
> passes autogen.sh to /bin/sh, rather than attempt to execute it 
> directly.

I have tested the patch from Reily and it works for me. Solved my 
issue of not having cyrus-sasl-xoauth2 packaged in Guix yet. Is 
this ready for merging?


Samuel




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

* [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2
  2022-09-25 15:15 [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2 Morgan.J.Smith
                   ` (2 preceding siblings ...)
  2022-12-23 19:27 ` [bug#58074] [PATCH staging v3 " Reily Siegel
@ 2024-03-15 14:46 ` Zac Berkowitz
  3 siblings, 0 replies; 7+ messages in thread
From: Zac Berkowitz @ 2024-03-15 14:46 UTC (permalink / raw)
  To: 58074

[-- Attachment #1: Type: text/plain, Size: 97 bytes --]

Also using cyrus-sasl-xoauth2 on a local channel would like to have it part
of Guix proper.

Zac

[-- Attachment #2: Type: text/html, Size: 157 bytes --]

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

end of thread, other threads:[~2024-03-15 14:48 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-25 15:15 [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2 Morgan.J.Smith
2022-10-06 20:47 ` Ludovic Courtès
2022-12-23 19:27 ` [bug#58074] [PATCH staging v2 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins Morgan.J.Smith
2022-12-23 19:27 ` [bug#58074] [PATCH staging v3 " Reily Siegel
2022-12-23 19:27   ` [bug#58074] [PATCH staging v3 2/2] gnu: Add cyrus-sasl-xoauth2 Reily Siegel
2024-02-12 18:48   ` [bug#58074] [PATCH staging v3 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins Samuel Fadel
2024-03-15 14:46 ` [bug#58074] [PATCH] gnu: Add cyrus-sasl-xoauth2 Zac Berkowitz

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