guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/01: gnu: stumpwm: Fix gnew command.


From: guix-commits
Subject: 01/01: gnu: stumpwm: Fix gnew command.
Date: Wed, 19 Dec 2018 09:45:44 -0500 (EST)

cwebber pushed a commit to branch master
in repository guix.

commit dba83d7d14f8649932ed9e9900fbc8421ed39858
Author: Pierre Langlois <address@hidden>
Date:   Tue Dec 18 21:17:16 2018 +0000

    gnu: stumpwm: Fix gnew command.
    
    The new release of StumpWM broken the interactive 'gnew' command.  It was
    fixed upstream [0] and will be part of the next release.
    
    0: https://github.com/stumpwm/stumpwm/pull/538
    
    * gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch: New file.
    * gnu/packages/lisp.scm (stumpwm)[source]: Use it.
    * gnu/local.mk (dist_patch_DATA): Register it.
---
 gnu/local.mk                                       |  1 +
 gnu/packages/lisp.scm                              |  4 +-
 .../patches/stumpwm-fix-broken-read-one-line.patch | 45 ++++++++++++++++++++++
 3 files changed, 49 insertions(+), 1 deletion(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 0d60e9b..8e1ce88 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1174,6 +1174,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/swish-e-search.patch                    \
   %D%/packages/patches/swish-e-format-security.patch           \
   %D%/packages/patches/synfigstudio-fix-ui-with-gtk3.patch     \
+  %D%/packages/patches/stumpwm-fix-broken-read-one-line.patch  \
   %D%/packages/patches/t1lib-CVE-2010-2642.patch               \
   %D%/packages/patches/t1lib-CVE-2011-0764.patch               \
   %D%/packages/patches/t1lib-CVE-2011-1552+.patch              \
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index d8da295..e4669e3 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -976,7 +976,9 @@ from other CLXes around the net.")
                     version ".tar.gz"))
               (sha256
                (base32 "177gxfk4c127i9crghx6fmkipznhgylvzgnjb2pna38g21gg6s39"))
-              (file-name (string-append "stumpwm-" version ".tar.gz"))))
+              (file-name (string-append "stumpwm-" version ".tar.gz"))
+              (patches
+               (search-patches "stumpwm-fix-broken-read-one-line.patch"))))
     (build-system asdf-build-system/sbcl)
     (native-inputs `(("fiasco" ,sbcl-fiasco)))
     (inputs `(("cl-ppcre" ,sbcl-cl-ppcre)
diff --git a/gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch 
b/gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch
new file mode 100644
index 0000000..f8dac61
--- /dev/null
+++ b/gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch
@@ -0,0 +1,45 @@
+From a13db62a4da06426cf2eb2376d1a3723b5ee52d5 Mon Sep 17 00:00:00 2001
+From: Vasily Postnicov <address@hidden>
+Date: Fri, 14 Dec 2018 20:01:53 +0300
+Subject: [PATCH] READ-ONE-LINE: Turn COMPLETIONS into a keyword argument
+
+This keeps READ-ONE-line backwards compatible to changes prior
+dae0422811771d179077b9336618f2b19be85b7b. Currently both
+ARGUMENT-POP-OR-READ and ARGUMENT-POP-REST-OR-READ are still being
+called with the previous lambda list. Update the calls to the
+READ-ONE-LINE that used the 'new' lambda list, COMPLETING-READ and
+YES-OR-NO-P.
+
+Closes #538
+---
+ input.lisp | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/input.lisp b/input.lisp
+index b698a368..7904b35f 100644
+--- a/input.lisp
++++ b/input.lisp
+@@ -307,10 +307,13 @@ passed the substring to complete on and is expected to 
return a list
+ of matches. If require-match argument is non-nil then the input must
+ match with an element of the completions."
+   (check-type completions (or list function symbol))
+-  (let ((line (read-one-line screen prompt completions :initial-input 
initial-input :require-match require-match)))
++  (let ((line (read-one-line screen prompt
++                             :completions completions
++                             :initial-input initial-input
++                             :require-match require-match)))
+     (when line (string-trim " " line))))
+ 
+-(defun read-one-line (screen prompt completions &key (initial-input "") 
require-match password)
++(defun read-one-line (screen prompt &key completions (initial-input "") 
require-match password)
+   "Read a line of input through stumpwm and return it. Returns nil if the 
user aborted."
+   (let ((*input-last-command* nil)
+         (*input-completions* completions)
+@@ -842,6 +845,7 @@ user presses 'y'"
+ user presses 'yes'"
+   (loop for line = (read-one-line (current-screen)
+                                   (format nil "~a(yes or no) " message)
++                                  :completions
+                                   '("yes" "no"))
+         until (find line '("yes" "no") :test 'string-equal)
+         do (message "Please answer yes or no")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]