gnu: icecat: Update to 78.10.0-guix0-preview1 [security fixes].
[jackhill/guix/guix.git] / gnu / packages / readline.scm
index 73fa531..8a36883 100644 (file)
@@ -1,7 +1,9 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2012, 2013, 2014, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
   #:use-module (guix utils)
   #:use-module (ice-9 format))
 
-(define (patch-url seqno)
-  (format #f "mirror://gnu/readline/readline-7.0-patches/readline70-~3,'0d" seqno))
+(define (patch-url version seqno)
+  (format #f "mirror://gnu/readline/readline-~a-patches/readline~a-~3,'0d"
+          version (string-join (string-split version #\.) "") seqno))
 
-(define (readline-patch seqno sha256)
-  "Return the origin of Readline patch SEQNO, with expected hash SHA256"
+(define (readline-patch version seqno sha256-bv)
+  "Return the origin of Readline patch SEQNO, with expected hash SHA256-BV"
   (origin
     (method url-fetch)
-    (uri (patch-url seqno))
-    (sha256 sha256)))
+    (uri (patch-url version seqno))
+    (sha256 sha256-bv)))
 
-(define-syntax-rule (patch-series (seqno hash) ...)
-  (list (readline-patch seqno (base32 hash))
+(define-syntax-rule (patch-series version (seqno hash) ...)
+  (list (readline-patch version seqno (base32 hash))
         ...))
 
+(define %patch-series-8.0
+  (patch-series
+   "8.0"
+   (1 "0sfh7wn0pr743xspnb1zndxndlv9rc0hcg14cbw5cmyg6f4ykrfq")
+   (2 "1xy8mv8xm8hsfixwp3ci9kfx3dii3y92cq27wwd0jq75y6zzxc1n")
+   (3 "1vza7sxjcsr2z295ij12nzgncdil1vb6as3mqy4m7svi1chv5pcl")
+   (4 "0k1rfx9w32lglxg564yvp0mw6jg6883p8ac2f2lxxqpf80m3vami")))
+
 (define %patch-series-7.0
   (patch-series
+   "7.0"
    (1 "0xm3sxvwmss7ddyfb11n6pgcqd1aglnpy15g143vzcf75snb7hcs")
    (2 "0n1dxmqsbjgrfxb1hgk5c6lsraw4ncbnzxlsx7m35nym6lncjiw7")
-   (3 "1027kmymniizcy0zbdlrczxfx3clxcdln5yq05q9yzlc6y9slhwy")))
+   (3 "1027kmymniizcy0zbdlrczxfx3clxcdln5yq05q9yzlc6y9slhwy")
+   (4 "0r3bbaf12iz8m02z6p3fzww2m365fhn71xmzab2p62gj54s6h9gr")
+   (5 "0lxpa4f72y2nsgj6fgrhjk2nmmxvccys6aciwfxwchb5f21rq5fa")))
 
 (define-public readline
   (package
     (name "readline")
-    (version (string-append "7.0."
-                            (number->string (length %patch-series-7.0))))
+    (version (string-append "8.0."
+                            (number->string (length %patch-series-8.0))))
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnu/readline/readline-"
                                   (version-major+minor version) ".tar.gz"))
               (sha256
                (base32
-                "0d13sg9ksf982rrrmv5mb6a2p4ys9rvg9r71d6il0vr8hmql63bm"))
-              (patches (append
-                        %patch-series-7.0
-                        (search-patches "readline-link-ncurses.patch")))
+                "0qg4924hf4hg0r0wbx2chswsr08734536fh5iagkd3a7f4czafg3"))
+              (patches (append %patch-series-8.0
+                               (search-patches "readline-link-ncurses.patch")))
               (patch-flags '("-p0"))))
     (build-system gnu-build-system)
     (propagated-inputs `(("ncurses" ,ncurses)))
@@ -98,6 +111,23 @@ comfortable for anyone.")
     (license gpl3+)
     (home-page "https://savannah.gnu.org/projects/readline/")))
 
+(define-public readline-7
+  (package (inherit readline)
+    (name "readline")
+    (version (string-append "7.0."
+                            (number->string (length %patch-series-7.0))))
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnu/readline/readline-"
+                                  (version-major+minor version) ".tar.gz"))
+              (sha256
+               (base32
+                "0d13sg9ksf982rrrmv5mb6a2p4ys9rvg9r71d6il0vr8hmql63bm"))
+              (patches (append
+                        %patch-series-7.0
+                        (search-patches "readline-link-ncurses.patch")))
+              (patch-flags '("-p0"))))))
+
 (define-public readline-6.2
   (package (inherit readline)
     (version "6.2")
@@ -114,17 +144,19 @@ comfortable for anyone.")
 (define-public rlwrap
   (package
     (name "rlwrap")
-    (version "0.42")
+    (version "0.43")
     (source
       (origin
         (method url-fetch)
-        (uri (string-append "http://utopia.knoware.nl/~hlub/uck/rlwrap/rlwrap-"
-                            version ".tar.gz"))
+        (uri (string-append "https://github.com/hanslub42/rlwrap/releases/"
+                            "download/v" version "/"
+                            name "-" version ".tar.gz"))
         (sha256
          (base32
-          "0i3yz303wscrysyzpdq04h4nrl9ajz9dbwi80risdl5rkm3dhw2s"))))
+          "0bzb7ylk2770iv59v2d0gypb21y2xn87m299s9rqm6rdi2vx11lf"))))
     (build-system gnu-build-system)
-    (native-inputs `(("perl" ,perl)))
+    (native-inputs
+     `(("perl" ,perl)))
     (inputs
      `(("readline" ,readline)))
     (synopsis "Wrapper to allow the editing of keyboard commands")
@@ -134,5 +166,5 @@ readline library to allow the editing of keyboard input for any command.  You
 should consider rlwrap especially when you need user-defined completion (by way
 of completion word lists) and persistent history, or if you want to program
 'special effects' using the filter mechanism.")
-    (home-page "http://utopia.knoware.nl/~hlub/uck/rlwrap/")
+    (home-page "https://github.com/hanslub42/rlwrap")
     (license gpl2+)))