[PATCH 1/2] gnu: Add emacs-pretty-hydra.

  • Done
  • quality assurance status badge
Details
4 participants
  • Oleg Pykhalov
  • Joseph LaFreniere
  • Ludovic Courtès
  • Nicolas Goaziou
Owner
unassigned
Submitted by
Joseph LaFreniere
Severity
normal
J
J
Joseph LaFreniere wrote on 25 Jul 2020 04:04
(address . guix-patches@gnu.org)
87o8o4gxk9.fsf@odyssey.lafreniere.xyz
Patch file is attached. Note that `guix lint` reports "the source
file name should contain the package name"; I'm not sure how to
resolve that.

--
Joseph LaFreniere
From 512be2f3fd8cfcaa6014bcfa63f635c66135a05f Mon Sep 17 00:00:00 2001
From: Joseph LaFreniere <joseph@lafreniere.xyz>
Date: Sat, 18 Jul 2020 12:49:15 -0500
Subject: [PATCH 1/2] gnu: Add emacs-pretty-hydra.

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

Toggle diff (76 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 55afda50df..147c6b476b 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -649,6 +649,34 @@ process, passing on the arguments as command line arguments.")
"Magit-annex adds a few git-annex operations to the Magit interface.")
(license license:gpl3+))))
+(define-public emacs-pretty-hydra
+ (package
+ (name "emacs-pretty-hydra")
+ (version "0.2.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jerrypnz/major-mode-hydra.el")
+ (commit version)))
+ (sha256
+ (base32
+ "08a15knkdq35pzjq82imff016fbfdib5q4glg2xmdy2b5fnk7jqa"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)
+ ("emacs-hydra" ,emacs-hydra)
+ ("emacs-s" ,emacs-s)))
+ (arguments
+ `(#:install '("^pretty-hydra\\.el$")))
+ (home-page "https://github.com/jerrypnz/major-mode-hydra.el")
+ (synopsis "Major mode keybindings managed by Hydra")
+ (description
+ "This package offers an hydra-based method of managing major
+mode-specific key bindings. It is intended for use as a library only; see
+package @code{emacs-major-mode-hydra} for a user-friendly interface.")
+ (license license:gpl3+)))
+
(define-public emacs-minions
(package
(name "emacs-minions")
@@ -6148,6 +6176,34 @@ them easier to distinguish from other, less important buffers.")
for Ivy and Company that make use of the library.")
(license license:expat)))
+(define-public emacs-pretty-hydra
+ (package
+ (name "emacs-pretty-hydra")
+ (version "0.2.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jerrypnz/major-mode-hydra.el.git")
+ (commit version)))
+ (sha256
+ (base32
+ "08a15knkdq35pzjq82imff016fbfdib5q4glg2xmdy2b5fnk7jqa"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)
+ ("emacs-hydra" ,emacs-hydra)
+ ("emacs-s" ,emacs-s)))
+ (arguments
+ `(#:exclude (cons "^major-mode-hydra\\.el" %default-exclude)))
+ (home-page "https://github.com/jerrypnz/major-mode-hydra.el")
+ (synopsis "Major mode keybindings managed by Hydra")
+ (description
+ "This package offers an hydra-based method of managing major
+mode-specific key bindings. It is intended for use as a library only; see
+package @code{emacs-major-mode-hydra} for a user-friendly interface.")
+ (license license:gpl3+)))
+
(define-public emacs-selectrum
(package
(name "emacs-selectrum")
--
2.27.0
J
J
Joseph LaFreniere wrote on 25 Jul 2020 04:10
[PATCH 2/2] gnu: Add emacs-major-mode-hydra.
(address . guix-patches@gnu.org)
87lfj8gx9q.fsf@odyssey.lafreniere.xyz
Patch file is attached. Similar to the first patch in this
series, `guix lint` reports "the source file name should contain
the package name".

--
Joseph LaFreniere
From 0e528063cdc3a768059cb0be5c8430506b756b6e Mon Sep 17 00:00:00 2001
From: Joseph LaFreniere <joseph@lafreniere.xyz>
Date: Sat, 18 Jul 2020 12:50:22 -0500
Subject: [PATCH 2/2] gnu: Add emacs-major-mode-hydra.

* gnu/packages/emacs-xyz.scm (emacs-major-mode-hydra): New variable.
---
gnu/packages/emacs-xyz.scm | 14 ++++++++++++++
1 file changed, 14 insertions(+)

Toggle diff (27 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 147c6b476b..649f856a83 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -677,6 +677,20 @@ mode-specific key bindings. It is intended for use as a library only; see
package @code{emacs-major-mode-hydra} for a user-friendly interface.")
(license license:gpl3+)))
+(define-public emacs-major-mode-hydra
+ (package
+ (inherit emacs-pretty-hydra)
+ (name "emacs-major-mode-hydra")
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)
+ ("emacs-pretty-hydra" ,emacs-pretty-hydra)))
+ (arguments
+ `(#:include '("^major-mode-hydra\\.el$")))
+ (synopsis "Create nice-looking hydras")
+ (description
+ "This package provides the macro @code{pretty-hydra-define} to define
+hydras with one column per group of heads.")))
+
(define-public emacs-minions
(package
(name "emacs-minions")
--
2.27.0
O
O
Oleg Pykhalov wrote on 25 Jul 2020 15:28
(name . Joseph LaFreniere)(address . joseph@lafreniere.xyz)(address . 42525@debbugs.gnu.org)
87wo2rlo5z.fsf@gmail.com
Joseph LaFreniere <joseph@lafreniere.xyz> writes:

Toggle quote (3 lines)
> Patch file is attached. Similar to the first patch in this series, `guix
> lint` reports "the source file name should contain the package name".

Yes, because emacs-major-mode-hydra inherits emacs-pretty-hydra.


Does emacs-major-mode-hydra is useful without emacs-pretty-hydra and
vice versa?

I guess not, in that case we could just have emacs-pretty-hydra
containing '*.el' for both.

[…]

Toggle quote (15 lines)
> diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
> index 147c6b476b..649f856a83 100644
> --- a/gnu/packages/emacs-xyz.scm
> +++ b/gnu/packages/emacs-xyz.scm
> @@ -677,6 +677,20 @@ mode-specific key bindings. It is intended for use as a library only; see
> package @code{emacs-major-mode-hydra} for a user-friendly interface.")
> (license license:gpl3+)))
>
> +(define-public emacs-major-mode-hydra
> + (package
> + ...
> + (arguments
> + `(#:include '("^major-mode-hydra\\.el$")))
> + (synopsis "Create nice-looking hydras")

Could you extend the synopsis little bit? ;-)

Thanks,
Oleg.
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEcjhxI46s62NFSFhXFn+OpQAa+pwFAl8cM2gACgkQFn+OpQAa
+pz25w/+OUziwVpJuBYhRiP9Z8Gpz+GMxXuuspreaq3bgy3jymlyZuTtePrYvY/1
7YEdroBJ4+D9r5quciKK2ESPUp0E1plkxU2fft8tEJgykPAV+AL3YWLEREVd1LrT
K4TpSJkDpBFG/7ZLfFYlJXuLQmKnmCE25AjT4BVXe02UEQvEut06hKHS4o1w5DPS
R9iPX3i20uM6ZT/034kPDaRmokpDEWgshjt8LoIIMMZQGPfj5LM16SWWWxMmJxQ2
ImursVlRB8al6fTz5IJSDvsBJer9JmnK78hXhmfEfeXub/ONZTiHT4BWiThgc3b9
v2EdMFKA8e+8SuZjfLtdeMrbrTfCJpzi3fvZio0JHjJ11hH+DKSbLcYSzLURj+eh
yur4pZAE2Z17iEkNEf7wm5ZNLvqHLe8MEFlO9kfE6quOhqhq75/tiA4tM+5/8hL5
zG2tFNgRwhPutvQICu2H/6x+5T3cc5FZKiaVUaGkuZUGOjgJYnJ9nOGwrs3fDain
LeNNdfS19NhlJXg6RnqJwA+injuoH+KZ/H29zEj0Pg+KtI/TlAOGwOr++WmQe90z
SHDp/lOuYMSMPzEcswnjd6wZK+8YQMkdovFoegAOmeXaO4yb5pp+nKR7fBVb3onH
NJmy8nBX5PdwONtQh9Nx7ReYE/pOk4v7SgMufOVMWtooGoEX0uc=
=BcjL
-----END PGP SIGNATURE-----

O
O
Oleg Pykhalov wrote on 25 Jul 2020 15:20
Re: [bug#42525] [PATCH 1/2] gnu: Add emacs-pretty-hydra.
(name . Joseph LaFreniere)(address . joseph@lafreniere.xyz)(address . 42525@debbugs.gnu.org)
871rkzn32e.fsf@gmail.com
Hi Joseph,

Joseph LaFreniere <joseph@lafreniere.xyz> writes:

Toggle quote (3 lines)
> Patch file is attached. Note that `guix lint` reports "the source file name
> should contain the package name"; I'm not sure how to resolve that.

You could fix this by providing a ‘(file-name (git-file-name name
version))’ as in other Emacs packages.

[…]

Toggle quote (19 lines)
> * gnu/packages/emacs-xyz.scm (emacs-pretty-hydra): New variable.
> ---
> gnu/packages/emacs-xyz.scm | 56 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 56 insertions(+)
>
> diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
> index 55afda50df..147c6b476b 100644
> --- a/gnu/packages/emacs-xyz.scm
> +++ b/gnu/packages/emacs-xyz.scm
> @@ -649,6 +649,34 @@ process, passing on the arguments as command line arguments.")
> "Magit-annex adds a few git-annex operations to the Magit interface.")
> (license license:gpl3+))))
>
> +(define-public emacs-pretty-hydra
> + (package
> + ...
> + (arguments
> + `(#:install '("^pretty-hydra\\.el$")))

'emacs-build-system' handles '*.el' files, unless you exclude them with
the recipe bellow. :-)

[…]


The following duplicates emacs-pretty-hydra above.

Toggle quote (21 lines)
> +(define-public emacs-pretty-hydra
> + (package
> + (name "emacs-pretty-hydra")
> + (version "0.2.2")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/jerrypnz/major-mode-hydra.el.git")
> + (commit version)))
> + (sha256
> + (base32
> + "08a15knkdq35pzjq82imff016fbfdib5q4glg2xmdy2b5fnk7jqa"))))
> + (build-system emacs-build-system)
> + (propagated-inputs
> + `(("emacs-dash" ,emacs-dash)
> + ("emacs-hydra" ,emacs-hydra)
> + ("emacs-s" ,emacs-s)))
> + (arguments
> + `(#:exclude (cons "^major-mode-hydra\\.el" %default-exclude)))

As I see there is no reason to exclude or include '*.el'.


Also could you take a look on running a test suite?

Thanks,
Oleg.
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEcjhxI46s62NFSFhXFn+OpQAa+pwFAl8cMbkACgkQFn+OpQAa
+pzqvA//UOuHMWz4vzCWgSSWGdwbwjDLKiZ3QLqM61CdjPRC8d0IR5lRRkmNZa1w
4YuQFK5A/Jvb19Wcvb3fnoLpznNY0VRYOAHPuPQ9BQV12FB7yevI08Wan+QXydvS
moDgib7Dytta/uIXAhYMwc3c5yF3Dip5biBIlBg7mUBFgx/Px4twlskswPBHI0QK
JolvJo9r0fHHGQaBYjkONp3riLgR9yWh3+vxsIKpsMu1WD4QB0kLaoQUoL0YcM6E
ejMvp5SXEjcBBrcBy+Nyo6dqekX/CpGKVdJuzoAcHTwdsShNcyAU7Skx2sca7DfH
qDgB9xLfkTAGikwb/+MHiWpXXyjQZmFU64hBrgO/3NUWzkQuuWv/rtsuLGSdRYo+
TF1qT5KIqc6I8qGe6NVy0N1j2q9DRTAzfSlA0guw27SBg/kG3EBbw1hQXGR80m2Y
vwgF6x4sslr68bpFpp1s/J1zEXfJSE7KVgkAOQ6XIk3Jbqysx5D1tbKnBLAcBryW
OIJxgECXu5po0TVSCZq+EzSNd1TIWNqvqVsDXzcauAeptLXX18racTk/FvygJaY9
OljlaLNCGK7+iCNhFEUR1+0Kx+XFzwRDLbP7HL1LYnK9BCm/jBAzeFU4Hvhhg6jn
kEUtMMrCZH0E0sgERPHMdpO8dJ7iRfbga4xzb17vvcK3U6Pu+6Q=
=KnaZ
-----END PGP SIGNATURE-----

L
L
LaFreniere, Joseph wrote on 25 Jul 2020 16:57
(name . Oleg Pykhalov)(address . go.wigust@gmail.com)
87tuxvskuu.fsf@odyssey.lafreniere.xyz
Oleg Pykhalov <go.wigust@gmail.com> writes:
Toggle quote (11 lines)
> Joseph LaFreniere <joseph@lafreniere.xyz> writes:
>
>> Patch file is attached. Note that `guix lint` reports "the
>> source file name
>> should contain the package name"; I'm not sure how to resolve
>> that.
>
> You could fix this by providing a ‘(file-name (git-file-name
> name
> version))’ as in other Emacs packages.

Thanks. Not sure how I missed that.

Toggle quote (4 lines)
> 'emacs-build-system' handles '*.el' files, unless you exclude
> them with
> the recipe bellow. :-)

Thank you for the tip. I have changed the include to an exclude.

Toggle quote (2 lines)
> Also could you take a look on running a test suite?

The repo's test suite tests both pretty-hydra and
major-mode-hydra. Since major-mode-hydra is inheriting from and
depends on this recipe, I'm assuming it would be rebuilt any time
the pretty-hydra recipe changes. Just to minimize the amount of
work prying apart the repository I have left all of the tests to
be run in the recipe for major-mode-hydra. The updated patch for
that will be following shortly.

--
Joseph LaFreniere
From a08a763c0a7aa09349bdc9e65ac2d27a3c640a54 Mon Sep 17 00:00:00 2001
From: Joseph LaFreniere <joseph@lafreniere.xyz>
Date: Sat, 18 Jul 2020 12:49:15 -0500
Subject: [PATCH 1/2] gnu: Add emacs-pretty-hydra.

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

Toggle diff (40 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index db395361b9..c11959dbe2 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -649,6 +649,33 @@ process, passing on the arguments as command line arguments.")
"Magit-annex adds a few git-annex operations to the Magit interface.")
(license license:gpl3+))))
+(define-public emacs-pretty-hydra
+ (package
+ (name "emacs-pretty-hydra")
+ (version "0.2.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jerrypnz/major-mode-hydra.el")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "08a15knkdq35pzjq82imff016fbfdib5q4glg2xmdy2b5fnk7jqa"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)
+ ("emacs-hydra" ,emacs-hydra)
+ ("emacs-s" ,emacs-s)))
+ (arguments
+ `(#:exclude (cons "^major-mode-hydra\\.el" %default-exclude)))
+ (home-page "https://github.com/jerrypnz/major-mode-hydra.el")
+ (synopsis "Create nice-looking hydras")
+ (description
+ "This package provides the macro @code{pretty-hydra-define} to define
+hydras with one column per group of heads.")
+ (license license:gpl3+)))
+
(define-public emacs-minions
(package
(name "emacs-minions")
--
2.27.0
L
L
LaFreniere, Joseph wrote on 25 Jul 2020 17:02
Re: [bug#42525] [PATCH 2/2] gnu: Add emacs-major-mode-hydra.
(name . Oleg Pykhalov)(address . go.wigust@gmail.com)(address . 42525@debbugs.gnu.org)
87r1szsknr.fsf@odyssey.lafreniere.xyz
Thank you for the reviews, Oleg. :)

Oleg Pykhalov <go.wigust@gmail.com> writes:
Toggle quote (9 lines)
> Joseph LaFreniere <joseph@lafreniere.xyz> writes:
>
>> Patch file is attached. Similar to the first patch in this
>> series, `guix
>> lint` reports "the source file name should contain the package
>> name".
>
> Yes, because emacs-major-mode-hydra inherits emacs-pretty-hydra.

Fixed in the updated patch for emacs-pretty-hydra.

Toggle quote (7 lines)
> Does emacs-major-mode-hydra is useful without emacs-pretty-hydra
> and
> vice versa?
>
> I guess not, in that case we could just have emacs-pretty-hydra
> containing '*.el' for both.

Yes, emacs-pretty-hydra is useful independently of
emacs-major-mode-hydra. The descriptions in the initial patches
were written a long time ago and were misleading. I apologize for
the confusion.

Toggle quote (2 lines)
> Could you extend the synopsis little bit? ;-)

Missed this comment in the updated patch for emacs-pretty-hydra
that I just sent. I will revisit it following this mail. Is the
synopsis for this recipe (emacs-major-mode-hyra) suitable?

--
Joseph LaFreniere
From 01cec639c237f582a9e4ecbfec1f483009bbba36 Mon Sep 17 00:00:00 2001
From: Joseph LaFreniere <joseph@lafreniere.xyz>
Date: Sat, 18 Jul 2020 12:50:22 -0500
Subject: [PATCH 2/2] gnu: Add emacs-major-mode-hydra.

* gnu/packages/emacs-xyz.scm (emacs-major-mode-hydra): New variable.
---
gnu/packages/emacs-xyz.scm | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)

Toggle diff (32 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index c11959dbe2..195586ca71 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -676,6 +676,25 @@ process, passing on the arguments as command line arguments.")
hydras with one column per group of heads.")
(license license:gpl3+)))
+(define-public emacs-major-mode-hydra
+ (package
+ (inherit emacs-pretty-hydra)
+ (name "emacs-major-mode-hydra")
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)
+ ("emacs-pretty-hydra" ,emacs-pretty-hydra)))
+ (native-inputs
+ `(("emacs-ert-runner" ,emacs-ert-runner)
+ ("emacs-use-package" ,emacs-use-package) ))
+ (arguments
+ `(#:exclude (cons "^pretty-hydra\\.el$" %default-exclude)
+ #:tests? #t
+ #:test-command '("ert-runner")))
+ (synopsis "Major mode keybindings managed by Hydra")
+ (description
+ "This package offers a hydra-based method of managing major mode-specific
+key bindings.")))
+
(define-public emacs-minions
(package
(name "emacs-minions")
--
2.27.0
L
L
LaFreniere, Joseph wrote on 25 Jul 2020 17:05
Re: [bug#42525] [PATCH 1/2] gnu: Add emacs-pretty-hydra.
87o8o3skil.fsf@odyssey.lafreniere.xyz
LaFreniere, Joseph <joseph@lafreniere.xyz> writes:
Toggle quote (33 lines)
> Oleg Pykhalov <go.wigust@gmail.com> writes:
>> Joseph LaFreniere <joseph@lafreniere.xyz> writes:
>>
>>> Patch file is attached. Note that `guix lint` reports "the
>>> source file name
>>> should contain the package name"; I'm not sure how to resolve
>>> that.
>>
>> You could fix this by providing a ‘(file-name (git-file-name
>> name
>> version))’ as in other Emacs packages.
>
> Thanks. Not sure how I missed that.
>
>> 'emacs-build-system' handles '*.el' files, unless you exclude
>> them with
>> the recipe bellow. :-)
>
> Thank you for the tip. I have changed the include to an
> exclude.
>
>> Also could you take a look on running a test suite?
>
> The repo's test suite tests both pretty-hydra and
> major-mode-hydra. Since major-mode-hydra is inheriting from and
> depends on this recipe, I'm assuming it would be rebuilt any
> time
> the pretty-hydra recipe changes. Just to minimize the amount of
> work prying apart the repository I have left all of the tests to
> be run in the recipe for major-mode-hydra. The updated patch
> for
> that will be following shortly.

An updated patch for emacs-pretty-hydra is attached with an
expanded synopsis.

--
Joseph LaFreniere
From f837604e2a8f405e9e6a9473492be56fc3db004d Mon Sep 17 00:00:00 2001
From: Joseph LaFreniere <joseph@lafreniere.xyz>
Date: Sat, 18 Jul 2020 12:49:15 -0500
Subject: [PATCH 1/2] gnu: Add emacs-pretty-hydra.

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

Toggle diff (40 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index db395361b9..12f295a1c1 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -649,6 +649,33 @@ process, passing on the arguments as command line arguments.")
"Magit-annex adds a few git-annex operations to the Magit interface.")
(license license:gpl3+))))
+(define-public emacs-pretty-hydra
+ (package
+ (name "emacs-pretty-hydra")
+ (version "0.2.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jerrypnz/major-mode-hydra.el")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "08a15knkdq35pzjq82imff016fbfdib5q4glg2xmdy2b5fnk7jqa"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)
+ ("emacs-hydra" ,emacs-hydra)
+ ("emacs-s" ,emacs-s)))
+ (arguments
+ `(#:exclude (cons "^major-mode-hydra\\.el" %default-exclude)))
+ (home-page "https://github.com/jerrypnz/major-mode-hydra.el")
+ (synopsis "Create hydras with one column per group of heads.")
+ (description
+ "This package provides the macro @code{pretty-hydra-define} to define
+hydras with one column per group of heads.")
+ (license license:gpl3+)))
+
(define-public emacs-minions
(package
(name "emacs-minions")
--
2.27.0
O
O
Oleg Pykhalov wrote on 25 Jul 2020 20:34
(name . LaFreniere, Joseph)(address . joseph@lafreniere.xyz)(address . 42525@debbugs.gnu.org)
87k0yrl9yr.fsf@gmail.com
"LaFreniere, Joseph" <joseph@lafreniere.xyz> writes:

[…]

Toggle quote (8 lines)
>> Also could you take a look on running a test suite?
>
> The repo's test suite tests both pretty-hydra and major-mode-hydra. Since
> major-mode-hydra is inheriting from and depends on this recipe, I'm assuming
> it would be rebuilt any time the pretty-hydra recipe changes. Just to
> minimize the amount of work prying apart the repository I have left all of the
> tests to be run in the recipe for major-mode-hydra.

Yes, it will, that's a feature of Guix. ;-)

The ‘test’ directory contains ‘major-mode-hydra-test.el’ and
‘pretty-hydra-test.el’ which could be runned by themself AFAICC. In
that case, if somebody will need to change ‘pretty-hydra’ recipe, he
will run the test and be sure the package functions as intended. Would
you like take a look on this, please?

Toggle quote (2 lines)
> The updated patch for that will be following shortly.

We don't hurry. ;-) Also, you don't need to attach a patch if you are
working on a thing and will send another one in a day.

Regards,
Oleg.
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEcjhxI46s62NFSFhXFn+OpQAa+pwFAl8ce0wACgkQFn+OpQAa
+pxrfQ/9GSTeu4PnclMFkLIQRvpdRKKshr2TFAhuSeuUvfvSPsXI6WwBoX0GVwxx
7epLdqnylSGYqOPsN5s1Ej/4oGQy+H8Sb18kW3gguu2rvKVRfryrUQOEPMu96jIB
1pyQe9MLP71r17Uv/R/YMXyIoRJ7vdLi8FtLMqGwVIIv8YiYd5r6XPPuCafLFVP/
7gmyNhLOcbH142811T5mhQm8PCRh/sf2yWPSfxZeR2nI8DWFmKnvypauTjPPuJNe
86DKyN37M7iMcO9ZOI7e17Jp3oYVObYuYWBqQLvfIaJHwUrbXvhTHLBv9SGCuTgV
7NO3L5FOMlBAwk81LnIGc6jdAqmByELFbezpv4sn34tUiRa1l+B615XuI+ZgrhJ0
Xjl8PycUw5Yd9WOIx6dTV0RTbRypCJBG5fQ0oyukkK3/phrVv9W0erACvoOUxezr
qK13ieoy6y2Y/OqpCaCniSVVcCHLumxVv++jYgnPUYjDVD+Kswy1wYEBrkn28ILR
I2vLozjBPI8yXYe9vPiUkeNkQIg5rOd/lUv2c+Eh48yH/Al5mrHrrk+gPPuk3uBx
uoMAQCOMIgEQdzufOqhhyTi87gyIEiOMfoxksbnwOAkGjOUHVXk8LcPxTlcIE2AI
2ZOYHdTaNZFqeA8DBF/HcP1W4HoQ6F7/qi86E9txiSvEya6PVxI=
=9cqA
-----END PGP SIGNATURE-----

N
N
Nicolas Goaziou wrote on 26 Jul 2020 16:04
(name . Joseph LaFreniere)(address . joseph@lafreniere.xyz)(address . 42525@debbugs.gnu.org)
87d04inzi4.fsf@nicolasgoaziou.fr
Hello,

Joseph LaFreniere <joseph@lafreniere.xyz> writes:

Toggle quote (2 lines)
> Patch file is attached.

Thank you.

Toggle quote (3 lines)
> Note that `guix lint` reports "the source file name should contain the
> package name"; I'm not sure how to resolve that.

You are missing a

(file-name (git-file-name name version))

expression in `origin'.

Toggle quote (14 lines)
> +(define-public emacs-pretty-hydra
> + (package
> + (name "emacs-pretty-hydra")
> + (version "0.2.2")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/jerrypnz/major-mode-hydra.el")
> + (commit version)))
> + (sha256
> + (base32
> + "08a15knkdq35pzjq82imff016fbfdib5q4glg2xmdy2b5fnk7jqa"))))

Nitpick: please move the string on the same line as `base32'.

Toggle quote (2 lines)
> + (build-system emacs-build-system)

There are some tests using ert-runner. Could you try to enable them?

Toggle quote (23 lines)
> + (propagated-inputs
> + `(("emacs-dash" ,emacs-dash)
> + ("emacs-hydra" ,emacs-hydra)
> + ("emacs-s" ,emacs-s)))
> + (arguments
> + `(#:install '("^pretty-hydra\\.el$")))
> + (home-page "https://github.com/jerrypnz/major-mode-hydra.el")
> + (synopsis "Major mode keybindings managed by Hydra")
> + (description
> + "This package offers an hydra-based method of managing major
> +mode-specific key bindings. It is intended for use as a library only; see
> +package @code{emacs-major-mode-hydra} for a user-friendly interface.")
> + (license license:gpl3+)))
> +
> (define-public emacs-minions
> (package
> (name "emacs-minions")
> @@ -6148,6 +6176,34 @@ them easier to distinguish from other, less important buffers.")
> for Ivy and Company that make use of the library.")
> (license license:expat)))
>
> +(define-public emacs-pretty-hydra

You added the package twice.

Could you send an updated patch?

Regards,
--
Nicolas Goaziou
L
L
Ludovic Courtès wrote on 18 Dec 2020 14:24
Re: [bug#42525] [PATCH 2/2] gnu: Add emacs-major-mode-hydra.
(name . LaFreniere, Joseph)(address . joseph@lafreniere.xyz)(address . 42525-done@debbugs.gnu.org)
87sg83ckmx.fsf@gnu.org
Both patches were applied some time ago in
90eb5dd6b5989eeb5350c785036c53469496e394.

Closing!

Ludo’.
Closed
?