diff options
author | David Dashyan <mail@davie.li> | 2021-05-25 00:39:32 +0300 |
---|---|---|
committer | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2021-05-25 11:33:57 +0200 |
commit | ae88e30a0f8403e781f8b01262766cdc46b1018a (patch) | |
tree | a0829c3e1ac6ba61697912b80cfa555b758b04fd /gnu | |
parent | 7c1065030d5632ee5d83086df4014b80c3b6f8c2 (diff) | |
download | guix-patches-ae88e30a0f8403e781f8b01262766cdc46b1018a.tar guix-patches-ae88e30a0f8403e781f8b01262766cdc46b1018a.tar.gz |
gnu: Add emacs-geiser-racket.
* gnu/packages/emacs-xyz.scm (emacs-geiser-racket): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Diffstat (limited to 'gnu')
-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 23a52edecb..6ace04a88f 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -186,6 +186,7 @@ #:use-module (gnu packages package-management) #:use-module (gnu packages perl) #:use-module (gnu packages pdf) + #:use-module (gnu packages racket) #:use-module (gnu packages ruby) #:use-module (gnu packages rust-apps) #:use-module (gnu packages scheme) @@ -357,6 +358,49 @@ using geiser.") a generic Scheme interaction mode for the GNU Emacs editor.") (license license:expat))) +(define-public emacs-geiser-racket + (package + (name "emacs-geiser-racket") + (version "0.16") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/emacs-geiser/racket.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1aqsvmk1hi7kc3j4h8xlza7c6rwm71v98fv5wpw8kmyj9vsp49wx")))) + (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-racket-autoloads.el") + ;; Activating implementations fails when Geiser is not yet + ;; loaded, so let's defer that until it is. + (("\\(geiser-activate-implementation .*\\)" all) + (string-append + "(eval-after-load 'geiser-impl '" all ")")) + (("\\(geiser-implementation-extension .*\\)" all) + (string-append + "(eval-after-load 'geiser-impl '" all ")"))) + #t))))) + (inputs + `(("racket" ,racket))) + (propagated-inputs + `(("geiser" ,emacs-geiser))) + (home-page "https://nongnu.org/geiser/") + (synopsis "Racket support for Geiser") + (description + "This package adds support for the Racket implementation to Geiser, +a generic Scheme interaction mode for the GNU Emacs editor.") + (license license:bsd-3))) + (define-public emacs-vc-hgcmd (package (name "emacs-vc-hgcmd") |