diff options
author | Dhruvin Gandhi via Guix-patches via <guix-patches@gnu.org> | 2021-06-29 18:59:35 +0530 |
---|---|---|
committer | Nicolas Goaziou <mail@nicolasgoaziou.fr> | 2021-07-02 09:13:28 +0200 |
commit | 050ec2390f3e1d55aab57f8f01b73fbb6e932683 (patch) | |
tree | 899ce7c9640ec7dbb11a26340338d36cda6ef12f /gnu | |
parent | 87232a8c2f07878a6bd31fe61a470a351722766b (diff) |
gnu: Add emacs-rustic.
* gnu/packages/emacs-xyz.scm (emacs-rustic): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/emacs-xyz.scm | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 5426c76c23..a38681ebcb 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -99,6 +99,7 @@ ;;; Copyright © 2021 Eugene Klimov <lipklim@mailbox.org> ;;; Copyright © 2021 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2021 David Dashyan <mail@davie.li> +;;; Copyright © 2021 Dhruvin Gandhi <contact@dhruvin.dev> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21039,6 +21040,62 @@ source code.") (license (list license:expat license:asl2.0)))) +(define-public emacs-rustic + ;; XXX: Upstream does not tag releases. Version is extracted from main + ;; file. + (let ((commit "bbf129cd128105de51b6c242b2551094b8d8987d") + (revision "0")) + (package + (name "emacs-rustic") + (version (git-version "1.3" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/brotzeit/rustic") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "09dnlvi8kf683n6q3yp4gy9d4idiyg4x6rcij8d90cvygh8i30wd")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-f" ,emacs-f) + ("emacs-flycheck" ,emacs-flycheck) + ("emacs-lsp-mode" ,emacs-lsp-mode) + ("emacs-markdown-mode" ,emacs-markdown-mode) + ("emacs-project" ,emacs-project) + ("emacs-s" ,emacs-s) + ("emacs-spinner" ,emacs-spinner) + ("emacs-xterm-color" ,emacs-xterm-color))) + (arguments + ;; Tests require rust, cargo, rustfmt, and various crates to be + ;; vendored. + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (add-before 'check 'set-without-cask + (lambda _ + (setenv "WITHOUT_CASK" "1")))))) + (home-page "https://github.com/brotzeit/rustic") + (synopsis "Rust development environment for Emacs") + (description "Rustic is a fork of Rust mode. +In addition to its predecessor, it offers the following features: +@itemize +@item Flycheck integration, +@item Cargo popup, +@item multiline error parsing, +@item translation of ANSI control sequences through XTerm color, +@item asynchronous Org Babel, +@item custom compilation process, +@item @command{rustfmt} errors in a Rust compilation mode, +@item automatic LSP configuration with Eglot or LSP mode, +@item optional Rust inline documentation, +@item etc. +@end itemize") + (license (list license:expat + license:asl2.0))))) + (define-public emacs-ztree ;; Upstream provides no tag, but the commit below matches latest release. (let ((commit "c9ad9136d52ca5a81475693864e255d29448f43f")) |