* [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 v3 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins Reily Siegel
` (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 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 ` 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
2022-12-23 19:27 ` [bug#58074] [PATCH staging v2 " Morgan.J.Smith
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 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins 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 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins 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 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 ` [bug#58074] [PATCH staging v3 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins Reily Siegel
@ 2022-12-23 19:27 ` Morgan.J.Smith
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] 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 v2 " Morgan.J.Smith
@ 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 v3 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins 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
2022-12-23 19:27 ` [bug#58074] [PATCH staging v2 " Morgan.J.Smith
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).