gnu: Add miniasm.
authorRoel Janssen <roel@gnu.org>
Thu, 30 Apr 2020 13:30:16 +0000 (15:30 +0200)
committerRoel Janssen <roel@gnu.org>
Thu, 30 Apr 2020 13:30:16 +0000 (15:30 +0200)
* gnu/packages/bioinformatics.scm (miniasm): New variable.

gnu/packages/bioinformatics.scm

index 740ed66..65b4456 100644 (file)
@@ -13312,6 +13312,42 @@ cases include:
 @end enumerate\n")
     (license license:expat)))
 
+(define-public miniasm
+  (package
+   (name "miniasm")
+   (version "0.3")
+   (source (origin
+            (method url-fetch)
+            (uri (string-append
+                  "https://github.com/lh3/miniasm/archive/v"
+                  version ".tar.gz"))
+            (file-name (string-append name "-" version ".tar.gz"))
+            (sha256
+               (base32
+                "0g89pa98dvh34idv7w1zv12bsbyr3a11c4qb1cdcz68gyda88s4v"))))
+   (build-system gnu-build-system)
+   (inputs
+    `(("zlib" ,zlib)))
+   (arguments
+    `(#:tests? #f ; There are no tests.
+      #:phases
+      (modify-phases %standard-phases
+        (delete 'configure)
+        (replace 'install
+          (lambda* (#:key inputs outputs #:allow-other-keys)
+            (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
+              (install-file "miniasm" bin)
+              (install-file "minidot" bin)))))))
+   (home-page "https://github.com/lh3/miniasm")
+   (synopsis "Ultrafast de novo assembly for long noisy reads")
+   (description "Miniasm is a very fast OLC-based de novo assembler for noisy
+long reads.  It takes all-vs-all read self-mappings (typically by minimap) as
+input and outputs an assembly graph in the GFA format.  Different from
+mainstream assemblers, miniasm does not have a consensus step.  It simply
+concatenates pieces of read sequences to generate the final unitig sequences.
+Thus the per-base error rate is similar to the raw input reads.")
+   (license license:expat)))
+
 (define-public r-circus
   (package
     (name "r-circus")