diff options
author | Xinglu Chen <public@yoctocell.xyz> | 2021-08-04 10:17:55 +0200 |
---|---|---|
committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2021-08-04 11:29:00 -0400 |
commit | dfb154e6d0e5cc1170f76a8dde90471a4a19eedf (patch) | |
tree | e9bae6cd709b2afd2868f3ded18322cc3df3a689 | |
parent | 62722229c20daf2e6b15ccbb5e2e85f27ab8eebe (diff) |
gnu: Add emacs-geiser-chez.
* gnu/packages/emacs-xyz.scm (emacs-geiser-chez): New variable.
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
-rw-r--r-- | gnu/packages/emacs-xyz.scm | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 47ace455c9..00dfce0aec 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -138,6 +138,7 @@ #:use-module (gnu packages aspell) #:use-module (gnu packages audio) #:use-module (gnu packages bash) + #:use-module (gnu packages chez) #:use-module (gnu packages cmake) #:use-module (gnu packages code) #:use-module (gnu packages cpp) @@ -408,6 +409,49 @@ a generic Scheme interaction mode for the GNU Emacs editor.") a generic Scheme interaction mode for the GNU Emacs editor.") (license license:bsd-3))) +(define-public emacs-geiser-chez + (package + (name "emacs-geiser-chez") + (version "0.16") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/emacs-geiser/chez") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0cc1z5z5cpvxa5f3n8kvms0wxlybzcg4l1bh3rwv1l1sb0lk1xzx")))) + (build-system emacs-build-system) + (arguments + '(#:include (cons "^src/" %default-include) + #:phases + (modify-phases %standard-phases + (add-after 'make-autoloads 'patch-autoloads + (lambda* (#:key outputs #:allow-other-keys) + (substitute* (string-append + (elpa-directory (assoc-ref outputs "out")) + "/geiser-chez-autoloads.el") + ;; Activating implementations fails when Geiser is not yet + ;; loaded, so let's defer that until it is. + ;; See <https://gitlab.com/emacs-geiser/chez/-/issues/7>. + (("\\(geiser-activate-implementation .*\\)" all) + (string-append + "(eval-after-load 'geiser-impl '" all ")")) + (("\\(geiser-implementation-extension .*\\)" all) + (string-append + "(eval-after-load 'geiser-impl '" all ")")))))))) + (inputs + `(("chez-scheme" ,chez-scheme))) + (propagated-inputs + `(("emacs-geiser" ,emacs-geiser))) + (home-page "https://nongnu.org/geiser/") + (synopsis "Support for Chez Scheme in Geiser") + (description + "This package adds support for using Chez Scheme in Emacs with Geiser.") + (license license:bsd-3))) + (define-public emacs-vc-hgcmd (package (name "emacs-vc-hgcmd") |