mirror of
https://github.com/MillironX/singularity-builds.git
synced 2024-11-27 03:39:55 +00:00
93 lines
2.6 KiB
Modula-2
93 lines
2.6 KiB
Modula-2
Bootstrap: library
|
|
From: default/alpine:3.14.0
|
|
|
|
%post
|
|
# Part 1: Install Samtools
|
|
# ========================
|
|
|
|
# Get the actual dependencies
|
|
apk add --no-cache ncurses libbz2 xz zlib
|
|
|
|
# Get the build dependencies
|
|
apk add --no-cache --virtual .build-deps ncurses-dev musl-dev g++ make zlib-dev bzip2-dev xz-dev
|
|
|
|
# Make versioning easier
|
|
SAMTOOLS_VERSION='1.13'
|
|
|
|
# Download the source tarball and build
|
|
cd /tmp || exit 1
|
|
wget https://github.com/samtools/samtools/releases/download/$SAMTOOLS_VERSION/samtools-$SAMTOOLS_VERSION.tar.bz2
|
|
tar xjvf samtools-$SAMTOOLS_VERSION.tar.bz2
|
|
cd samtools-$SAMTOOLS_VERSION || exit 1
|
|
./configure
|
|
make && make install
|
|
cd .. || exit 1
|
|
rm -rf samtools-$SAMTOOLS_VERSION*
|
|
cd || exit 1
|
|
|
|
# Cleanup build packages
|
|
apk del --no-cache .build-deps
|
|
|
|
# Part 2: Install VarScan
|
|
# ========================
|
|
|
|
# Install java
|
|
apk add --no-cache openjdk8
|
|
|
|
# Make versioning easier
|
|
VARSCAN_VERSION='v2.4.4'
|
|
|
|
# Download varscan
|
|
wget https://github.com/dkoboldt/varscan/raw/master/VarScan.v2.4.4.jar -O /opt/varscan.jar
|
|
|
|
# Create a shim for varscan
|
|
echo "#!/bin/bash" > /usr/local/bin/varscan
|
|
echo "java -jar /opt/varscan.jar \"\$@\"" >> /usr/local/bin/varscan
|
|
chmod +x /usr/local/bin/varscan
|
|
|
|
# Part 3: Install Nextflow dependencies
|
|
# =====================================
|
|
apk add --no-cache bash
|
|
|
|
%test
|
|
cat << "EOF" > /tmp/singularity-test.sh
|
|
#!/bin/bash
|
|
CMDS=('bash' 'ps' 'java' 'varscan' 'samtools')
|
|
for CMD in "${CMDS[@]}"; do
|
|
if ! command -v "$CMD"; then
|
|
echo "command $CMD not found!"
|
|
FAILED_TESTS=1
|
|
fi
|
|
done
|
|
# Abort if a test failed
|
|
if [ -n "$FAILED_TESTS" ]; then
|
|
exit 1
|
|
fi
|
|
EOF
|
|
chmod +x /tmp/singularity-test.sh
|
|
bash /tmp/singularity-test.sh
|
|
|
|
%runscript
|
|
varscan "$@"
|
|
|
|
%labels
|
|
Author 25492070+MillironX@users.noreply.github.com
|
|
SoftwareVersion v2.4.4
|
|
SingularityDefinitionVersion 2
|
|
|
|
%help
|
|
VarScan
|
|
=======
|
|
|
|
VarScan is a platform-independent mutation caller for targeted, exome, and
|
|
whole-genome resequencing data generated on Illumina, SOLiD, Life/PGM,
|
|
Roche/454, and similar instruments. It can be used to detect different types
|
|
of variation:
|
|
- Germline variants (SNPs an dindels) in individual samples or pools of samples.
|
|
- Multi-sample variants (shared or private) in multi-sample datasets (with mpileup).
|
|
- Somatic mutations, LOH events, and germline variants in tumor-normal pairs.
|
|
- Somatic copy number alterations (CNAs) in tumor-normal exome data.
|
|
|
|
For more help, see
|
|
- <https://dkoboldt.github.io/varscan/>
|
|
- <https://github.com/MillironX/singularity-builds>
|