gnu: guile-ssh: Fix bug in 'node-guile-version'.
authorLudovic Courtès <ludo@gnu.org>
Tue, 16 May 2017 12:15:59 +0000 (14:15 +0200)
committerLudovic Courtès <ludo@gnu.org>
Tue, 16 May 2017 12:16:56 +0000 (14:16 +0200)
* gnu/packages/patches/guile-ssh-rexec-bug.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/ssh.scm (guile-ssh)[source](patches): New field.

gnu/local.mk
gnu/packages/patches/guile-ssh-rexec-bug.patch [new file with mode: 0644]
gnu/packages/ssh.scm

index f6e911b..c560c71 100644 (file)
@@ -649,6 +649,7 @@ dist_patch_DATA =                                           \
   %D%/packages/patches/guile-present-coding.patch              \
   %D%/packages/patches/guile-relocatable.patch                 \
   %D%/packages/patches/guile-rsvg-pkgconfig.patch              \
+  %D%/packages/patches/guile-ssh-rexec-bug.patch               \
   %D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch       \
   %D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
   %D%/packages/patches/gtk2-theme-paths.patch                  \
diff --git a/gnu/packages/patches/guile-ssh-rexec-bug.patch b/gnu/packages/patches/guile-ssh-rexec-bug.patch
new file mode 100644 (file)
index 0000000..363fea3
--- /dev/null
@@ -0,0 +1,16 @@
+Fix a bug whereby 'node-guile-version' would pass a node instead of
+a session to 'rexec'.
+
+diff --git a/modules/ssh/dist/node.scm b/modules/ssh/dist/node.scm
+index 9c065c7..29a3906 100644
+--- a/modules/ssh/dist/node.scm
++++ b/modules/ssh/dist/node.scm
+@@ -411,7 +411,8 @@ procedure returns the 1st evaluated value if multiple values were returned."
+   "Get Guile version installed on a NODE, return the version string.  Return
+ #f if Guile is not installed."
+   (receive (result rc)
+-      (rexec node "which guile > /dev/null && guile --version")
++      (rexec (node-session node)
++             "which guile > /dev/null && guile --version")
+     (and (zero? rc)
+          (car result))))
index 1fd3950..6a074d1 100644 (file)
@@ -226,6 +226,7 @@ Additionally, various channel-specific options can be negotiated.")
               (sha256
                (base32
                 "0r261i8kc3avbmbwgyzak2vnqwssjlgz37g2y2fwm80w9bmn2m7j"))
+              (patches (search-patches "guile-ssh-rexec-bug.patch"))
               (modules '((guix build utils)))
               (snippet
                ;; 'configure.ac' mistakenly tries to link files from examples/