Subject: [bug#46392] [PATCH] gnu: Add nixfmt.

From: EuAndreh <[email-masked]>
Date: Mon, 8 Feb 2021 22:14:52 -0300

* gnu/packages/haskell-xyz.scm (nixfmt): New variable.
---
A quick note: the Hackage importer worked suprisingly well. It was even
able to properly define the synopsis and description fields!

 gnu/packages/haskell-xyz.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index d6c50ade71..aff3303cb3 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -28,6 +28,7 @@
 ;;; Copyright © 2020 Alexandru-Sergiu Marton <[email-masked]>
 ;;; Copyright © 2020 Carlo Holl <[email-masked]>
 ;;; Copyright © 2020 Christopher Lemmer Webber <[email-masked]>
+;;; Copyright © 2021 EuAndreh <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -8693,6 +8694,36 @@ making this package a full replacement for the original newtype package,
 and an alternative to newtype-th.")
     (license license:bsd-3)))
 
+(define-public nixfmt
+  (package
+    (name "nixfmt")
+    (version "0.4.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "https://hackage.haskell.org/package/nixfmt/nixfmt-"
+               version
+               ".tar.gz"))
+        (sha256
+          (base32
+            "1ispgl8rc2scr6v8bb6sks7px856jf61x74zj2iyddrn5qamkb3n"))))
+    (build-system haskell-build-system)
+    (inputs
+      `(("ghc-megaparsec" ,ghc-megaparsec)
+        ("ghc-parser-combinators" ,ghc-parser-combinators)
+        ("ghc-cmdargs" ,ghc-cmdargs)
+        ("ghc-safe-exceptions" ,ghc-safe-exceptions)))
+    (arguments
+      `(#:cabal-revision
+        ("1" "1hsj0jh6siph3afd9c2wii09sffl48rzqv653n4clpd8qy0rn48d")))
+    (home-page "https://github.com/serokell/nixfmt")
+    (synopsis "An opinionated formatter for Nix")
+    (description
+      "A formatter for Nix that ensures consistent and clear formatting
+by forgetting all existing formatting during parsing.")
+    (license license:mpl2.0)))
+
 (define-public ghc-non-negative
   (package
     (name "ghc-non-negative")
-- 
2.30.0