Subject: [bug#36413] [PATCH] Add and update Emacs packages.

From: Brian Leung <[email-masked]>
Date: Fri, 28 Jun 2019 04:58:58 +0200

See attached.
From a8dceb8f93312f2b0090422579263f3d072cf1e6 Mon Sep 17 00:00:00 2001
From: Brian Leung <[email-masked]>
Date: Wed, 26 Jun 2019 02:01:38 +0200
Subject: [PATCH 01/10] gnu: emacs-git-timemachine: Update to 4.10.

* gnu/packages/emacs-xyz.scm (emacs-git-timemachine): Update to 4.10.
[propagated-inputs] Add emacs-transient.
[source] Use GIT-FETCH and GIT-REFERENCE.
---
 gnu/packages/emacs-xyz.scm | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 2a59ae522e..84ce36a89d 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -2193,18 +2193,20 @@ display and behaviour is easily customisable.")
 (define-public emacs-git-timemachine
   (package
     (name "emacs-git-timemachine")
-    (version "4.5")
+    (version "4.10")
     (source
      (origin
-       (method url-fetch)
-       (uri (string-append "https://gitlab.com/pidu/git-timemachine"
-                           "/-/archive/" version
-                           "/git-timemachine-" version ".tar.gz"))
-       (file-name (string-append name "-" version ".tar.gz"))
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://gitlab.com/pidu/git-timemachine.git")
+             (commit version)))
+       (file-name (git-file-name name version))
        (sha256
         (base32
-         "0ii40qcincasg7s1yrvqcxkqcqzb4sfs7gcxscn6m4x4ans165zy"))))
+         "08zsn3lsnnf01wkv5ls38jga02s5dnf0j3gigy4qd6im3j3d04m1"))))
     (build-system emacs-build-system)
