From 1d83daa0794463ecfea4ea56fe6ef917fffcd7b0 Mon Sep 17 00:00:00 2001 From: l-d-s Date: Wed, 22 May 2019 09:28:58 +1000 Subject: Unested picard-markDuplicates. --- default.nix | 1 + tools/picard-markDuplicates.nix | 26 ++++++++++++++++++++++++++ tools/picard.nix | 7 +++++++ 3 files changed, 34 insertions(+) create mode 100644 tools/picard-markDuplicates.nix create mode 100644 tools/picard.nix diff --git a/default.nix b/default.nix index 15b8d87..43a2332 100644 --- a/default.nix +++ b/default.nix @@ -27,6 +27,7 @@ let mosdepth = callBionix ./tools/mosdepth.nix {}; mutect = callBionix ./tools/mutect.nix {}; minimap2 = callBionix ./tools/minimap2.nix {}; + picard = callBionix ./tools/picard.nix {}; platypus = callBionix ./tools/platypus.nix {}; ref = callBionix ./lib/references.nix {}; samtools = callBionix ./tools/samtools.nix {}; diff --git a/tools/picard-markDuplicates.nix b/tools/picard-markDuplicates.nix new file mode 100644 index 0000000..aff1e32 --- /dev/null +++ b/tools/picard-markDuplicates.nix @@ -0,0 +1,26 @@ +{ bionix +, flags ? null +} : + +inputBam : + +with bionix; +with lib; +with types; + +assert (matchFiletype "picard-markDuplicates" { bam = _: true; } input); +assert (matchFileSorting "picard-markDuplicates" { coord = _: true; } input); + +stage { + name = "picard-markDuplicates"; + buildInputs = with pkgs; + [ picard-tools ]; + outputs = [ "out" "metrics" ]; + buildCommand = '' + picard MarkDuplicates \ + I=${inputBam} \ + O=$out \ + M=$metrics \ + ${optionalString (flags != null) flags} + ''; +} \ No newline at end of file diff --git a/tools/picard.nix b/tools/picard.nix new file mode 100644 index 0000000..551995f --- /dev/null +++ b/tools/picard.nix @@ -0,0 +1,7 @@ +{ bionix }: + +with bionix; + +{ + markDuplicates = callBionixE ./picard-markDuplicates.nix; +} \ No newline at end of file -- cgit v1.2.3