summary refs log tree commit diff
diff options
context:
space:
mode:
authoraecepoglu <aecepoglu@fastmail.fm>2021-02-04 14:39:12 +0300
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2021-02-04 15:55:09 +0100
commitfce47b7576b7e4336e229d75b12d6bf0f4a2f2c9 (patch)
tree56049f418041631dc6cce0d996fbd4eb5a0239da
parentfa99c976788de683cef899f4638948f5962bd5ff (diff)
downloadguix-fce47b7576b7e4336e229d75b12d6bf0f4a2f2c9.tar.gz
gnu: Add kak-lsp.
* gnu/packages/crates-io.scm (kak-lsp): New variable.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
-rw-r--r--gnu/packages/text-editors.scm47
1 files changed, 47 insertions, 0 deletions
diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm
index 052dfa1236..5d24a8fa68 100644
--- a/gnu/packages/text-editors.scm
+++ b/gnu/packages/text-editors.scm
@@ -13,6 +13,7 @@
 ;;; Copyright © 2020 Tom Zander <tomz@freedommail.ch>
 ;;; Copyright © 2020 Mark Meyer <mark@ofosos.org>
 ;;; Copyright © 2020 Maxime Devos <maximedevos@telenet.be>
+;;; Copyright © 2021 aecepoglu <aecepoglu@fastmail.fm>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -34,6 +35,7 @@
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix utils)
+  #:use-module (guix build-system cargo)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system cmake)
@@ -46,6 +48,7 @@
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages code)
+  #:use-module (gnu packages crates-io)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages freedesktop)
@@ -204,6 +207,50 @@ competitive (as in keystroke count) with Vim.")
     (home-page "https://kakoune.org/")
     (license license:unlicense)))
 
+(define-public kak-lsp
+  (package
+    (name "kak-lsp")
+    (version "9.0.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/kak-lsp/kak-lsp")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256 "1wfv2fy5ga6kc51zka3pak0hq97csm2l11bz74w3n1hrf5q9nnf8")))
+    (build-system cargo-build-system)
+    (arguments
+     `(#:cargo-inputs
+       (("rust-crossbeam-channel" ,rust-crossbeam-channel-0.4)
+        ("rust-clap" ,rust-clap-2)
+        ("rust-daemonize" ,rust-daemonize-0.4)
+        ("rust-dirs" ,rust-dirs-2)
+        ("rust-enum_primitive" ,rust-enum-primitive-0.1)
+        ("rust-glob" ,rust-glob-0.3)
+        ("rust-itertools" ,rust-itertools-0.9)
+        ("rust-lsp-types" ,rust-lsp-types-0.80)
+        ("rust-jsonrpc-core" ,rust-jsonrpc-core-14)
+        ("rust-libc" ,rust-libc-0.2)
+        ("rust-rand" ,rust-rand-0.7)
+        ("rust-regex" ,rust-regex-1)
+        ("rust-ropey" ,rust-ropey-1)
+        ("rust-serde" ,rust-serde-1)
+        ("rust-serde_derive" ,rust-serde-derive-1)
+        ("rust-serde_json" ,rust-serde-json-1)
+        ("rust-slog" ,rust-slog-2)
+        ("rust-slog-scope" ,rust-slog-scope-4)
+        ("rust-sloggers" ,rust-sloggers-1)
+        ("rust-toml" ,rust-toml-0.5)
+        ("rust-url" ,rust-url-2)
+        ("rust-whoami" ,rust-whoami-0.8))))
+    (home-page "https://github.com/kak-lsp/kak-lsp")
+    (synopsis "Language Server Protocol (LSP) client for Kakoune")
+    (description
+     "kak-lsp is a Language Server Protocol client for Kakoune implemented in
+Rust.")
+    (license license:unlicense)))
+
 (define-public joe
   (package
     (name "joe")