mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-28 09:53:10 +00:00
44 lines
1.3 KiB
Nix
44 lines
1.3 KiB
Nix
{
|
|
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;
|
|
};
|
|
})
|