Hi Joseph, Joseph LaFreniere 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. […] > * 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. > +(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.