Subject: [PATCH staging v3 1/2] gnu: cyrus-sasl: Set SASL_PATH to find plugins

From: Reily Siegel <[email-masked]>
Date: Fri, 23 Dec 2022 14:27:41 -0500

From: Morgan Smith <[email-masked]>

* 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