lsp.scm 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. (define-module (emacs lsp)
  2. #:use-module ((guix licenses) #:prefix license:)
  3. #:use-module (guix build-system emacs)
  4. #:use-module (gnu packages emacs-xyz)
  5. #:use-module (fiio meghanada)
  6. #:use-module (guix packages)
  7. #:use-module (guix git-download))
  8. (define-public emacs-meghanada
  9. (package
  10. (name "emacs-meghanada")
  11. (version "1.2.0")
  12. (source
  13. (origin
  14. (method git-fetch)
  15. (uri (git-reference
  16. (url "https://github.com/mopemope/meghanada-emacs.git")
  17. (commit (string-append "v" version))))
  18. (file-name (git-file-name name version))
  19. (sha256
  20. (base32
  21. "1ripap7is2amk3i2mavwiiv5mfsx9k3gxpy9nyaz58pzgvyjqplc"))))
  22. (build-system emacs-build-system)
  23. (arguments
  24. `(#:phases
  25. (modify-phases %standard-phases
  26. (add-after 'unpack 'configure
  27. (lambda* (#:key inputs #:allow-other-keys)
  28. (chmod "meghanada.el" #o644)
  29. (emacs-substitute-variables "meghanada.el"
  30. ("meghanada-server-install-dir"
  31. (string-append (assoc-ref inputs "meghanada-server") "/share")))
  32. #t)))))
  33. (propagated-inputs
  34. `(("emacs-yasnippet" ,emacs-yasnippet)
  35. ("emacs-company" ,emacs-company)
  36. ("emacs-flycheck" ,emacs-flycheck)))
  37. (inputs
  38. `(("meghanada-server" ,meghanada-server)))
  39. (home-page
  40. "https://github.com/mopemope/meghanada-emacs")
  41. (synopsis "A better java development mode")
  42. (description
  43. "Meghanada has a server component which can read the AST of your
  44. project and its dependencies, providing features.")
  45. (license license:gpl3+)))