{ bionix , bwaIndexAttrs ? {} , faidxAttrs ? {} , flags ? null , config ? null , heapSize ? "1G" }: with bionix; with lib; with types; input: let ref = matchFiletype "gridss-computeSamTags" { bam = x: x.ref; } input; sorted = matchFileSorting "gridss-computeSamTags" { name = _: true; } input; in assert(sorted); stage rec { name = "gridss-computeSamTags"; buildInputs = with pkgs; [ jre ]; buildCommand = '' ln -s ${ref} ref.fa ln -s ${bionix.samtools.faidx faidxAttrs ref} ref.fa.fai for f in ${bionix.bwa.index bwaIndexAttrs ref}/*; do ln -s $f done java -Xmx${heapSize} \ -Dsamjdk.create_index=false \ -cp ${bionix.gridss.jar} gridss.ComputeSamTags \ VERBOSITY=WARNING \ REFERENCE_SEQUENCE=ref.fa \ WORKING_DIR=$TMP_DIR \ TMP_DIR=$TMP_DIR \ ${optionalString (config != null) ("OPTIONS_FILE=" + bionix.gridss.gridssConfig config)} \ I=${input} \ O=$out \ AS=true ''; passthru.filetype = input.filetype; }