+    (propagated-inputs
+     `(("emacs-transient" ,emacs-transient)))
     (home-page "https://gitlab.com/pidu/git-timemachine")
     (synopsis "Step through historic versions of Git-controlled files")
     (description "This package enables you to step through historic versions
-- 
2.22.0

From 817a39c4047fabb8ca7fbfe03f92d230943ad494 Mon Sep 17 00:00:00 2001
From: Brian Leung <[email-masked]>
Date: Wed, 26 Jun 2019 02:03:16 +0200
Subject: [PATCH 02/10] gnu: emacs-simple-httpd: Update to 1.5.1.

* gnu/packages/emacs-xyz.scm (emacs-simple-httpd): Update to 1.5.1.
---
 gnu/packages/emacs-xyz.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 84ce36a89d..f486339bb0 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -2545,7 +2545,7 @@ as horizontal rules.")
 (define-public emacs-simple-httpd
   (package
     (name "emacs-simple-httpd")
-    (version "1.4.6")
+    (version "1.5.1")
     (source
      (origin
        (method git-fetch)
@@ -2554,9 +2554,9 @@ as horizontal rules.")
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "1qmkc0w28l53zzf5yd2grrk1sq222g5qnsm35ph25s1cfvc1qb2g"))))
+        (base32 "0dpn92rg813c4pq7a1vzj3znyxzp2lmvxqz6pzcqi0l2xn5r3wvb"))))
     (build-system emacs-build-system)
-    (home-page "https://github.com/skeeto/emacs-http-server")
+    (home-page "https://github.com/skeeto/emacs-web-server")
     (synopsis "HTTP server in pure Emacs Lisp")
     (description
      "This package provides a simple HTTP server written in Emacs Lisp to
-- 
2.22.0

From 413a16b7452515bcffb11b78cd6fff433ab7b6c8 Mon Sep 17 00:00:00 2001
From: Brian Leung <[email-masked]>
Date: Wed, 26 Jun 2019 02:03:31 +0200
Subject: [PATCH 03/10] gnu: emacs-skewer-mode: Update to 1.8.0.

* gnu/packages/emacs-xyz.scm (emacs-skewer-mode): Update to 1.8.0.
---
 gnu/packages/emacs-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index f486339bb0..d58c89c6b0 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -2566,7 +2566,7 @@ serve files and directory listings.")
 (define-public emacs-skewer-mode
   (package
     (name "emacs-skewer-mode")
-    (version "1.6.2")
+    (version "1.8.0")
     (source
      (origin
        (method git-fetch)
@@ -2575,7 +2575,7 @@ serve files and directory listings.")
              (commit version)))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "05jndz0c26q60s416vqgvr66axdmxb7qsr2g70fvl5iqavnayhpv"))))
+        (base32 "1ha7jl7776pk1bki5zj2q0jy66450mn8xr3aqjc0m9kj3gc9qxgw"))))
     (build-system emacs-build-system)
     (propagated-inputs
      `(("emacs-simple-httpd" ,emacs-simple-httpd)
-- 
2.22.0

From 49f6ec4ccb9faa3d0ccafac31dcad338be471f92 Mon Sep 17 00:00:00 2001
From: Brian Leung <[email-masked]>
Date: Wed, 26 Jun 2019 03:57:37 +0200
Subject: [PATCH 05/10] gnu: emacs-fish-completion: Don't use unstable tarball.

* gnu/packages/emacs-xyz.scm (emacs-fish-completion)[source]: Use GIT-FETCH
  and GIT-FILE-NAME.
---
 gnu/packages/emacs-xyz.scm | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 4ab342192c..15f3ae6489 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -13021,14 +13021,14 @@ cohesion with the Emacs Way.")
     (version "1.1")
     (source
      (origin
-       (method url-fetch)
-       (uri (string-append
-             "https://gitlab.com/Ambrevar/emacs-fish-completion/repository/"
-             "archive.tar.gz?ref="
-             version))
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://gitlab.com/Ambrevar/emacs-fish-completion.git")
+             (commit version)))
+       (file-name (git-file-name name version))
        (sha256
         (base32
-         "0bpvifv6c2a65nks6kvarw0hhm37fnyy74wikwf9qq1i20va0fpv"))))
+         "1pjqnbyjmj64q5nwq1mrdxcls4fp5y0b6zqs785i0s6wdvrm4021"))))
     (build-system emacs-build-system)
     (inputs `(("fish" ,fish)))
     (arguments
@@ -13039,6 +13039,7 @@ cohesion with the Emacs Way.")
              (let ((fish (assoc-ref inputs "fish")))
                ;; Specify the absolute file names of the various
                ;; programs so that everything works out-of-the-box.
+               (make-file-writable "fish-completion.el")
                (emacs-substitute-variables
                    "fish-completion.el"
                  ("fish-completion-command"
-- 
2.22.0

From 9676f91fe96a4624ce6b698a452596da3de58fde Mon Sep 17 00:00:00 2001
From: Brian Leung <[email-masked]>
Date: Wed, 26 Jun 2019 02:07:55 +0200
Subject: [PATCH 04/10] gnu: emacs-company-restclient: Update to 0.3.0.

* gnu/packages/emacs-xyz.scm (emacs-company-restclient): Update to 0.3.0.
---
 gnu/packages/emacs-xyz.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index d58c89c6b0..4ab342192c 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -12522,7 +12522,7 @@ the current upstream.")
 (define-public emacs-company-restclient
   (package
     (name "emacs-company-restclient")
-    (version "0.1.0")
+    (version "0.3.0")
     (source
      (origin
        (method git-fetch)
@@ -12531,7 +12531,7 @@ the current upstream.")
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "0i1fh5lvqwlgn3g3fzh0xacxyljx6gkryipn133vfkv4jbns51n4"))))
+        (base32 "0yp0hlrgcr6yy1xkjvfckys2k24x9xg7y6336ma61bdwn5lpv0x0"))))
     (build-system emacs-build-system)
     (propagated-inputs
      `(("emacs-company" ,emacs-company)
-- 
2.22.0

From a192a69cb96cd161e77c8736c796645a7984dfb7 Mon Sep 17 00:00:00 2001
From: Brian Leung <[email-masked]>
Date: Wed, 26 Jun 2019 04:31:44 +0200
Subject: [PATCH 06/10] gnu: emacs-disk-usage: Don't use unstable tarball.

* gnu/packages/emacs-xyz.scm (emacs-disk-usage)[source]: Use GIT-FETCH and GIT-FILE-NAME.
[home-page] Move to usual location.
---
 gnu/packages/emacs-xyz.scm | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 15f3ae6489..8287b6afee 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -14883,18 +14883,18 @@ opposed to character-based).")
   (package
     (name "emacs-disk-usage")
     (version "1.3.3")
-    (home-page "https://gitlab.com/Ambrevar/emacs-disk-usage")
     (source
      (origin
-       (method url-fetch)
-       (uri (string-append
-             "https://elpa.gnu.org/packages/disk-usage-"
-             version
-             ".el"))
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://gitlab.com/Ambrevar/emacs-disk-usage.git")
+             (commit version)))
+       (file-name (git-file-name name version))
        (sha256
         (base32
-         "0h1jwznd41gi0vg830ilfgm01q05zknikzahwasm9cizwm2wyizj"))))
+         "0hv2gsd8k5fbjgckgiyisq4rn1i7y4rchbjy8kmixjv6mx563bll"))))
     (build-system emacs-build-system)
