gnu: Add ghc-hindent.
* gnu/packages/haskell.scm (ghc-hindent): New variable.
This commit is contained in:
parent
697cae2a67
commit
64b7c06e18
|
@ -42,6 +42,7 @@
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
#:use-module (gnu packages elf)
|
#:use-module (gnu packages elf)
|
||||||
|
#:use-module (gnu packages emacs)
|
||||||
#:use-module (gnu packages gcc)
|
#:use-module (gnu packages gcc)
|
||||||
#:use-module (gnu packages ghostscript)
|
#:use-module (gnu packages ghostscript)
|
||||||
#:use-module (gnu packages gl)
|
#:use-module (gnu packages gl)
|
||||||
|
@ -11727,6 +11728,65 @@ recursive scanning and copying of directories, working with temporary
|
||||||
files/directories, and more.")
|
files/directories, and more.")
|
||||||
(license license:bsd-3)))
|
(license license:bsd-3)))
|
||||||
|
|
||||||
|
(define-public ghc-hindent
|
||||||
|
(package
|
||||||
|
(name "ghc-hindent")
|
||||||
|
(version "5.3.0")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append
|
||||||
|
"https://hackage.haskell.org/package/hindent/hindent-"
|
||||||
|
version
|
||||||
|
".tar.gz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0wkfik7mvqskk23kyh7ybgnlh3j9j1ym7d3ncahsbli9w654b7xg"))))
|
||||||
|
(build-system haskell-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:modules ((guix build haskell-build-system)
|
||||||
|
(guix build utils)
|
||||||
|
(guix build emacs-utils))
|
||||||
|
#:imported-modules (,@%haskell-build-system-modules
|
||||||
|
(guix build emacs-utils))
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'install 'emacs-install
|
||||||
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
|
(let* ((out (assoc-ref outputs "out"))
|
||||||
|
(elisp-file "elisp/hindent.el")
|
||||||
|
(dest (string-append out "/share/emacs/site-lisp"
|
||||||
|
"/guix.d/hindent-" ,version))
|
||||||
|
(emacs (string-append (assoc-ref inputs "emacs")
|
||||||
|
"/bin/emacs")))
|
||||||
|
(make-file-writable elisp-file)
|
||||||
|
(emacs-substitute-variables elisp-file
|
||||||
|
("hindent-process-path"
|
||||||
|
(string-append out "/bin/hindent")))
|
||||||
|
(install-file elisp-file dest)
|
||||||
|
(emacs-generate-autoloads "hindent" dest)))))))
|
||||||
|
(inputs
|
||||||
|
`(("ghc-haskell-src-exts" ,ghc-haskell-src-exts)
|
||||||
|
("ghc-monad-loops" ,ghc-monad-loops)
|
||||||
|
("ghc-utf8-string" ,ghc-utf8-string)
|
||||||
|
("ghc-exceptions" ,ghc-exceptions)
|
||||||
|
("ghc-yaml" ,ghc-yaml)
|
||||||
|
("ghc-unix-compat" ,ghc-unix-compat)
|
||||||
|
("ghc-path" ,ghc-path)
|
||||||
|
("ghc-path-io" ,ghc-path-io)
|
||||||
|
("ghc-optparse-applicative" ,ghc-optparse-applicative)))
|
||||||
|
(native-inputs
|
||||||
|
`(("ghc-hspec" ,ghc-hspec)
|
||||||
|
("ghc-diff" ,ghc-diff)
|
||||||
|
("emacs" ,emacs-minimal)))
|
||||||
|
(home-page
|
||||||
|
"https://github.com/commercialhaskell/hindent")
|
||||||
|
(synopsis "Extensible Haskell pretty printer")
|
||||||
|
(description
|
||||||
|
"This package provides automatic formatting for Haskell files. Both a
|
||||||
|
library and an executable.")
|
||||||
|
(license license:bsd-3)))
|
||||||
|
|
||||||
(define-public ghc-descriptive
|
(define-public ghc-descriptive
|
||||||
(package
|
(package
|
||||||
(name "ghc-descriptive")
|
(name "ghc-descriptive")
|
||||||
|
|
Loading…
Reference in New Issue