about summary refs log tree commit diff
path: root/pkgs/by-name/fa
diff options
context:
space:
mode:
authorOTABI Tomoya <tomoya.otabi@gmail.com>2024-05-06 13:07:34 +0900
committerGitHub <noreply@github.com>2024-05-06 13:07:34 +0900
commit03b825b67164352ada442c6829e9b9f43d02403c (patch)
tree76f0607441071da46100abc315d7e7b5d94b229f /pkgs/by-name/fa
parent63593818f4e1493841b1b13044d71e258f062d67 (diff)
parent84726cfe4263043e3c55290680c6e47dfc3d9e9d (diff)
Merge pull request #308495 from natsukium/fastahack/init
fastahack: init at 1.0.0
Diffstat (limited to 'pkgs/by-name/fa')
-rw-r--r--pkgs/by-name/fa/fastahack/package.nix43
1 files changed, 43 insertions, 0 deletions
diff --git a/pkgs/by-name/fa/fastahack/package.nix b/pkgs/by-name/fa/fastahack/package.nix
new file mode 100644
index 0000000000000..ed8f342007ba1
--- /dev/null
+++ b/pkgs/by-name/fa/fastahack/package.nix
@@ -0,0 +1,43 @@
+{
+  lib,
+  stdenv,
+  fetchFromGitHub,
+  runCommand,
+  fastahack,
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "fastahack";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "ekg";
+    repo = "fastahack";
+    rev = "refs/tags/v${finalAttrs.version}";
+    hash = "sha256-SWu2iRwNgdhsn4sH9/3jPNG3+l1xFAHXPq5/ODVd4WY=";
+  };
+
+  installFlags = [ "PREFIX=${placeholder "out"}" ];
+
+  passthru.tests = {
+    simple = runCommand "${finalAttrs.pname}-test" { } ''
+      mkdir $out
+      cp ${fastahack.src}/tests/* $out
+      grep -v ERROR <(${lib.getExe fastahack} $out/correct.fasta 2>&1)
+      grep -v ERROR <(${lib.getExe fastahack} $out/crlf.fasta 2>&1)
+      grep "ERROR: embedded newline " <(${lib.getExe fastahack} $out/embedded_newline.fasta 2>&1)
+      grep "ERROR: mismatched line lengths" <(${lib.getExe fastahack} $out/mismatched_lines.fasta 2>&1)
+      grep -v ERROR <(${lib.getExe fastahack} $out/trailing_newlines.fasta 2>&1)
+    '';
+  };
+
+  meta = {
+    description = "Utilities for indexing and sequence extraction from FASTA files";
+    homepage = "https://github.com/ekg/fastahack";
+    changelog = "https://github.com/ekg/fastahack/releases/tag/v${finalAttrs.version}";
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ natsukium ];
+    mainProgram = "fastahack";
+    platforms = lib.platforms.unix;
+  };
+})