+    (home-page "https://gitlab.com/Ambrevar/emacs-disk-usage")
     (synopsis "Sort and browse disk usage listings with Emacs")
     (description "Disk Usage is a file system analyzer: it offers a tabulated
 view of file listings sorted by size.  Directory sizes are computed
-- 
2.22.0

From 58fb96b5637d74987b838bc7ba2c97382599f6a8 Mon Sep 17 00:00:00 2001
From: Brian Leung <[email-masked]>
Date: Wed, 26 Jun 2019 21:27:21 +0200
Subject: [PATCH 07/10] gnu: emacs-restclient: Update to 0-2.422ee8d.

* gnu/packages/emacs-xyz.scm (emacs-restclient): Update to 0-2.422ee8d.
---
 gnu/packages/emacs-xyz.scm | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 8287b6afee..99abc0637f 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -8291,13 +8291,13 @@ highlighting.")
     (license license:gpl3+)))
 
 (define-public emacs-restclient
-  (let ((commit "07a3888bb36d0e29608142ebe743b4362b800f40")
-        (revision "1"))                 ;Guix package revision,
+  (let ((commit "422ee8d8b077dffe65706a0f027ed700b84746bc")
+        (version "0")
+        (revision "2"))                 ;Guix package revision,
                                         ;upstream doesn't have official releases
     (package
       (name "emacs-restclient")
-      (version (string-append revision "."
-                              (string-take commit 7)))
+      (version (git-version version revision commit))
       (source (origin
                 (method git-fetch)
                 (uri (git-reference
@@ -8305,7 +8305,7 @@ highlighting.")
                       (commit commit)))
                 (sha256
                  (base32
-                  "00lmjhb5im1kgrp54yipf1h9pshxzgjlg71yf2rq5n973gvb0w0q"))
+                  "067nin7vxkdpffxa0q61ybv7szihhvpdinivmci9qkbb86rs9kkz"))
                 (file-name (git-file-name name version))))
       (build-system emacs-build-system)
       (propagated-inputs
-- 
2.22.0

From de955e06a5c71f65a5cfc1ce99e8172ecd74c044 Mon Sep 17 00:00:00 2001
From: Brian Leung <[email-masked]>
Date: Fri, 28 Jun 2019 04:09:07 +0200
Subject: [PATCH 09/10] gnu: emacs-zoutline: Update to 0.2.0.

* gnu/packages/emacs-xyz.scm (emacs-zoutline): Update to 0.2.0.
---
 gnu/packages/emacs-xyz.scm | 37 +++++++++++++++++++------------------
 1 file changed, 19 insertions(+), 18 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 8e8d174742..89a5e8931e 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -4727,25 +4727,26 @@ a temporary @code{keep-lines} or @code{occur}.")
     (license license:gpl3+)))
 
 (define-public emacs-zoutline
-  (let ((commit "b3ee0f0e0b916838c2d2c249beba74ffdb8d5699")
-        (revision "0"))
-    (package
-      (name "emacs-zoutline")
-      (version (git-version "0.1" revision commit))
-      (home-page "https://github.com/abo-abo/zoutline")
-      (source (origin
-                (method git-fetch)
-                (uri (git-reference (url home-page) (commit commit)))
-                (sha256
-                 (base32
-                  "0sd0017piw0dis6dhpq5dkqd3acisxqgipl7dj8gmc1vnswhdwr8"))
-                (file-name (git-file-name name version))))
-      (build-system emacs-build-system)
-      (synopsis "Simple outline library")
-      (description
-       "This library provides helpers for outlines.  Outlines allow users to
+  (package
+    (name "emacs-zoutline")
+    (version "0.2.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/abo-abo/zoutline")
+             (commit version)))
+       (sha256
+        (base32
+         "1w0zh6vs7klgivq5r030a82mcfg1zwic4x3fimyiqyg5n8p67hyx"))
+       (file-name (git-file-name name version))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/abo-abo/zoutline")
+    (synopsis "Simple outline library")
+    (description
+     "This library provides helpers for outlines.  Outlines allow users to
 navigate code in a tree-like fashion.")
-      (license license:gpl3+))))
+    (license license:gpl3+)))
 
 (define-public emacs-lispy
   (package
-- 
2.22.0

From e9321b0f6e25d70e9e2be84953224be974bbd499 Mon Sep 17 00:00:00 2001
From: Brian Leung <[email-masked]>
Date: Thu, 27 Jun 2019 09:14:32 +0200
Subject: [PATCH 08/10] gnu: emacs-md4rd: Update to 0.3.1.

* gnu/packages/emacs-xyz.scm (emacs-md4rd): Update to 0.3.1.
---
 gnu/packages/emacs-xyz.scm | 51 ++++++++++++++++++--------------------
 1 file changed, 24 insertions(+), 27 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 99abc0637f..8e8d174742 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -10645,33 +10645,30 @@ navigate and display hierarchy structures.")
       (license license:gpl3+))))
 
 (define-public emacs-md4rd
-  (let ((commit "c55512c2f7680db2a1e73db6bdf93adecaf40fec")
-        (revision "1"))
-    (package
-      (name "emacs-md4rd")
-      (version (string-append "0.0.2" "-" revision "."
-                              (string-take commit 7)))
-      (source (origin
-                (method git-fetch)
-                (uri (git-reference
-                      (url "https://github.com/ahungry/md4rd.git")
-                      (commit commit)))
-                (file-name (git-file-name name version))
-                (sha256
-                 (base32
-                  "0mvv1mvsrpkrmikcpfqf2zbawnzgq33j6zjdrlv48mcw57xb2ak9"))))
-      (propagated-inputs
-       `(("emacs-hierarchy" ,emacs-hierarchy)
-         ("emacs-request" ,emacs-request)
-         ("emacs-dash" ,emacs-dash)
-         ("emacs-s" ,emacs-s)
-         ("emacs-tree-mode" ,emacs-tree-mode)))
-      (build-system emacs-build-system)
-      (home-page "https://github.com/ahungry/md4rd")
-      (synopsis "Emacs Mode for Reddit")
-      (description
-       "This package allows to read Reddit from within Emacs interactively.")
-      (license license:gpl3+))))
+  (package
+    (name "emacs-md4rd")
+    (version "0.3.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/ahungry/md4rd.git")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1n6g6k4adzkkn1g7z4j27s35xy12c1fg2r08gv345ddr3wplq4ri"))))
+    (propagated-inputs
+     `(("emacs-hierarchy" ,emacs-hierarchy)
+       ("emacs-request" ,emacs-request)
+       ("emacs-dash" ,emacs-dash)
+       ("emacs-s" ,emacs-s)
+       ("emacs-tree-mode" ,emacs-tree-mode)))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/ahungry/md4rd")
+    (synopsis "Emacs Mode for Reddit")
+    (description
+     "This package allows to read Reddit from within Emacs interactively.")
+    (license license:gpl3+)))
 
 (define-public emacs-pulseaudio-control
   (let ((commit "7e1a87068379075a5e9ce36c64c686c03d20d379")
-- 
2.22.0

From 485d03d91941b10a9489c65c21209caad73f502d Mon Sep 17 00:00:00 2001
From: Brian Leung <[email-masked]>
Date: Fri, 28 Jun 2019 04:20:12 +0200
Subject: [PATCH 10/10] gnu: Add emacs-lpy.

* gnu/packages/emacs-xyz.scm (emacs-lpy): New variable.
---
 gnu/packages/emacs-xyz.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 89a5e8931e..59cfdd38e0 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -4806,6 +4806,36 @@ keybinding style.  The provided commands allow for editing Lisp in normal
 state and will work even without lispy being enabled.")
       (license license:gpl3+))))
 
+(define-public emacs-lpy
+  (let ((commit "553d28f7b6523ae5d44d34852ab770b871b0b0ad")
+        (version "0.1.0")
+        (revision "1"))
+    (package
+      (name "emacs-lpy")
+      (version (git-version version revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/abo-abo/lpy")
+               (commit commit)))
+         (sha256
+          (base32
+           "0kl9b3gga18cwv5cq4db8i6b7waj6mp3h2l7qjnp7wq6dpvwhn0i"))
+         (file-name (git-file-name name version))))
+      (propagated-inputs
+       `(("emacs-zoutline" ,emacs-zoutline)
+         ("emacs-lispy" ,emacs-lispy)))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/abo-abo/lpy")
+      (synopsis "Modal editing for Python")
+      (description
+       "This package provides a minor mode for Python that binds useful
+commands to unprefixed keys, such as @code{j} or @code{e}, under certain
+circumstances, and leaves the keys untouched outside of those situations,
+allowing unprefixed keys to insert their respective characters as expected.")
+      (license license:gpl3+))))
+
 (define-public emacs-clojure-mode
   (package
     (name "emacs-clojure-mode")
-- 
2.22.0