uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead

https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948
this can do it nicely.

Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
Anton Arapov 2021-04-03 12:58:10 +02:00 committed by Alan Daniels
commit 56de2bcd43
30691 changed files with 3076956 additions and 0 deletions

View file

@ -0,0 +1,30 @@
{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, libminc, bicpl, itk4, fftwFloat, gsl }:
stdenv.mkDerivation rec {
pname = "EZminc";
version = "unstable-2019-03-12";
src = fetchFromGitHub {
owner = "BIC-MNI";
repo = pname;
rev = "5e3333ee356f914d34d66d33ea8df809c7f7fa51";
sha256 = "0wy8cppf5xpgfqvgb3mqs1cjh81n6qzkk6zxv29wvng8nar9wsy4";
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ itk4 libminc bicpl fftwFloat gsl ];
cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake"
"-DEZMINC_BUILD_TOOLS=TRUE"
"-DEZMINC_BUILD_MRFSEG=TRUE"
"-DEZMINC_BUILD_DD=TRUE" ];
meta = with lib; {
homepage = "https://github.com/BIC-MNI/${pname}";
description = "Collection of Perl and shell scripts for processing MINC files";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.free;
broken = true; # ITK5 compatibility issue (https://github.com/BIC-MNI/EZminc/issues/15)
};
}

View file

@ -0,0 +1,25 @@
{ lib, python3, fetchurl }:
python3.pkgs.buildPythonPackage rec {
pname = "MACS2";
version = "2.2.7.1";
src = python3.pkgs.fetchPypi {
inherit pname version;
sha256 = "1rcxj943kgzs746f5jrb72x1cp4v50rk3qmad0m99a02vndscb5d";
};
propagatedBuildInputs = with python3.pkgs; [ numpy ];
# To prevent ERROR: diffpeak_cmd (unittest.loader._FailedTest) for obsolete
# function (ImportError: Failed to import test module: diffpeak_cmd)
doCheck = false;
pythonImportsCheck = [ "MACS2" ];
meta = with lib; {
description = "Model-based Analysis for ChIP-Seq";
license = licenses.bsd3;
maintainers = with maintainers; [ gschwartz ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,35 @@
{ lib, stdenv, fetchFromGitHub, cmake, makeWrapper,
perlPackages,
libminc, EBTKS }:
stdenv.mkDerivation rec {
pname = "N3";
version = "unstable-2018-08-09";
src = fetchFromGitHub {
owner = "BIC-MNI";
repo = pname;
rev = "010fc2ac58ce1d67b8e6a863fac0809d3203cb9b";
sha256 = "06hci7gzhy8p34ggvx7gah2k9yxpwhgmq1cgw8pcd1r82g4rg6kd";
};
nativeBuildInputs = [ cmake makeWrapper ];
buildInputs = [ libminc EBTKS ];
propagatedBuildInputs = with perlPackages; [ perl MNI-Perllib GetoptTabular ];
cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake" "-DEBTKS_DIR=${EBTKS}/lib/" ];
postFixup = ''
for p in $out/bin/*; do
wrapProgram $p --prefix PERL5LIB : $PERL5LIB
done
'';
meta = with lib; {
homepage = "https://github.com/BIC-MNI/N3";
description = "MRI non-uniformity correction for MINC files";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.free;
};
}

View file

@ -0,0 +1,25 @@
{ lib, stdenv, fetchFromGitHub, htslib, zlib, bzip2, xz, curl, openssl }:
stdenv.mkDerivation rec {
pname = "angsd";
version = "0.937";
src = fetchFromGitHub {
owner = "ANGSD";
repo = "angsd";
sha256 = "1020gh066dprqhfi90ywqzqqnq7awn49wrkkjnizmmab52v00kxs";
rev = "${version}";
};
buildInputs = [ htslib zlib bzip2 xz curl openssl ];
makeFlags = [ "HTSSRC=systemwide" "prefix=$(out)" ];
meta = with lib; {
description = "Program for analysing NGS data";
homepage = "http://www.popgen.dk/angsd";
maintainers = [ maintainers.bzizou ];
license = licenses.gpl2;
};
}

View file

@ -0,0 +1,40 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, makeWrapper, itk4, vtk_7, Cocoa }:
stdenv.mkDerivation rec {
pname = "ANTs";
version = "2.2.0";
src = fetchFromGitHub {
owner = "ANTsX";
repo = "ANTs";
rev = "37ad4e20be3a5ecd26c2e4e41b49e778a0246c3d";
sha256 = "1hrdwv3m9xh3yf7l0rm2ggxc2xzckfb8srs88g485ibfszx7i03q";
};
patches = [
# Fix build with gcc8
(fetchpatch {
url = "https://github.com/ANTsX/ANTs/commit/89af9b2694715bf8204993e032fa132f80cf37bd.patch";
sha256 = "1glkrwa1jmxxbmzihycxr576azjqby31jwpj165qc54c91pn0ams";
})
];
nativeBuildInputs = [ cmake makeWrapper ];
buildInputs = [ itk4 vtk_7 ] ++ lib.optionals stdenv.isDarwin [ Cocoa ];
cmakeFlags = [ "-DANTS_SUPERBUILD=FALSE" "-DUSE_VTK=TRUE" ];
postInstall = ''
for file in $out/bin/*; do
wrapProgram $file --set ANTSPATH "$out/bin"
done
'';
meta = with lib; {
homepage = "https://github.com/ANTsX/ANTs";
description = "Advanced normalization toolkit for medical image registration and other processing";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.bsd3;
};
}

View file

@ -0,0 +1,28 @@
{ lib, stdenv, fetchurl }:
stdenv.mkDerivation rec {
version = "1.2.38";
pname = "aragorn";
src = fetchurl {
url = "http://mbio-serv2.mbioekol.lu.se/ARAGORN/Downloads/${pname}${version}.tgz";
sha256 = "09i1rg716smlbnixfm7q1ml2mfpaa2fpn3hwjg625ysmfwwy712b";
};
buildPhase = ''
$CC -O3 -ffast-math -finline-functions -o aragorn aragorn${version}.c
'';
installPhase = ''
mkdir -p $out/bin && cp aragorn $out/bin
mkdir -p $out/man/1 && cp aragorn.1 $out/man/1
'';
meta = with lib; {
description = "Detects tRNA, mtRNA, and tmRNA genes in nucleotide sequences";
homepage = "http://mbio-serv2.mbioekol.lu.se/ARAGORN/";
license = licenses.gpl2;
maintainers = [ maintainers.bzizou ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,60 @@
{ lib
, stdenvNoCC
, fetchFromGitHub
, jdk8
, makeWrapper
, jre8
, zip
}:
let
jdk = jdk8;
jre = jre8;
in
stdenvNoCC.mkDerivation rec {
pname = "astral";
version = "5.7.1";
src = fetchFromGitHub {
owner = "smirarab";
repo = "ASTRAL";
rev = "v${version}";
sha256 = "043w2z6gbrisqirdid022f4b8jps1pp5syi344krv2bis1gjq5sn";
};
nativeBuildInputs = [ jdk makeWrapper jre zip ];
buildPhase = ''
patchShebangs ./make.sh
./make.sh
'';
doCheck = true;
checkPhase = ''
runHook preCheck
java -jar astral.${version}.jar -i main/test_data/song_primates.424.gene.tre
runHook postCheck
'';
installPhase = ''
mkdir -p $out/share/lib
mkdir -p $out/bin
mv astral.${version}.jar $out/share/
mv lib/*.jar $out/share/lib
mv Astral.${version}.zip $out/share/
cp -a main/test_data $out/share/
makeWrapper ${jre}/bin/java $out/bin/astral \
--add-flags "-jar $out/share/astral.${version}.jar"
'';
meta = with lib; {
homepage = "https://github.com/smirarab/ASTRAL";
description = "Tool for estimating an unrooted species tree given a set of unrooted gene trees";
sourceProvenance = with sourceTypes; [
fromSource
binaryBytecode # source bundles dependencies as jars
];
license = licenses.asl20;
maintainers = with maintainers; [ bzizou ];
};
}

View file

@ -0,0 +1,42 @@
{ lib, stdenv, fetchurl, unzip, llvmPackages }:
stdenv.mkDerivation rec {
pname = "bayescan";
version = "2.1";
src = fetchurl {
url = "http://cmpg.unibe.ch/software/BayeScan/files/BayeScan${version}.zip";
sha256 = "0ismima8j8z0zj9yc267rpf7z90w57b2pbqzjnayhc3ab8mcbfy6";
};
nativeBuildInputs = [ unzip ];
buildInputs = lib.optional stdenv.cc.isClang llvmPackages.openmp;
# Disable FORTIFY_SOURCE or the binary fails with "buffer overflow"
hardeningDisable = [ "fortify" ];
sourceRoot = "BayeScan${version}/source";
postPatch = ''
substituteInPlace Makefile --replace "-static" "" \
--replace "g++" "c++"
'';
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/share/doc/bayescan
cp bayescan_${version} $out/bin
cp -r ../*pdf ../input_examples ../"R functions" $out/share/doc/bayescan
'';
NIX_CFLAGS_COMPILE = [ "-std=c++14" ];
meta = with lib; {
description = "Detecting natural selection from population-based genetic data";
homepage = "http://cmpg.unibe.ch/software/BayeScan";
license = licenses.gpl3;
maintainers = [ maintainers.bzizou ];
mainProgram = "bayescan_${version}";
platforms = lib.platforms.all;
};
}

View file

@ -0,0 +1,44 @@
{ lib, stdenv, fetchurl, htslib, zlib, bzip2, xz, curl, perl, python3, bash }:
stdenv.mkDerivation rec {
pname = "bcftools";
version = "1.15";
src = fetchurl {
url = "https://github.com/samtools/bcftools/releases/download/${version}/${pname}-${version}.tar.bz2";
sha256 = "sha256-GIXMtFCobpegCqkF1zgcqeB72JZ8BXBaYdAAfS4iKW4=";
};
nativeBuildInputs = [
perl
python3
];
buildInputs = [ htslib zlib bzip2 xz curl ];
strictDeps = true;
makeFlags = [
"HSTDIR=${htslib}"
"prefix=$(out)"
"CC=${stdenv.cc.targetPrefix}cc"
];
preCheck = ''
patchShebangs misc/
patchShebangs test/
sed -ie 's|/bin/bash|${bash}/bin/bash|' test/test.pl
'';
enableParallelBuilding = true;
doCheck = true;
meta = with lib; {
description = "Tools for manipulating BCF2/VCF/gVCF format, SNP and short indel sequence variants";
license = licenses.mit;
homepage = "http://www.htslib.org/";
platforms = platforms.unix;
maintainers = [ maintainers.mimame ];
};
}

View file

@ -0,0 +1,51 @@
{ lib, stdenv, fetchFromGitHub, zlib, bzip2, jansson, makeWrapper }:
stdenv.mkDerivation rec {
pname = "bedops";
version = "2.4.40";
src = fetchFromGitHub {
owner = "bedops";
repo = "bedops";
rev = "v${version}";
sha256 = "sha256-rJVl3KbzGblyQZ7FtJXeEv/wjQJmzYGNjzhvkoMoBWY=";
};
buildInputs = [ zlib bzip2 jansson ];
nativeBuildInputs = [ makeWrapper ];
preConfigure = ''
# We use nixpkgs versions of these libraries
rm -r third-party
sed -i '/^LIBS/d' system.mk/*
sed -i 's|^LIBRARIES.*$|LIBRARIES = -lbz2 -lz -ljansson|' */*/*/*/Makefile
substituteInPlace applications/bed/starch/src/Makefile --replace '$(LIBRARIES)' ""
# Function name is different in nixpkgs provided libraries
for f in interfaces/src/data/starch/starchFileHelpers.c applications/bed/starch/src/starchcat.c ; do
substituteInPlace $f --replace deflateInit2cpp deflateInit2
done
# Don't force static
for f in */*/*/*/Makefile ; do
substituteInPlace $f --replace '-static' ""
done
'';
makeFlags = [ "BINDIR=$(out)/bin" ];
postFixup = ''
for f in $out/bin/* ; do
wrapProgram $f --prefix PATH : "$out/bin"
done
'';
meta = with lib; {
description = "Suite of tools for addressing questions arising in genomics studies";
homepage = "https://github.com/bedops/bedops";
license = licenses.gpl2Only;
maintainers = with maintainers; [ jbedo ];
platforms = platforms.x86_64;
broken = stdenv.isDarwin;
};
}

View file

@ -0,0 +1,34 @@
{lib, stdenv, fetchFromGitHub, zlib, python3, bzip2, xz}:
stdenv.mkDerivation rec {
pname = "bedtools";
version = "2.30.0";
src = fetchFromGitHub {
owner = "arq5x";
repo = "bedtools2";
rev = "v${version}";
sha256 = "sha256-NqKldF7ePJn3pT+AkESIQghBKSFFOEBBsTaKEbU+oaQ=";
};
strictDeps = true;
nativeBuildInputs = [
python3
];
buildInputs = [ zlib bzip2 xz ];
cxx = if stdenv.cc.isClang then "clang++" else "g++";
cc = if stdenv.cc.isClang then "clang" else "gcc";
buildPhase = "make prefix=$out SHELL=${stdenv.shell} CXX=${cxx} CC=${cc} -j $NIX_BUILD_CORES";
installPhase = "make prefix=$out SHELL=${stdenv.shell} CXX=${cxx} CC=${cc} install";
meta = with lib; {
description = "A powerful toolset for genome arithmetic";
license = licenses.gpl2;
homepage = "https://bedtools.readthedocs.io/en/latest/";
maintainers = with maintainers; [ jbedo ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,42 @@
{ stdenv, lib, makeWrapper, fetchzip, jre }:
stdenv.mkDerivation rec {
pname = "bftools";
version = "6.3.0";
src = fetchzip {
url = "http://downloads.openmicroscopy.org/bio-formats/${version}/artifacts/bftools.zip";
sha256 = "02nvvmpfglpah1ihd08aw65g1794w588c988cdar1hfl4s80qwhb";
};
installPhase = ''
find . -maxdepth 1 -perm -111 -type f -not -name "*.sh" \
-exec install -vD {} "$out"/bin/{} \;
mkdir $out/libexec
mkdir -p $out/share/java
cp ./*.sh $out/libexec
cp ./*.jar $out/share/java
for file in $out/bin/*; do
substituteInPlace $file --replace "\$BF_DIR" $out/libexec
done
substituteInPlace $out/libexec/bf.sh --replace "\$BF_JAR_DIR" $out/share/java
'';
postFixup = ''
wrapProgram $out/libexec/bf.sh --prefix PATH : "${lib.makeBinPath [ jre ]}"
'';
nativeBuildInputs = [ makeWrapper ];
meta = with lib; {
description = "A bundle of scripts for using Bio-Formats on the command line with bioformats_package.jar already included";
sourceProvenance = with sourceTypes; [ binaryBytecode ];
license = licenses.gpl2;
platforms = platforms.all;
homepage = "https://www.openmicroscopy.org/bio-formats/";
maintainers = [ maintainers.tbenst ];
};
}

View file

@ -0,0 +1,109 @@
{ lib, stdenv, buildPackages, fetchurl, zlib, bzip2, perl, cpio, gawk, coreutils, ApplicationServices }:
stdenv.mkDerivation rec {
pname = "blast";
version = "2.13.0";
src = fetchurl {
url = "https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/${version}/ncbi-blast-${version}+-src.tar.gz";
sha256 = "sha256-iVU3FNEz2vKMR3+D0zN5Szxi5BSECMByobRiDl7E/rI=";
};
sourceRoot = "ncbi-blast-${version}+-src/c++";
configureFlags = [
# With flat Makefile we can use all_projects in order not to build extra.
# These extra cause clang to hang on Darwin.
"--with-flat-makefile"
"--without-makefile-auto-update"
"--with-dll" # build dynamic libraries (static are default)
];
makeFlags = [ "all_projects=app/" ];
preConfigure = ''
export NCBICXX_RECONF_POLICY=warn
export PWD=$(pwd)
export HOME=$PWD
# The configure scripts wants to set AR="ar cr" unless it is already set in
# the environment. Because stdenv sets AR="ar", the result is a bad call to
# the assembler later in the process. Thus, we need to unset AR
unset AR
for awks in scripts/common/impl/is_log_interesting.awk \
scripts/common/impl/report_duplicates.awk; do
substituteInPlace $awks \
--replace /usr/bin/awk ${gawk}/bin/awk
done
for mk in src/build-system/Makefile.meta.in \
src/build-system/helpers/run_with_lock.c ; do
substituteInPlace $mk \
--replace /bin/rm ${coreutils}/bin/rm
done
for mk in src/build-system/Makefile.meta.gmake=no \
src/build-system/Makefile.meta_l \
src/build-system/Makefile.meta_r \
src/build-system/Makefile.requirements \
src/build-system/Makefile.rules_with_autodep.in; do
substituteInPlace $mk \
--replace /bin/echo ${coreutils}/bin/echo
done
for mk in src/build-system/Makefile.meta_p \
src/build-system/Makefile.rules_with_autodep.in \
src/build-system/Makefile.protobuf.in ; do
substituteInPlace $mk \
--replace /bin/mv ${coreutils}/bin/mv
done
substituteInPlace src/build-system/configure \
--replace /bin/pwd ${coreutils}/bin/pwd \
--replace /bin/ln ${coreutils}/bin/ln
substituteInPlace src/build-system/configure.ac \
--replace /bin/pwd ${coreutils}/bin/pwd \
--replace /bin/ln ${coreutils}/bin/ln
substituteInPlace src/build-system/Makefile.meta_l \
--replace /bin/date ${coreutils}/bin/date
'';
depsBuildBuild = [ buildPackages.stdenv.cc ];
nativeBuildInputs = [ perl ];
# perl is necessary in buildInputs so that installed perl scripts get patched
# correctly
buildInputs = [ coreutils perl gawk zlib bzip2 cpio ]
++ lib.optionals stdenv.isDarwin [ ApplicationServices ];
hardeningDisable = [ "format" ];
postInstall = ''
substituteInPlace $out/bin/get_species_taxids.sh \
--replace /bin/rm ${coreutils}/bin/rm
'';
patches = [ ./no_slash_bin.patch ];
enableParallelBuilding = true;
# Many tests require either network access or locally available databases
doCheck = false;
meta = with lib; {
description = ''Basic Local Alignment Search Tool (BLAST) finds regions of
similarity between biological sequences'';
homepage = "https://blast.ncbi.nlm.nih.gov/Blast.cgi";
license = licenses.publicDomain;
# Version 2.10.0 fails on Darwin
# See https://github.com/NixOS/nixpkgs/pull/61430
platforms = platforms.linux;
maintainers = with maintainers; [ luispedro ];
};
}

View file

@ -0,0 +1,178 @@
diff -u --recursive ncbi-blast-2.9.0+-src/scripts/common/impl/collect_outside_libs.sh ncbi-blast-2.9.0+-src.patched/scripts/common/impl/collect_outside_libs.sh
--- ncbi-blast-2.9.0+-src/scripts/common/impl/collect_outside_libs.sh 2014-08-01 22:01:17.000000000 +0800
+++ ncbi-blast-2.9.0+-src.patched/scripts/common/impl/collect_outside_libs.sh 2019-05-15 12:40:44.145239480 +0800
@@ -1,8 +1,5 @@
#!/bin/sh
set -e
-PATH=/bin:/usr/bin
-export PATH
-unset CDPATH
base=$1
search=`echo ${2-$LD_LIBRARY_PATH} | tr : ' '`
diff -u --recursive ncbi-blast-2.9.0+-src/scripts/common/impl/create_flat_tuneups.sh ncbi-blast-2.9.0+-src.patched/scripts/common/impl/create_flat_tuneups.sh
--- ncbi-blast-2.9.0+-src/scripts/common/impl/create_flat_tuneups.sh 2011-08-17 02:55:10.000000000 +0800
+++ ncbi-blast-2.9.0+-src.patched/scripts/common/impl/create_flat_tuneups.sh 2019-05-15 12:40:48.449276574 +0800
@@ -1,9 +1,6 @@
#!/bin/sh
id='$Id: create_flat_tuneups.sh 331412 2011-08-16 18:55:10Z ucko $'
-PATH=/bin:/usr/bin
-export PATH
-
exec > auto_flat_tuneups.mk
cat <<EOF
diff -u --recursive ncbi-blast-2.9.0+-src/scripts/common/impl/get_lock.sh ncbi-blast-2.9.0+-src.patched/scripts/common/impl/get_lock.sh
--- ncbi-blast-2.9.0+-src/scripts/common/impl/get_lock.sh 2011-08-20 04:12:28.000000000 +0800
+++ ncbi-blast-2.9.0+-src.patched/scripts/common/impl/get_lock.sh 2019-05-15 12:40:52.901315000 +0800
@@ -1,7 +1,5 @@
#!/bin/sh
-PATH=/bin:/usr/bin
-export PATH
dir=$1.lock
diff -u --recursive ncbi-blast-2.9.0+-src/scripts/common/impl/if_diff.sh ncbi-blast-2.9.0+-src.patched/scripts/common/impl/if_diff.sh
--- ncbi-blast-2.9.0+-src/scripts/common/impl/if_diff.sh 2014-07-30 22:06:45.000000000 +0800
+++ ncbi-blast-2.9.0+-src.patched/scripts/common/impl/if_diff.sh 2019-05-15 12:42:57.298410841 +0800
@@ -4,9 +4,6 @@
# Author: Denis Vakatov (vakatov@ncbi.nlm.nih.gov)
#################################
-orig_PATH=$PATH
-PATH=/bin:/usr/bin
-
script_name=`basename $0`
script_args="$*"
@@ -16,7 +13,7 @@
base_action=`basename "$action"`
case "$base_action" in
cp | cp\ * | ln | ln\ * )
- action=/bin/$base_action
+ action=$base_action
rm="rm -f"
;;
* )
@@ -58,10 +55,8 @@
shift
cmd="$* $dest_file"
test "$quiet" = yes || echo "$cmd"
- PATH=$orig_PATH
"$@" "$dest"
status=$?
- PATH=/bin:/usr/bin
return $status
}
@@ -74,7 +69,7 @@
case "$base_action" in
ln | ln\ -f )
test "$quiet" = yes || echo "failed; trying \"cp -p ...\" instead"
- cmd="/bin/cp -p $src_file $dest_file"
+ cmd="cp -p $src_file $dest_file"
ExecHelper "$dest_file" /bin/cp -p "$src_file" ||
Usage "\"$cmd\" failed"
;;
diff -u --recursive ncbi-blast-2.9.0+-src/scripts/common/impl/make_lock_map.sh ncbi-blast-2.9.0+-src.patched/scripts/common/impl/make_lock_map.sh
--- ncbi-blast-2.9.0+-src/scripts/common/impl/make_lock_map.sh 2011-11-17 04:43:52.000000000 +0800
+++ ncbi-blast-2.9.0+-src.patched/scripts/common/impl/make_lock_map.sh 2019-05-15 12:40:56.769348434 +0800
@@ -1,8 +1,6 @@
#!/bin/sh
# $Id: make_lock_map.sh 344587 2011-11-16 20:43:52Z ucko $
-PATH=/bin:/usr/bin
-export PATH
act=false
cache_dir='.#SRC-cache'
diff -u --recursive ncbi-blast-2.9.0+-src/scripts/common/impl/run_with_lock.sh ncbi-blast-2.9.0+-src.patched/scripts/common/impl/run_with_lock.sh
--- ncbi-blast-2.9.0+-src/scripts/common/impl/run_with_lock.sh 2015-10-29 22:36:05.000000000 +0800
+++ ncbi-blast-2.9.0+-src.patched/scripts/common/impl/run_with_lock.sh 2019-05-15 12:41:53.401842849 +0800
@@ -1,10 +1,6 @@
#!/bin/sh
# $Id: run_with_lock.sh 483249 2015-10-29 14:36:05Z ucko $
-orig_PATH=$PATH
-PATH=/bin:/usr/bin
-export PATH
-
base=
logfile=
map=
@@ -23,7 +19,7 @@
: ${base:=`basename "$1"`}
clean_up () {
- /bin/rm -rf "$base.lock"
+ rm -rf "$base.lock"
}
case $0 in
@@ -45,7 +41,7 @@
trap "clean_up; exit $error_status" 1 2 15
if [ -n "$logfile" ]; then
status_file=$base.lock/status
- (PATH=$orig_PATH; export PATH; "$@"; echo $? > "$status_file") 2>&1 \
+ ("$@"; echo $? > "$status_file") 2>&1 \
| tee "$logfile.new"
# Emulate egrep -q to avoid having to move from under scripts.
if [ ! -f "$logfile" ] \
@@ -58,8 +54,6 @@
status=1
fi
else
- PATH=$orig_PATH
- export PATH
"$@"
status=$?
fi
diff -u --recursive ncbi-blast-2.9.0+-src/scripts/common/impl/strip_for_install.sh ncbi-blast-2.9.0+-src.patched/scripts/common/impl/strip_for_install.sh
--- ncbi-blast-2.9.0+-src/scripts/common/impl/strip_for_install.sh 2013-09-24 03:06:51.000000000 +0800
+++ ncbi-blast-2.9.0+-src.patched/scripts/common/impl/strip_for_install.sh 2019-05-15 12:40:13.272975092 +0800
@@ -1,8 +1,5 @@
#!/bin/sh
-PATH=/bin:/usr/bin:/usr/ccs/bin
-export PATH
-
case "$1" in
--dirs )
shift
--- ncbi-blast-2.9.0+-src/scripts/common/impl/update_configurable.sh 2017-07-13 22:53:24.000000000 +0800
+++ ncbi-blast-2.9.0+-src.patched/scripts/common/impl/update_configurable.sh 2019-05-15 15:03:35.861276083 +0800
@@ -1,6 +1,4 @@
#!/bin/sh
-PATH=/bin:/usr/bin
-export PATH
script_name=`basename $0`
script_dir=`dirname $0`
--- ncbi-blast-2.9.0+-src/src/build-system/Makefile.mk.in 2019-01-04 01:38:37.000000000 +0800
+++ ncbi-blast-2.9.0+-src.patched/src/build-system/Makefile.mk.in 2019-05-15 15:14:41.749416495 +0800
@@ -50,12 +50,12 @@
### Auxiliary commands, filters
-RM = /bin/rm -f
-RMDIR = /bin/rm -rf
-COPY = /bin/cp -p
+RM = rm -f
+RMDIR = rm -rf
+COPY = cp -p
BINCOPY = @BINCOPY@
TOUCH = @TOUCH@
-MKDIR = /bin/mkdir
+MKDIR = mkdir
BINTOUCH = $(TOUCH)
LN_S = @LN_S@
GREP = @GREP@
--- ncbi-blast-2.9.0+-src/src/build-system/configure 2019-03-05 00:49:08.000000000 +0800
+++ ncbi-blast-2.9.0+-src.patched/src/build-system/configure 2019-05-15 16:55:40.711795042 +0800
@@ -10417,4 +10417,0 @@
-case "$LN_S" in
- /*) ;;
- * ) LN_S=/bin/$LN_S ;;
-esac

View file

@ -0,0 +1,45 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch, zlib }:
stdenv.mkDerivation rec {
pname = "bowtie";
version = "1.3.1";
src = fetchFromGitHub {
owner = "BenLangmead";
repo = pname;
rev = "v${version}";
sha256 = "sha256-mWItmrTMPst/NnzSpxxTHcBztDqHPCza9yOsZPwp7G4=";
};
patches = [
# Without this patch, compiling with clang on an M1 Mac fails because
# 'cpuid.h' is included. It only works on x86 and throws an error.
(fetchpatch {
name = "fix_compilation_on_arm64";
url = "https://github.com/BenLangmead/bowtie/commit/091d72f4cb69ca0713704d38bd7f9b37e6c4ff2d.patch";
sha256 = "sha256-XBvgICUBnE5HKpJ36IHTDiKjJgLFKETsIaJC46uN+2I=";
})
# Without this patch, compilation adds the current source directory to the
# include search path, and #include <version> in standard library code can
# end up picking the unrelated VERSION source code file on case-insensitive
# file systems.
(fetchpatch {
name = "fix_include_search_path";
url = "https://github.com/BenLangmead/bowtie/commit/c208b9db936eab0bc3ffdf0182b4f59a9017a1c4.patch";
sha256 = "sha256-772EE+oWFWXssSMabPryb0AfIS1tC10mPTRCBm7RrUs=";
})
];
buildInputs = [ zlib ];
installFlags = [ "prefix=$(out)" ];
meta = with lib; {
description = "An ultrafast memory-efficient short read aligner";
license = licenses.artistic2;
homepage = "http://bowtie-bio.sourceforge.net";
maintainers = with maintainers; [ prusnak ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,26 @@
{ lib, stdenv, fetchFromGitHub, cmake, tbb, zlib, python3, perl }:
stdenv.mkDerivation rec {
pname = "bowtie2";
version = "2.4.5";
src = fetchFromGitHub {
owner = "BenLangmead";
repo = pname;
rev = "v${version}";
sha256 = "sha256-xCsTkQXrZS+Njn0YfidhPln+OwVfTXOqbtB0dCfTP2U=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ tbb zlib python3 perl ];
meta = with lib; {
description = "An ultrafast and memory-efficient tool for aligning sequencing reads to long reference sequences";
license = licenses.gpl3;
homepage = "http://bowtie-bio.sf.net/bowtie2";
maintainers = with maintainers; [ rybern ];
platforms = platforms.all;
broken = stdenv.isAarch64; # only x86 is supported
};
}

View file

@ -0,0 +1,21 @@
{ stdenv, fetchFromGitHub, cmake, bpp-core, bpp-seq, bpp-phyl, bpp-popgen }:
stdenv.mkDerivation rec {
pname = "bppsuite";
inherit (bpp-core) version;
src = fetchFromGitHub {
owner = "BioPP";
repo = pname;
rev = "v${version}";
sha256 = "1wdwcgczqbc3m116vakvi0129wm3acln3cfc7ivqnalwvi6lrpds";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ bpp-core bpp-seq bpp-phyl bpp-popgen ];
meta = bpp-core.meta // {
changelog = "https://github.com/BioPP/bppsuite/blob/master/ChangeLog";
};
}

View file

@ -0,0 +1,50 @@
{ lib, stdenv, fetchurl, fetchpatch, zlib }:
stdenv.mkDerivation rec {
pname = "bwa";
version = "0.7.17";
src = fetchurl {
url = "mirror://sourceforge/bio-bwa/${pname}-${version}.tar.bz2";
sha256 = "1zfhv2zg9v1icdlq4p9ssc8k01mca5d1bd87w71py2swfi74s6yy";
};
patches = [
# Pull upstream patch for -fno-common toolchain support like upstream
# gcc-10: https://github.com/lh3/bwa/pull/267
(fetchpatch {
name = "fno-common.patch";
url = "https://github.com/lh3/bwa/commit/2a1ae7b6f34a96ea25be007ac9d91e57e9d32284.patch";
sha256 = "1lihfxai6vcshv5vr3m7yhk833bdivkja3gld6ilwrc4z28f6wqy";
})
];
buildInputs = [ zlib ];
# Avoid hardcoding gcc to allow environments with a different
# C compiler to build
preConfigure = ''
sed -i '/^CC/d' Makefile
'';
makeFlags = lib.optional stdenv.hostPlatform.isStatic "AR=${stdenv.cc.targetPrefix}ar";
# it's unclear which headers are intended to be part of the public interface
# so we may find ourselves having to add more here over time
installPhase = ''
install -vD -t $out/bin bwa
install -vD -t $out/lib libbwa.a
install -vD -t $out/include bntseq.h
install -vD -t $out/include bwa.h
install -vD -t $out/include bwamem.h
install -vD -t $out/include bwt.h
'';
meta = with lib; {
description = "A software package for mapping low-divergent sequences against a large reference genome, such as the human genome";
license = licenses.gpl3;
homepage = "http://bio-bwa.sourceforge.net/";
maintainers = with maintainers; [ luispedro ];
platforms = platforms.x86_64;
};
}

View file

@ -0,0 +1,38 @@
{ lib, stdenv, fetchFromGitHub, makeWrapper, zlib, perl, perlPackages, openmp }:
stdenv.mkDerivation rec {
version = "4.8.1";
pname = "cd-hit";
src = fetchFromGitHub {
owner = "weizhongli";
repo = "cdhit";
rev = "V${version}";
sha256 = "032nva6iiwmw59gjipm1mv0xlcckhxsf45mc2qbnv19lbis0q22i";
};
propagatedBuildInputs = [ perl perlPackages.TextNSP perlPackages.ImageMagick ];
nativeBuildInputs = [ zlib makeWrapper ];
buildInputs = lib.optional stdenv.cc.isClang openmp;
makeFlags = [
"CC=${stdenv.cc.targetPrefix}c++" # remove once https://github.com/weizhongli/cdhit/pull/114 is merged
"PREFIX=$(out)/bin"
];
preInstall = "mkdir -p $out/bin";
postFixup = ''
wrapProgram $out/bin/FET.pl --prefix PERL5LIB : $PERL5LIB
wrapProgram $out/bin/plot_2d.pl --prefix PERL5LIB : $PERL5LIB
wrapProgram $out/bin/clstr_list_sort.pl --prefix PERL5LIB : $PERL5LIB
'';
meta = with lib; {
description = "Clustering and comparing protein or nucleotide sequences";
homepage = "http://weizhongli-lab.org/cd-hit/";
license = licenses.gpl2;
maintainers = [ maintainers.bzizou ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,33 @@
{ lib, stdenv, fetchurl, argtable }:
stdenv.mkDerivation rec {
version = "1.2.4";
pname = "clustal-omega";
src = fetchurl {
url = "http://www.clustal.org/omega/${pname}-${version}.tar.gz";
sha256 = "1vm30mzncwdv881vrcwg11vzvrsmwy4wg80j5i0lcfk6dlld50w6";
};
buildInputs = [ argtable ];
preConfigure = ''
for f in configure \
src/clustal-omega-config.h \
src/clustal-omega-config.h \
src/config.h.in \
src/mymain.c
do
sed -i -re 's/argtable2/argtable3/g' $f
done
'';
meta = with lib; {
description = "General purpose multiple sequence alignment program for protein and DNA/RNA";
homepage = "http://www.clustal.org/omega/";
license = licenses.gpl2;
maintainers = [ maintainers.bzizou ];
mainProgram = "clustalo";
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,31 @@
{ lib, stdenv, fetchurl, cmake }:
stdenv.mkDerivation rec {
pname = "cmtk";
version = "3.3.1";
src = fetchurl {
name = "cmtk-source.tar.gz";
url = "https://www.nitrc.org/frs/download.php/8198/CMTK-${version}-Source.tar.gz//?i_agree=1&download_now=1";
sha256 = "1nmsga9m7vcc4y4a6zl53ra3mwlgjwdgsq1j291awkn7zr1az6qs";
};
nativeBuildInputs = [ cmake ];
NIX_CFLAGS_COMPILE = [
"-std=c++11"
(lib.optional stdenv.cc.isClang "-Wno-error=c++11-narrowing")
];
meta = with lib; {
broken = stdenv.isDarwin;
description = "Computational Morphometry Toolkit ";
longDescription = ''A software toolkit for computational morphometry of
biomedical images, CMTK comprises a set of command line tools and a
back-end general-purpose library for processing and I/O'';
maintainers = with maintainers; [ tbenst ];
platforms = platforms.all;
license = licenses.gpl3;
homepage = "https://www.nitrc.org/projects/cmtk/";
};
}

View file

@ -0,0 +1,37 @@
{ lib, stdenv, fetchFromGitHub, cmake, coreutils, perlPackages, bicpl, libminc, zlib, minc_tools,
makeWrapper }:
stdenv.mkDerivation rec {
pname = "conglomerate";
version = "unstable-2017-09-10";
src = fetchFromGitHub {
owner = "BIC-MNI";
repo = pname;
rev = "7343238bc6215942c7ecc885a224f24433a291b0";
sha256 = "1mlqgmy3jc13bv7d01rjwldxq0p4ayqic85xcl222hhifi3w2prr";
};
nativeBuildInputs = [ cmake makeWrapper ];
buildInputs = [ libminc zlib bicpl ];
propagatedBuildInputs = [ coreutils minc_tools ] ++ (with perlPackages; [ perl GetoptTabular MNI-Perllib ]);
cmakeFlags = [
"-DLIBMINC_DIR=${libminc}/lib/cmake"
"-DBICPL_DIR=${bicpl}/lib"
];
postFixup = ''
for p in $out/bin/*; do
wrapProgram $p --prefix PERL5LIB : $PERL5LIB --set PATH "${lib.makeBinPath [ coreutils minc_tools ]}";
done
'';
meta = with lib; {
homepage = "https://github.com/BIC-MNI/conglomerate";
description = "More command-line utilities for working with MINC files";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.free;
};
}

View file

@ -0,0 +1,68 @@
{ lib
, stdenv
, fetchFromGitHub
, substituteAll
, cmake
, openjpeg
, libyamlcpp
, batchVersion ? false
, withJpegLs ? true
, withOpenJpeg ? true
, withCloudflareZlib ? true
}:
let
cloudflareZlib = fetchFromGitHub {
owner = "ningfei";
repo = "zlib";
# HEAD revision of the gcc.amd64 branch on 2022-04-14. Reminder to update
# whenever bumping package version.
rev = "fda61188d1d4dcd21545c34c2a2f5cc9b0f5db4b";
sha256 = "sha256-qySFwY0VI2BQLO2XoCZeYshXEDnHh6SmJ3MvcBUROWU=";
};
in
stdenv.mkDerivation rec {
version = "1.0.20211006";
pname = "dcm2niix";
src = fetchFromGitHub {
owner = "rordenlab";
repo = "dcm2niix";
rev = "v${version}";
sha256 = "sha256-fQAVOzynMdSLDfhcYWcaXkFW/mnv4zySGLVJNE7ql/c=";
};
patches = lib.optionals withCloudflareZlib [
(substituteAll {
src = ./dont-fetch-external-libs.patch;
inherit cloudflareZlib;
})
];
nativeBuildInputs = [ cmake ];
buildInputs = lib.optionals batchVersion [ libyamlcpp ]
++ lib.optionals withOpenJpeg [ openjpeg openjpeg.dev ];
cmakeFlags = lib.optionals batchVersion [
"-DBATCH_VERSION=ON"
"-DYAML-CPP_DIR=${libyamlcpp}/lib/cmake/yaml-cpp"
] ++ lib.optionals withJpegLs [
"-DUSE_JPEGLS=ON"
] ++ lib.optionals withOpenJpeg [
"-DUSE_OPENJPEG=ON"
"-DOpenJPEG_DIR=${openjpeg}/lib/${openjpeg.pname}-${lib.versions.majorMinor openjpeg.version}"
] ++ lib.optionals withCloudflareZlib [
"-DZLIB_IMPLEMENTATION=Cloudflare"
];
meta = with lib; {
description = "DICOM to NIfTI converter";
longDescription = ''
dcm2niix is designed to convert neuroimaging data from the DICOM format to the NIfTI format.
'';
homepage = "https://www.nitrc.org/projects/dcm2nii";
license = licenses.bsd3;
maintainers = with maintainers; [ ashgillman rbreslow ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,36 @@
diff --git a/SuperBuild/External-CLOUDFLARE-ZLIB.cmake b/SuperBuild/External-CLOUDFLARE-ZLIB.cmake
index 9f064eb..fe74df5 100644
--- a/SuperBuild/External-CLOUDFLARE-ZLIB.cmake
+++ b/SuperBuild/External-CLOUDFLARE-ZLIB.cmake
@@ -1,8 +1,5 @@
-set(CLOUDFLARE_BRANCH gcc.amd64) # Cloudflare zlib branch
-
ExternalProject_Add(zlib
- GIT_REPOSITORY "${git_protocol}://github.com/ningfei/zlib.git"
- GIT_TAG "${CLOUDFLARE_BRANCH}"
+ URL file://@cloudflareZlib@
SOURCE_DIR cloudflare-zlib
BINARY_DIR cloudflare-zlib-build
CMAKE_ARGS
diff --git a/SuperBuild/SuperBuild.cmake b/SuperBuild/SuperBuild.cmake
index 2a0a956..81354a7 100644
--- a/SuperBuild/SuperBuild.cmake
+++ b/SuperBuild/SuperBuild.cmake
@@ -1,17 +1,3 @@
-# Check if git exists
-find_package(Git)
-if(NOT GIT_FOUND)
- message(FATAL_ERROR "Cannot find Git. Git is required for Superbuild")
-endif()
-
-# Use git protocol or not
-option(USE_GIT_PROTOCOL "If behind a firewall turn this off to use http instead." ON)
-if(USE_GIT_PROTOCOL)
- set(git_protocol "git")
-else()
- set(git_protocol "https")
-endif()
-
# Basic CMake build settings
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "Release" CACHE STRING

View file

@ -0,0 +1,42 @@
{ lib, python, fetchFromGitHub }:
with python.pkgs;
buildPythonApplication rec {
pname = "deepTools";
version = "3.5.1";
src = fetchFromGitHub {
owner = "deeptools";
repo = "deepTools";
rev = version;
sha256 = "07v8vb2x4b0mgw0mvcj91vj1fqbcwizwsniysl2cvmv93gad8gbp";
};
propagatedBuildInputs = [
numpy
numpydoc
scipy
py2bit
pybigwig
pysam
matplotlib
plotly
deeptoolsintervals
];
checkInputs = [ nose ];
meta = with lib; {
homepage = "https://deeptools.readthedocs.io/en/develop";
description = "Tools for exploring deep DNA sequencing data";
longDescription = ''
deepTools contains useful modules to process the mapped reads data for multiple
quality checks, creating normalized coverage files in standard bedGraph and bigWig
file formats, that allow comparison between different files (for example, treatment and control).
Finally, using such normalized and standardized files, deepTools can create many
publication-ready visualizations to identify enrichments and for functional
annotations of the genome.
'';
license = licenses.gpl3;
maintainers = with maintainers; [ scalavision ];
};
}

View file

@ -0,0 +1,40 @@
{ lib, stdenv, fetchpatch, fetchFromGitHub, htslib, zlib, bzip2, xz, ncurses, boost }:
stdenv.mkDerivation rec {
pname = "delly";
version = "0.9.1";
src = fetchFromGitHub {
owner = "dellytools";
repo = pname;
rev = "v${version}";
sha256 = "sha256-p1pryP+ktGt8OHFiASJQ3T+K94cNBG9fLxsJ2n/T+DA=";
};
buildInputs = [ zlib htslib bzip2 xz ncurses boost ];
EBROOTHTSLIB = htslib;
installPhase = ''
runHook preInstall
install -Dm555 src/delly $out/bin/delly
runHook postInstall
'';
meta = with lib; {
description = "Structural variant caller for mapped DNA sequenced data";
license = licenses.bsd3;
maintainers = with maintainers; [ scalavision ];
platforms = platforms.linux;
longDescription = ''
Delly is an integrated structural variant (SV) prediction method
that can discover, genotype and visualize deletions, tandem duplications,
inversions and translocations at single-nucleotide resolution in
short-read massively parallel sequencing data. It uses paired-ends,
split-reads and read-depth to sensitively and accurately delineate
genomic rearrangements throughout the genome.
'';
};
}

View file

@ -0,0 +1,44 @@
{ lib, stdenv, fetchFromGitHub, cmake, zlib }:
stdenv.mkDerivation rec {
pname = "diamond";
version = "0.8.36";
src = fetchFromGitHub {
owner = "bbuchfink";
repo = "diamond";
rev = "v${version}";
sha256 = "sha256-7uqOQOzkYN0RNwKBGUZ/Ny5NVZMoGByOk+GUvjdBzck=";
};
patches = [
./diamond-0.8.36-no-warning.patch
];
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib ];
meta = with lib; {
description = "Accelerated BLAST compatible local sequence aligner";
longDescription = ''
A sequence aligner for protein and translated DNA
searches and functions as a drop-in replacement for the NCBI BLAST
software tools. It is suitable for protein-protein search as well as
DNA-protein search on short reads and longer sequences including contigs
and assemblies, providing a speedup of BLAST ranging up to x20,000.
DIAMOND is developed by Benjamin Buchfink. Feel free to contact him for support (Email Twitter).
If you use DIAMOND in published research, please cite
B. Buchfink, Xie C., D. Huson,
"Fast and sensitive protein alignment using DIAMOND",
Nature Methods 12, 59-60 (2015).
'';
homepage = "https://github.com/bbuchfink/diamond";
license = {
fullName = "University of Tuebingen, Benjamin Buchfink";
url = "https://raw.githubusercontent.com/bbuchfink/diamond/master/src/COPYING";
};
maintainers = [ maintainers.metabar ];
};
}

View file

@ -0,0 +1,20 @@
diff -u -r diamond-0.8.36/src/dp/scalar_traceback.h diamond-0.8.36-patched/src/dp/scalar_traceback.h
--- diamond-0.8.36/src/dp/scalar_traceback.h 2017-02-06 16:32:05.000000000 +0100
+++ diamond-0.8.36-patched/src/dp/scalar_traceback.h 2017-02-23 15:13:24.000000000 +0100
@@ -19,6 +19,7 @@
#ifndef SCALAR_TRACEBACK_H_
#define SCALAR_TRACEBACK_H_
+#include <cmath>
#include <exception>
#include "../basic/score_matrix.h"
@@ -31,7 +32,7 @@
template<>
inline bool almost_equal<float>(float x, float y)
{
- return abs(x - y) < 0.001f;
+ return std::abs(x - y) < 0.001f;
}
template<typename _score>

View file

@ -0,0 +1,38 @@
{ lib, stdenv, fetchurl, gcc, zlib, python27 }:
stdenv.mkDerivation rec {
pname = "ecopcr";
version = "0.8.0";
src = fetchurl {
url = "https://git.metabarcoding.org/obitools/ecopcr/uploads/6f37991b325c8c171df7e79e6ae8d080/ecopcr-${version}.tar.gz";
sha256 = "10c58hj25z78jh0g3zcbx4890yd2qrvaaanyx8mn9p49mmyf5pk6";
};
sourceRoot = "ecoPCR/src";
buildInputs = [ gcc python27 zlib ];
installPhase = ''
mkdir -p $out/bin
cp -v ecoPCR $out/bin
cp -v ecogrep $out/bin
cp -v ecofind $out/bin
cp -v ../tools/ecoPCRFormat.py $out/bin/ecoPCRFormat
chmod a+x $out/bin/ecoPCRFormat
'';
meta = with lib; {
description = "Electronic PCR software tool";
longDescription = ''
ecoPCR is an electronic PCR software developed by the LECA. It
helps you estimate Barcode primers quality. In conjunction with
OBITools, you can postprocess ecoPCR output to compute barcode
coverage and barcode specificity. New barcode primers can be
developed using the ecoPrimers software.
'';
homepage = "https://git.metabarcoding.org/obitools/ecopcr/wikis/home";
license = licenses.cecill20;
maintainers = [ maintainers.metabar ];
};
}

View file

@ -0,0 +1,54 @@
{ lib
, autoPatchelfHook
, fetchFromGitHub
, python3Packages
, wget
, zlib
}:
python3Packages.buildPythonApplication rec {
pname = "eggnog-mapper";
version = "2.1.7";
src = fetchFromGitHub {
owner = "eggnogdb";
repo = pname;
rev = version;
hash = "sha256-auVD/r8m3TAB1KYMQ7Sae23eDg6LRx/daae0505cjwU=";
};
postPatch = ''
# Not a great solution...
substituteInPlace setup.cfg \
--replace "==" ">="
'';
nativeBuildInputs = [
autoPatchelfHook
];
buildInputs = [
zlib
];
propagatedBuildInputs = [
wget
] ++ (with python3Packages; [
biopython
psutil
XlsxWriter
]);
# Tests rely on some of the databases being available, which is not bundled
# with this package as (1) in total, they represent >100GB of data, and (2)
# the user can download only those that interest them.
doCheck = false;
meta = with lib; {
description = "Fast genome-wide functional annotation through orthology assignment";
license = licenses.gpl2;
homepage = "https://github.com/eggnogdb/eggnog-mapper/wiki";
maintainers = with maintainers; [ luispedro ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,30 @@
{ lib, stdenv, fetchurl, readline, perl, libharu, libX11, libpng, libXt, zlib }:
stdenv.mkDerivation rec {
pname = "emboss";
version = "6.6.0";
src = fetchurl {
url = "ftp://emboss.open-bio.org/pub/EMBOSS/EMBOSS-${version}.tar.gz";
sha256 = "7184a763d39ad96bb598bfd531628a34aa53e474db9e7cac4416c2a40ab10c6e";
};
buildInputs = [ readline perl libharu libpng libX11 libXt zlib ];
configureFlags = [ "--with-hpdf=${libharu}" "--with-pngdriver=${zlib}" ];
postConfigure = ''
sed -i 's@$(bindir)/embossupdate@true@' Makefile
'';
meta = {
description = "The European Molecular Biology Open Software Suite";
longDescription = ''EMBOSS is a free Open Source software analysis package
specially developed for the needs of the molecular biology (e.g. EMBnet)
user community, including libraries. The software automatically copes with
data in a variety of formats and even allows transparent retrieval of
sequence data from the web.'';
license = lib.licenses.gpl2;
homepage = "http://emboss.sourceforge.net/";
};
}

View file

@ -0,0 +1,32 @@
{ lib, stdenv, fetchurl, gsl }:
stdenv.mkDerivation rec {
pname = "est-sfs";
version = "2.03";
src = fetchurl {
url = "mirror://sourceforge/est-usfs/${pname}-release-${version}.tar.gz";
sha256 = "1hvamrgagz0xi89w8qafyd9mjrdpyika8zm22drddnjkp4sdj65n";
};
buildInputs = [ gsl ];
makeFlags = [
"CC=${stdenv.cc.targetPrefix}cc"
];
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/share/doc/${pname}
cp est-sfs $out/bin
cp est-sfs-documentation.pdf $out/share/doc/${pname}
'';
meta = with lib; {
homepage = "https://sourceforge.net/projects/est-usfs";
description = "Estimate the unfolded site frequency spectrum and ancestral states";
license = licenses.gpl3;
maintainers = [ maintainers.bzizou ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,25 @@
{ lib, stdenv, fetchurl, glib, pkg-config }:
stdenv.mkDerivation rec {
version = "2.4.0";
pname = "exonerate";
src = fetchurl {
url = "http://ftp.ebi.ac.uk/pub/software/vertebrategenomics/exonerate/${pname}-${version}.tar.gz";
sha256 = "0hj0m9xygiqsdxvbg79wq579kbrx1mdrabi2bzqz2zn9qwfjcjgq";
};
doCheck = true;
buildInputs = [ glib ];
nativeBuildInputs = [ pkg-config ];
meta = with lib; {
description = "Generic tool for sequence alignment";
homepage = "https://www.ebi.ac.uk/about/vertebrate-genomics/software/exonerate";
license = licenses.gpl3;
maintainers = [ maintainers.bzizou ];
platforms = platforms.unix ;
};
}

View file

@ -0,0 +1,33 @@
{ lib
, stdenv
, fetchFromGitHub
, zlib
, libdeflate
, isa-l
}:
stdenv.mkDerivation rec {
pname = "fastp";
version = "0.23.2";
src = fetchFromGitHub {
owner = "OpenGene";
repo = "fastp";
rev = "v${version}";
sha256 = "sha256-W1mXTfxD7/gHJhao6qqbNcyM3t2cfrUYiBYPJi/O1RI=";
};
buildInputs = [ zlib libdeflate isa-l ];
installPhase = ''
install -D fastp $out/bin/fastp
'';
meta = with lib; {
description = "Ultra-fast all-in-one FASTQ preprocessor";
license = licenses.mit;
homepage = "https://github.com/OpenGene/fastp";
maintainers = with maintainers; [ jbedo ];
platforms = platforms.x86_64;
};
}

View file

@ -0,0 +1,61 @@
{ lib, stdenv, fetchFromGitHub, cmake, zlib, libglvnd, libGLU, wrapQtAppsHook
, sshSupport ? true, openssl, libssh
, tetgenSupport ? true, tetgen
, ffmpegSupport ? true, ffmpeg
, dicomSupport ? false, dcmtk
, withModelRepo ? true
, withCadFeatures ? false
}:
stdenv.mkDerivation rec {
pname = "febio-studio";
version = "1.6.1";
src = fetchFromGitHub {
owner = "febiosoftware";
repo = "FEBioStudio";
rev = "v${version}";
sha256 = "0r6pg49i0q9idp7pjymj7mlxd63qjvmfvg0l7fmx87y1yd2hfw4h";
};
patches = [
./febio-studio-cmake.patch # Fix Errors that appear with certain Cmake flags
];
cmakeFlags = [
"-DQt_Ver=5"
"-DNOT_FIRST=On"
"-DOpenGL_GL_PREFERENCE=GLVND"
]
++ lib.optional sshSupport "-DUSE_SSH=On"
++ lib.optional tetgenSupport "-DUSE_TETGEN=On"
++ lib.optional ffmpegSupport "-DUSE_FFMPEG=On"
++ lib.optional dicomSupport "-DUSE_DICOM=On"
++ lib.optional withModelRepo "-DMODEL_REPO=On"
++ lib.optional withCadFeatures "-DCAD_FEATURES=On"
;
installPhase = ''
runHook preInstall
mkdir -p $out/
cp -R bin $out/
runHook postInstall
'';
nativeBuildInputs = [ cmake wrapQtAppsHook ];
buildInputs = [ zlib libglvnd libGLU openssl libssh ]
++ lib.optional sshSupport openssl
++ lib.optional tetgenSupport tetgen
++ lib.optional ffmpegSupport ffmpeg
++ lib.optional dicomSupport dcmtk
;
meta = with lib; {
description = "FEBio Suite Solver";
license = with licenses; [ mit ];
homepage = "https://febio.org/";
platforms = platforms.unix;
maintainers = with maintainers; [ Scriptkiddi ];
};
}

View file

@ -0,0 +1,38 @@
diff --git a/FEBioStudio/RepositoryPanel.cpp b/FEBioStudio/RepositoryPanel.cpp
index 382db303..314cdc68 100644
--- a/FEBioStudio/RepositoryPanel.cpp
+++ b/FEBioStudio/RepositoryPanel.cpp
@@ -1364,10 +1364,10 @@ void CRepositoryPanel::loadingPageProgress(qint64 bytesSent, qint64 bytesTotal)
#else
-CRepositoryPanel::CRepositoryPanel(CMainWindow* pwnd, QWidget* parent){}
+CRepositoryPanel::CRepositoryPanel(CMainWindow* pwnd, QDockWidget* parent){}
CRepositoryPanel::~CRepositoryPanel(){}
void CRepositoryPanel::OpenLink(const QString& link) {}
-// void CRepositoryPanel::Raise() {}
+void CRepositoryPanel::Raise() {}
void CRepositoryPanel::SetModelList(){}
void CRepositoryPanel::ShowMessage(QString message) {}
void CRepositoryPanel::ShowWelcomeMessage(QByteArray messages) {}
@@ -1396,6 +1396,7 @@ void CRepositoryPanel::on_actionSearch_triggered() {}
void CRepositoryPanel::on_actionClearSearch_triggered() {}
void CRepositoryPanel::on_actionDeleteRemote_triggered() {}
void CRepositoryPanel::on_actionModify_triggered() {}
+void CRepositoryPanel::on_actionCopyPermalink_triggered() {}
void CRepositoryPanel::on_treeWidget_itemSelectionChanged() {}
void CRepositoryPanel::on_treeWidget_customContextMenuRequested(const QPoint &pos) {}
void CRepositoryPanel::DownloadItem(CustomTreeWidgetItem *item) {}
diff --git a/FEBioStudio/WzdUpload.cpp b/FEBioStudio/WzdUpload.cpp
index 5ce74346..20062e06 100644
--- a/FEBioStudio/WzdUpload.cpp
+++ b/FEBioStudio/WzdUpload.cpp
@@ -1183,7 +1183,7 @@ void CWzdUpload::on_saveJson_triggered()
getProjectJson(&projectInfo);
QFile file(filedlg.selectedFiles()[0]);
- file.open(QIODeviceBase::WriteOnly);
+ file.open(QIODevice::WriteOnly);
file.write(projectInfo);
file.close();
}

View file

@ -0,0 +1,49 @@
{ lib
, stdenv
, fetchurl
, unzip
}:
let
inherit (stdenv.targetPlatform) system;
throwSystem = throw "Unsupported system: ${system}";
os = {
x86_64-darwin = "darwin";
x86_64-linux = "linux";
}.${system} or throwSystem;
sha256 = {
x86_64-darwin = "sha256-OIyEu3Hsobui9s5+T9nC10SxMw0MhgmTA4SN9Ridyzo=";
x86_64-linux = "sha256-SxBjRd95hoh2zwX6IDnkZnTWVduQafPHvnWw8qTuM78=";
}.${system} or throwSystem;
in
stdenv.mkDerivation rec {
pname = "flywheel-cli";
version = "16.2.0";
src = fetchurl {
url = "https://storage.googleapis.com/flywheel-dist/cli/${version}/fw-${os}_amd64-${version}.zip";
inherit sha256;
};
nativeBuildInputs = [ unzip ];
unpackPhase = ''
unzip ${src}
'';
installPhase = ''
runHook preInstall
install -Dt $out/bin ./${os}_amd64/fw
runHook postInstall
'';
meta = with lib; {
description = "Library and command line interface for interacting with a Flywheel site";
homepage = "https://gitlab.com/flywheel-io/public/python-cli";
license = licenses.mit;
maintainers = with maintainers; [ rbreslow ];
platforms = [ "x86_64-darwin" "x86_64-linux" ];
};
}

View file

@ -0,0 +1,35 @@
{ lib, stdenv, fetchFromGitHub, zlib, bzip2, xz }:
stdenv.mkDerivation rec {
pname = "freebayes";
version = "1.3.1";
src = fetchFromGitHub {
name = "freebayes-${version}-src";
owner = "ekg";
repo = "freebayes";
rev = "v${version}";
sha256 = "035nriknjqq8gvil81vvsmvqwi35v80q8h1cw24vd1gdyn1x7bys";
fetchSubmodules = true;
};
buildInputs = [ zlib bzip2 xz ];
# Workaround build failure on -fno-common toolchains like upstream
# gcc-10. Otherwise build fails as:
# ld: foomatic_rip-options.o:/build/foomatic-filters-4.0.17/options.c:49: multiple definition of `cupsfilter';
# foomatic_rip-foomaticrip.o:/build/foomatic-filters-4.0.17/foomaticrip.c:158: first defined here
NIX_CFLAGS_COMPILE = "-fcommon";
installPhase = ''
install -vD bin/freebayes bin/bamleftalign scripts/* -t $out/bin
'';
meta = with lib; {
description = "Bayesian haplotype-based polymorphism discovery and genotyping";
license = licenses.mit;
homepage = "https://github.com/ekg/freebayes";
maintainers = with maintainers; [ jdagilliland ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -0,0 +1,40 @@
{ lib
, stdenv
, fetchFromGitHub
, cmake
, gtest
, which
}:
stdenv.mkDerivation rec {
pname = "genmap";
version = "1.3.0";
src = fetchFromGitHub {
owner = "cpockrandt";
repo = "genmap";
rev = "genmap-v${version}";
fetchSubmodules = true;
sha256 = "sha256-7sIKBRMNzyCrZ/c2nXkknb6a5YsXe6DRE2IFhp6AviY=";
};
nativeBuildInputs = [ cmake ];
doCheck = true;
patches = [ ./gtest.patch ];
checkInputs = [ gtest which ];
preCheck = "make genmap_algo_test";
# disable benchmarks
preConfigure = ''
echo > benchmarks/CMakeLists.txt
'';
meta = {
description = "Ultra-fast computation of genome mappability";
license = lib.licenses.bsd3;
homepage = "https://github.com/cpockrandt/genmap";
maintainers = with lib.maintainers; [ jbedo ];
platforms = lib.platforms.unix;
};
}

View file

@ -0,0 +1,30 @@
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 67ec8f9..ed0b2e0 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -2,23 +2,14 @@
# GenMap tests
# ===========================================================================
-include (ExternalProject)
-ExternalProject_Add (googletest
- PREFIX "${CMAKE_CURRENT_BINARY_DIR}/googletest"
- GIT_REPOSITORY "https://github.com/google/googletest.git"
- INSTALL_DIR "${CMAKE_CURRENT_BINARY_DIR}"
- CMAKE_ARGS "-DCMAKE_INSTALL_PREFIX=${CMAKE_CURRENT_BINARY_DIR}"
- GIT_TAG release-1.10.0
- UPDATE_DISCONNECTED YES)
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") # TODO: --coverage
add_executable (genmap_algo_test tests.cpp)
-add_dependencies (genmap_algo_test googletest)
include_directories (${CMAKE_CURRENT_BINARY_DIR}/include)
target_link_libraries (genmap_algo_test ${SEQAN_LIBRARIES})
-target_link_libraries (genmap_algo_test ${CMAKE_CURRENT_BINARY_DIR}/lib/libgtest.a)
-target_link_libraries (genmap_algo_test ${CMAKE_CURRENT_BINARY_DIR}/lib/libgtest_main.a)
+target_link_libraries (genmap_algo_test -lgtest)
+target_link_libraries (genmap_algo_test -lgtest_main)
target_link_libraries (genmap_algo_test pthread)
add_test(NAME algo_test COMMAND genmap_algo_test)

View file

@ -0,0 +1,46 @@
{lib, stdenv, fetchFromGitHub, unzip, which, python3, perl}:
stdenv.mkDerivation rec {
pname = "hisat2";
version = "2.2.1";
src = fetchFromGitHub {
owner = "DaehwanKimLab";
repo = "hisat2";
rev = "v${version}";
sha256 = "0lmzdhzjkvxw7n5w40pbv5fgzd4cz0f9pxczswn3d4cr0k10k754";
};
nativeBuildInputs = [ unzip which ];
buildInputs = [ python3 perl ];
installPhase = ''
mkdir -p $out/bin
cp hisat2 \
hisat2-inspect-l \
hisat2-build-s \
hisat2-align-l \
hisat2-inspect \
hisat2-align-s \
hisat2-inspect-s \
hisat2-build-l \
hisat2-build \
extract_exons.py \
extract_splice_sites.py \
hisat2_extract_exons.py \
hisat2_extract_snps_haplotypes_UCSC.py \
hisat2_extract_snps_haplotypes_VCF.py \
hisat2_extract_splice_sites.py \
hisat2_simulate_reads.py \
$out/bin
'';
meta = with lib; {
description = "Graph based aligner";
license = licenses.gpl3Plus;
homepage = "https://daehwankimlab.github.io/hisat2/";
maintainers = with maintainers; [ jbedo ];
platforms = [ "x86_64-linux" "i686-linux" ];
};
}

View file

@ -0,0 +1,26 @@
{ lib, stdenv, fetchurl }:
stdenv.mkDerivation rec {
version = "3.3.2";
pname = "hmmer";
src = fetchurl {
url = "http://eddylab.org/software/hmmer/${pname}-${version}.tar.gz";
sha256 = "0s9wf6n0qanbx8qs6igfl3vyjikwbrvh4d9d6mv54yp3xysykzlj";
};
meta = with lib; {
description = "Biosequence analysis using profile hidden Markov models";
longDescription = ''
HMMER is used for searching sequence databases for sequence homologs, and for making sequence alignments. It implements methods using probabilistic models called profile hidden Markov models (profile HMMs).
HMMER is often used together with a profile database, such as Pfam or many of the databases that participate in Interpro. But HMMER can also work with query sequences, not just profiles, just like BLAST. For example, you can search a protein query sequence against a database with phmmer, or do an iterative search with jackhmmer.
HMMER is designed to detect remote homologs as sensitively as possible, relying on the strength of its underlying probability models. In the past, this strength came at significant computational expense, but as of the new HMMER3 project, HMMER is now essentially as fast as BLAST.
HMMER can be downloaded and installed as a command line tool on your own hardware, and now it is also more widely accessible to the scientific community via new search servers at the European Bioinformatics Institute.
'';
homepage = "http://hmmer.org/";
license = licenses.gpl3;
maintainers = [ maintainers.iimog ];
# at least SSE is *required*
platforms = platforms.x86_64;
};
}

View file

@ -0,0 +1,35 @@
{ lib, stdenv, fetchzip, jdk11 }:
stdenv.mkDerivation rec {
pname = "igv";
version = "2.8.13";
src = fetchzip {
url = "https://data.broadinstitute.org/igv/projects/downloads/2.8/IGV_${version}.zip";
sha256 = "0sab478jq96iw3fv0560hrrj8qbh40r8m4ncypdb7991j9haxl09";
};
installPhase = ''
mkdir -pv $out/{share,bin}
cp -Rv * $out/share/
sed -i "s#prefix=.*#prefix=$out/share#g" $out/share/igv.sh
sed -i 's#java#${jdk11}/bin/java#g' $out/share/igv.sh
sed -i "s#prefix=.*#prefix=$out/share#g" $out/share/igvtools
sed -i 's#java#${jdk11}/bin/java#g' $out/share/igvtools
ln -s $out/share/igv.sh $out/bin/igv
ln -s $out/share/igvtools $out/bin/igvtools
chmod +x $out/bin/igv
chmod +x $out/bin/igvtools
'';
meta = with lib; {
homepage = "https://www.broadinstitute.org/igv/";
description = "A visualization tool for interactive exploration of genomic datasets";
license = licenses.mit;
platforms = platforms.unix;
maintainers = [ maintainers.mimame ];
};
}

View file

@ -0,0 +1,37 @@
{ lib, stdenv, fetchFromGitHub, cmake, makeWrapper,
perlPackages,
libminc, EBTKS }:
stdenv.mkDerivation rec {
pname = "inormalize";
name = "${pname}-2014-10-21";
src = fetchFromGitHub {
owner = "BIC-MNI";
repo = pname;
rev = "79cea9cdfe7b99abfd40afda89ab2253b596ad2f";
sha256 = "1ahqv5q0ljvji99a5q8azjkdf6bgp6nr8lwivkqwqs3jm0k5clq7";
};
patches = [ ./lgmask-interp.patch ./nu_correct_norm-interp.patch ];
nativeBuildInputs = [ cmake makeWrapper ];
buildInputs = [ libminc EBTKS ];
propagatedBuildInputs = with perlPackages; [ perl GetoptTabular MNI-Perllib ];
cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake" "-DEBTKS_DIR=${EBTKS}/lib/" ];
postFixup = ''
for p in $out/bin/*; do
wrapProgram $p --prefix PERL5LIB : $PERL5LIB
done
'';
meta = with lib; {
homepage = "https://github.com/BIC-MNI/${pname}";
description = "Program to normalize intensity of MINC files";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.free;
};
}

View file

@ -0,0 +1,10 @@
diff --git a/lgmask.in b/lgmask.in
index 17dbe4d..2195d91 100644
--- a/lgmask.in
+++ b/lgmask.in
@@ -1,4 +1,4 @@
-#! @PERL@
+#! /usr/bin/env perl
#---------------------------------------------------------------------------
#@COPYRIGHT :

View file

@ -0,0 +1,10 @@
diff --git a/nu_correct_norm.in b/nu_correct_norm.in
index 1dc84ac..1bc6235 100644
--- a/nu_correct_norm.in
+++ b/nu_correct_norm.in
@@ -1,4 +1,4 @@
-#! @PERL@
+#! /usr/bin/perl
#---------------------------------------------------------------------------
#@COPYRIGHT :

View file

@ -0,0 +1,34 @@
{ lib, stdenv, fetchurl, hmmer, perl }:
stdenv.mkDerivation rec {
version = "1.1.1";
pname = "itsx";
src = fetchurl {
url = "http://microbiology.se/sw/ITSx_${version}.tar.gz";
sha256 = "0lrmy2n3ax7f208k0k8l3yz0j5cpz05hv4hx1nnxzn0c51z1pc31";
};
buildInputs = [ hmmer perl ];
buildPhase = ''
sed -e "s,profileDB = .*,profileDB = \"$out/share/ITSx_db/HMMs\";," -i ITSx
sed "3 a \$ENV{\'PATH\'}='${hmmer}/bin:'.\"\$ENV{\'PATH\'}\";" -i ITSx
mkdir bin
mv ITSx bin
'';
installPhase = ''
mkdir -p $out/share/doc && cp -a bin $out/
cp *pdf $out/share/doc
cp -r ITSx_db $out/share
'';
meta = with lib; {
description = "Improved software detection and extraction of ITS1 and ITS2 from ribosomal ITS sequences of fungi and other eukaryotes for use in environmental sequencing";
homepage = "https://microbiology.se/software/itsx/";
license = licenses.gpl3;
maintainers = [ maintainers.bzizou ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,43 @@
{ lib
, stdenv
, fetchurl
, neuron-version
, libX11
, libXext
, patchelf
}:
stdenv.mkDerivation rec {
pname = "iv";
version = "19";
src = fetchurl {
url = "https://www.neuron.yale.edu/ftp/neuron/versions/v${neuron-version}/iv-${version}.tar.gz";
sha256 = "07a3g8zzay4h0bls7fh89dd0phn7s34c2g15pij6dsnwpmjg06yx";
};
nativeBuildInputs = [ patchelf ];
buildInputs = [ libXext ];
propagatedBuildInputs = [ libX11 ];
hardeningDisable = [ "format" ];
postInstall = ''
for dir in $out/*; do # */
if [ -d $dir/lib ]; then
mv $dir/* $out # */
rmdir $dir
break
fi
done
'' + lib.optionalString stdenv.isLinux ''
patchelf --add-needed ${libX11}/lib/libX11.so $out/lib/libIVhines.so
'';
meta = with lib; {
description = "InterViews graphical library for Neuron";
license = licenses.bsd3;
homepage = "http://www.neuron.yale.edu/neuron";
platforms = platforms.all;
};
}

View file

@ -0,0 +1,30 @@
{ lib, stdenv, fetchFromGitHub, autoconf, cmake, hdf5, zlib }:
stdenv.mkDerivation rec {
pname = "kallisto";
version = "0.48.0";
src = fetchFromGitHub {
repo = "kallisto";
owner = "pachterlab";
rev = "v${version}";
sha256 = "sha256-r0cdR0jTRa1wu/LDKW6NdxI3XaKj6wcIVbIlct0fFvI=";
};
nativeBuildInputs = [ autoconf cmake ];
buildInputs = [ hdf5 zlib ];
cmakeFlags = [ "-DUSE_HDF5=ON" ];
# Parallel build fails in some cases: https://github.com/pachterlab/kallisto/issues/160
enableParallelBuilding = false;
meta = with lib; {
description = "Program for quantifying abundances of transcripts from RNA-Seq data";
homepage = "https://pachterlab.github.io/kallisto";
license = licenses.bsd2;
platforms = platforms.linux;
maintainers = with maintainers; [ arcadio ];
};
}

View file

@ -0,0 +1,75 @@
{ lib, stdenv
, libpng
, libuuid
, zlib
, bzip2
, xz
, openssl
, curl
, libmysqlclient
, bash
, fetchFromGitHub
, which
}:
stdenv.mkDerivation rec {
pname = "kent";
version = "404";
src = fetchFromGitHub {
owner = "ucscGenomeBrowser";
repo = pname;
rev = "v${version}_base";
sha256 = "0l5lmqqc6sqkf4hyk3z4825ly0vdlj5xdfad6zd0708cb1v81nbx";
};
buildInputs = [ libpng libuuid zlib bzip2 xz openssl curl libmysqlclient ];
patchPhase = ''
substituteInPlace ./src/checkUmask.sh \
--replace "/bin/bash" "${bash}/bin/bash"
substituteInPlace ./src/hg/sqlEnvTest.sh \
--replace "which mysql_config" "${which}/bin/which ${libmysqlclient}/bin/mysql_config"
'';
buildPhase = ''
export MACHTYPE=$(uname -m)
export CFLAGS="-fPIC"
export MYSQLINC=$(mysql_config --include | sed -e 's/^-I//g')
export MYSQLLIBS=$(mysql_config --libs)
export DESTBINDIR=$NIX_BUILD_TOP/bin
export HOME=$NIX_BUILD_TOP
cd ./src
chmod +x ./checkUmask.sh
./checkUmask.sh
mkdir -p $NIX_BUILD_TOP/lib
mkdir -p $NIX_BUILD_TOP/bin/x86_64
make libs
cd jkOwnLib
make
cp ../lib/x86_64/jkOwnLib.a $NIX_BUILD_TOP/lib
cp ../lib/x86_64/jkweb.a $NIX_BUILD_TOP/lib
cd ../utils
make
'';
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/lib
cp $NIX_BUILD_TOP/lib/jkOwnLib.a $out/lib
cp $NIX_BUILD_TOP/lib/jkweb.a $out/lib
cp $NIX_BUILD_TOP/bin/x86_64/* $out/bin
'';
meta = with lib; {
description = "UCSC Genome Bioinformatics Group's suite of biological analysis tools, i.e. the kent utilities";
license = licenses.unfree;
maintainers = with maintainers; [ scalavision ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,38 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch, zlib, automake, autoconf, libtool }:
stdenv.mkDerivation rec {
pname = "kssd";
version = "1.1";
src = fetchFromGitHub {
owner = "yhg926";
repo = "public_kssd";
rev = "v${version}";
sha256 = "sha256-8jzYqo9LXF66pQ1EIusm+gba2VbTYpJz2K3NVlA3QxY=";
};
patches = [
# Pull upstream patch for -fno-common toolchain support:
# https://github.com/yhg926/public_kssd/pull/9
(fetchpatch {
name = "fno-common.patch";
url = "https://github.com/yhg926/public_kssd/commit/cdd1e8aae256146f5913a3b4c723b638d53bdf27.patch";
sha256 = "sha256-HhaTRqPfKR+ouh0PwEH6u22pbuqbX2OypRzw8BXm0W4=";
})
];
nativeBuildInputs = [ autoconf automake ];
buildInputs = [ zlib libtool ];
installPhase = ''
install -vD kssd $out/bin/kssd
'';
meta = with lib; {
description = "K-mer substring space decomposition";
license = licenses.asl20;
homepage = "https://github.com/yhg926/public_kssd";
maintainers = with maintainers; [ unode ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -0,0 +1,32 @@
{ lib, stdenv, fetchFromGitLab, unzip, zlib, python3, parallel }:
stdenv.mkDerivation rec {
pname = "last";
version = "1268";
src = fetchFromGitLab {
owner = "mcfrith";
repo = "last";
rev = version;
sha256 = "sha256-9yzeLg3xporl32sZ1Ks8s63jXJNGUiI64XyQmhbQF4M=";
};
nativeBuildInputs = [ unzip ];
buildInputs = [ zlib python3 ];
makeFlags = [ "prefix=${placeholder "out"}" ];
postFixup = ''
for f in $out/bin/parallel-* ; do
sed -i 's|parallel |${parallel}/bin/parallel |' $f
done
'';
meta = with lib; {
description = "Genomic sequence aligner";
homepage = "https://gitlab.com/mcfrith/last";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ jbedo ];
platforms = platforms.x86_64;
};
}

View file

@ -0,0 +1,33 @@
{ lib, stdenv, fetchurl, jre, makeWrapper }:
stdenv.mkDerivation rec {
pname = "macse";
version = "2.03";
src = fetchurl {
url = "https://bioweb.supagro.inra.fr/${pname}/releases/${pname}_v${version}.jar";
sha256 = "0jnjyz4f255glg37rawzdv4m6nfs7wfwc5dny7afvx4dz2sv4ssh";
};
nativeBuildInputs = [ makeWrapper ];
dontUnpack = true;
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir -p $out/share/java
cp -s $src $out/share/java/macse.jar
makeWrapper ${jre}/bin/java $out/bin/macse --add-flags "-jar $out/share/java/macse.jar"
runHook postInstall
'';
meta = with lib; {
description = "Multiple alignment of coding sequences";
homepage = "https://bioweb.supagro.inra.fr/macse/";
sourceProvenance = with sourceTypes; [ binaryBytecode ];
license = licenses.gpl2;
maintainers = [ maintainers.bzizou ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,35 @@
{ lib, stdenv, fetchFromGitHub, cmake, zlib, python2 }:
stdenv.mkDerivation rec {
pname = "manta";
version = "1.6.0";
src = fetchFromGitHub {
owner = "Illumina";
repo = "manta";
rev = "v${version}";
sha256 = "1711xkcw8rpw9xv3bbm7v1aryjz4r341rkq5255192dg38sgq7w2";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib python2 ];
postFixup = ''
sed -i 's|/usr/bin/env python2|${python2.interpreter}|' $out/lib/python/makeRunScript.py
sed -i 's|/usr/bin/env python|${python2.interpreter}|' $out/lib/python/pyflow/pyflow.py
sed -i 's|/bin/bash|${stdenv.shell}|' $out/lib/python/pyflow/pyflowTaskWrapper.py
'';
doInstallCheck = true;
installCheckPhase = ''
rm $out/lib/python/**/*.pyc
PYTHONPATH=$out/lib/python:$PYTHONPATH python -c 'import makeRunScript'
PYTHONPATH=$out/lib/python/pyflow:$PYTHONPATH python -c 'import pyflowTaskWrapper; import pyflow'
'';
meta = with lib; {
description = "Structural variant caller";
license = licenses.gpl3;
homepage = "https://github.com/Illumina/manta";
maintainers = with maintainers; [ jbedo ];
platforms = platforms.x86_64;
};
}

View file

@ -0,0 +1,27 @@
{ lib, stdenv, fetchFromGitHub, cmake, zlib }:
stdenv.mkDerivation rec {
pname = "megahit";
version = "1.2.9";
src = fetchFromGitHub {
owner = "voutcn";
repo = "megahit";
rev = "v${version}";
sha256 = "1r5d9nkdmgjsbrpj43q9hy3s8jwsabaz3ji561v18hy47v58923c";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib ];
cmakeFlags = lib.optional stdenv.hostPlatform.isStatic [
"-DSTATIC_BUILD=ON"
];
meta = with lib; {
description = "An ultra-fast single-node solution for large and complex metagenomics assembly via succinct de Bruijn graph";
license = licenses.gpl3;
homepage = "https://github.com/voutcn/megahit";
maintainers = with maintainers; [ luispedro ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -0,0 +1,21 @@
{ lib, stdenv, fetchurl, python3, perl, glibc, zlib }:
stdenv.mkDerivation rec {
pname = "meme-suite";
version = "5.1.1";
src = fetchurl {
url = "https://meme-suite.org/meme-software/${version}/meme-${version}.tar.gz";
sha256 = "38d73d256d431ad4eb7da2c817ce56ff2b4e26c39387ff0d6ada088938b38eb5";
};
buildInputs = [ zlib ];
nativeBuildInputs = [ perl python3 ];
meta = with lib; {
description = "Motif-based sequence analysis tools";
license = licenses.unfree;
maintainers = with maintainers; [ gschwartz ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,26 @@
{ lib, stdenv, fetchFromGitHub, cmake, gcc, gcc-unwrapped }:
stdenv.mkDerivation rec {
version = "3.7.1";
pname = "messer-slim";
src = fetchFromGitHub {
owner = "MesserLab";
repo = "SLiM";
rev = "v${version}";
sha256 = "sha256-3ox+9hzqI8s4gmEkQ3Xm1Ih639LBtcSJNNmJgbpWaoM=";
};
nativeBuildInputs = [ cmake gcc gcc-unwrapped ];
cmakeFlags = [ "-DCMAKE_AR=${gcc-unwrapped}/bin/gcc-ar"
"-DCMAKE_RANLIB=${gcc-unwrapped}/bin/gcc-ranlib" ];
meta = {
description = "An evolutionary simulation framework";
homepage = "https://messerlab.org/slim/";
license = with lib.licenses; [ gpl3 ];
maintainers = with lib.maintainers; [ bzizou ];
platforms = lib.platforms.all;
};
}

View file

@ -0,0 +1,25 @@
{ stdenv, lib, gccStdenv, fetchurl, zlib, mpi }:
gccStdenv.mkDerivation rec {
version = "3.7.2";
pname = "migrate";
src = fetchurl {
url = "https://peterbeerli.com/migrate-html5/download_version3/${pname}-${version}.src.tar.gz";
sha256 = "1p2364ffjc56i82snzvjpy6pkf6wvqwvlvlqxliscx2c303fxs8v";
};
buildInputs = [ zlib mpi ];
setSourceRoot = "sourceRoot=$(echo */src)";
buildFlags = [ "thread" "mpis" ];
preInstall = "mkdir -p $out/man/man1";
meta = with lib; {
broken = stdenv.isDarwin;
description = "Estimates population size, migration, population splitting parameters using genetic/genomic data";
homepage = "https://peterbeerli.com/migrate-html5/index.html";
license = licenses.mit;
maintainers = [ maintainers.bzizou ];
platforms = platforms.unix;
};
}

View file

@ -0,0 +1,36 @@
{ lib, stdenv, fetchFromGitHub, cmake, makeWrapper, flex, bison, perl, TextFormat,
libminc, libjpeg, nifticlib, zlib }:
stdenv.mkDerivation rec {
pname = "minc-tools";
version = "unstable-2020-07-25";
src = fetchFromGitHub {
owner = "BIC-MNI";
repo = pname;
rev = "fb0a68a07d281e4e099c5d54df29925240de14c1";
sha256 = "0zcv2sdj3k6k0xjqdq8j5bxq8smm48dzai90vwsmz8znmbbm6kvw";
};
nativeBuildInputs = [ cmake flex bison makeWrapper ];
buildInputs = [ libminc libjpeg nifticlib zlib ];
propagatedBuildInputs = [ perl TextFormat ];
cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake"
"-DZNZ_INCLUDE_DIR=${nifticlib}/include/nifti"
"-DNIFTI_INCLUDE_DIR=${nifticlib}/include/nifti" ];
postFixup = ''
for prog in minccomplete minchistory mincpik; do
wrapProgram $out/bin/$prog --prefix PERL5LIB : $PERL5LIB
done
'';
meta = with lib; {
homepage = "https://github.com/BIC-MNI/minc-tools";
description = "Command-line utilities for working with MINC files";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.free;
};
}

View file

@ -0,0 +1,34 @@
{ lib, stdenv, fetchFromGitHub, cmake, makeWrapper,
perlPackages,
libminc, octave, coreutils, minc_tools }:
stdenv.mkDerivation rec {
pname = "minc-widgets";
name = "${pname}-2016-04-20";
src = fetchFromGitHub {
owner = "BIC-MNI";
repo = pname;
rev = "f08b643894c81a1a2e0fbfe595a17a42ba8906db";
sha256 = "1b9g6lf37wpp211ikaji4rf74rl9xcmrlyqcw1zq3z12ji9y33bm";
};
nativeBuildInputs = [ cmake makeWrapper ];
buildInputs = [ libminc ];
propagatedBuildInputs = (with perlPackages; [ perl GetoptTabular MNI-Perllib ]) ++ [ octave coreutils minc_tools ];
postFixup = ''
for p in $out/bin/*; do
wrapProgram $p --prefix PERL5LIB : $PERL5LIB --set PATH "${lib.makeBinPath [ coreutils minc_tools ]}";
done
'';
meta = with lib; {
homepage = "https://github.com/BIC-MNI/${pname}";
description = "Collection of Perl and shell scripts for processing MINC files";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.free;
};
}

View file

@ -0,0 +1,33 @@
{ lib, stdenv, fetchFromGitHub, cmake, hdf5, boost }:
stdenv.mkDerivation rec {
pname = "minia";
version = "3.2.1";
src = fetchFromGitHub {
owner = "GATB";
repo = "minia";
rev = "v${version}";
sha256 = "0bmfrywixaaql898l0ixsfkhxjf2hb08ssnqzlzacfizxdp46siq";
fetchSubmodules = true;
};
patches = [ ./no-bundle.patch ];
NIX_CFLAGS_COMPILE = [ "-Wformat" ];
nativeBuildInputs = [ cmake ];
buildInputs = [ hdf5 boost ];
prePatch = ''
rm -rf thirdparty/gatb-core/gatb-core/thirdparty/{hdf5,boost}
'';
meta = with lib; {
description = "Short read genome assembler";
homepage = "https://github.com/GATB/minia";
license = licenses.agpl3;
maintainers = with maintainers; [ jbedo ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -0,0 +1,222 @@
diff --git a/thirdparty/gatb-core/gatb-core/CMakeLists.txt b/thirdparty/gatb-core/gatb-core/CMakeLists.txt
index f48a70b..0e11ece 100644
--- a/thirdparty/gatb-core/gatb-core/CMakeLists.txt
+++ b/thirdparty/gatb-core/gatb-core/CMakeLists.txt
@@ -257,7 +257,6 @@ ADD_SUBDIRECTORY(thirdparty)
# DEPENDENCIES
################################################################################
# we must be sure that hdf5 is built and installed before building gatb-core
-ADD_DEPENDENCIES (gatbcore-static hdf5 hdf5_postbuild)
################################################################################
# DOCUMENTATION GENERATION
@@ -288,7 +287,6 @@ IF (NOT DEFINED GATB_CORE_INSTALL_EXCLUDE)
INSTALL (FILES ${PROJECT_SOURCE_DIR}/doc/misc/README.txt DESTINATION . OPTIONAL)
INSTALL (FILES ${PROJECT_SOURCE_DIR}/LICENCE DESTINATION . OPTIONAL)
INSTALL (FILES ${PROJECT_SOURCE_DIR}/THIRDPARTIES.md DESTINATION . OPTIONAL)
- INSTALL (DIRECTORY ${PROJECT_SOURCE_DIR}/thirdparty/boost DESTINATION ./include)
ENDIF()
################################################################################
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/LargeInt.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/LargeInt.hpp
index dfeee1c..d5553a2 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/LargeInt.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/LargeInt.hpp
@@ -35,7 +35,7 @@
#include <stdint.h>
#include <algorithm>
#include <iostream>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
#include <gatb/system/api/Exception.hpp>
#include <gatb/system/api/config.hpp>
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt128.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt128.hpp
index 60be5d5..25ae75e 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt128.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt128.hpp
@@ -33,7 +33,7 @@
/********************************************************************************/
#include <iostream>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
#include <gatb/system/api/types.hpp>
#include <gatb/tools/misc/api/Abundance.hpp>
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt16.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt16.hpp
index 6a71bb0..b9205df 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt16.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt16.hpp
@@ -31,7 +31,7 @@
#include <iostream>
#include <gatb/system/api/types.hpp>
#include <gatb/tools/misc/api/Abundance.hpp>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
/********************************************************************************/
namespace gatb {
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt32.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt32.hpp
index c22b892..62e6586 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt32.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt32.hpp
@@ -31,7 +31,7 @@
#include <iostream>
#include <gatb/system/api/types.hpp>
#include <gatb/tools/misc/api/Abundance.hpp>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
/********************************************************************************/
namespace gatb {
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt64.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt64.hpp
index c06aaab..e0befba 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt64.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt64.hpp
@@ -31,7 +31,7 @@
#include <iostream>
#include <gatb/system/api/types.hpp>
#include <gatb/tools/misc/api/Abundance.hpp>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
extern const unsigned char revcomp_4NT[];
extern const unsigned char comp_NT [];
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt8.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt8.hpp
index 9659874..0c79ff6 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt8.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/math/NativeInt8.hpp
@@ -31,7 +31,7 @@
#include <iostream>
#include <gatb/system/api/types.hpp>
#include <gatb/tools/misc/api/Abundance.hpp>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
/********************************************************************************/
namespace gatb {
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/misc/api/Abundance.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/misc/api/Abundance.hpp
index 3cb84f8..cd5d382 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/misc/api/Abundance.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/misc/api/Abundance.hpp
@@ -31,7 +31,7 @@
/********************************************************************************/
#include <sys/types.h>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
/********************************************************************************/
namespace gatb {
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/misc/api/IHistogram.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/misc/api/IHistogram.hpp
index b8f6c79..a040832 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/misc/api/IHistogram.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/misc/api/IHistogram.hpp
@@ -28,7 +28,7 @@
#include <gatb/system/api/ISmartPointer.hpp>
#include <gatb/tools/storage/impl/Storage.hpp>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
/********************************************************************************/
namespace gatb {
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/CollectionHDF5.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/CollectionHDF5.hpp
index 2645abd..fad48c0 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/CollectionHDF5.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/CollectionHDF5.hpp
@@ -40,7 +40,7 @@
#include <string>
#include <vector>
#include <stdarg.h>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
/********************************************************************************/
namespace gatb {
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/CollectionHDF5Patch.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/CollectionHDF5Patch.hpp
index a92b729..66d552f 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/CollectionHDF5Patch.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/CollectionHDF5Patch.hpp
@@ -40,7 +40,7 @@
#include <string>
#include <vector>
#include <stdarg.h>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
/********************************************************************************/
namespace gatb {
diff --git a/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/StorageHDF5.hpp b/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/StorageHDF5.hpp
index 29e0949..0565cc4 100644
--- a/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/StorageHDF5.hpp
+++ b/thirdparty/gatb-core/gatb-core/src/gatb/tools/storage/impl/StorageHDF5.hpp
@@ -33,7 +33,7 @@
#include <gatb/tools/storage/impl/CollectionHDF5.hpp>
#include <gatb/tools/storage/impl/CollectionHDF5Patch.hpp>
#include <gatb/system/impl/System.hpp>
-#include <hdf5/hdf5.h>
+#include <hdf5.h>
#include <sstream>
/********************************************************************************/
diff --git a/thirdparty/gatb-core/gatb-core/thirdparty/CMakeLists.txt b/thirdparty/gatb-core/gatb-core/thirdparty/CMakeLists.txt
index 6e0b5c4..34aef28 100644
--- a/thirdparty/gatb-core/gatb-core/thirdparty/CMakeLists.txt
+++ b/thirdparty/gatb-core/gatb-core/thirdparty/CMakeLists.txt
@@ -1,54 +1,3 @@
-################################################################################
-# HDF5 GENERATION
-################################################################################
-
-#SET (HDF5_ENABLE_THREADSAFE ON)
-#SET (H5_HAVE_THREADSAFE 1)
-
-########## MOMENTARY DEACTIVATED => CRASH ON MACOS TO BE INVESTIGATED ##########
-SET (HDF5_BUILD_TOOLS ON CACHE BOOL "Build HDF5 Tools")
-#SET (CMAKE_EXE_LINKER_FLAGS "-lpthread -lz")
-
-SET (HDF5_EXTERNALLY_CONFIGURED ON)
-
-#SET (HDF5_INSTALL_BIN_DIR ${PROJECT_BINARY_DIR}/bin/${CMAKE_BUILD_TYPE})
-#SET (HDF5_INSTALL_LIB_DIR ${PROJECT_BINARY_DIR}/lib/${CMAKE_BUILD_TYPE})
-SET (HDF5_INSTALL_BIN_DIR bin)
-SET (HDF5_INSTALL_LIB_DIR lib)
-
-SET (HDF5_INSTALL_INCLUDE_DIR ${PROJECT_BINARY_DIR}/include/${CMAKE_BUILD_TYPE}/hdf5)
-SET (HDF5_INSTALL_DATA_DIR ${PROJECT_BINARY_DIR}/share/${CMAKE_BUILD_TYPE})
-SET (HDF5_INSTALL_CMAKE_DIR ${PROJECT_BINARY_DIR}/share/${CMAKE_BUILD_TYPE})
-
-IF (NOT DEFINED GATB_CORE_INSTALL_EXCLUDE)
- SET (HDF5_EXPORTED_TARGETS "gatb-hdf5")
-ENDIF()
-
-IF (NOT DEFINED GATB_CORE_EXCLUDE_HDF5_ZLIB)
- OPTION (HDF5_ENABLE_Z_LIB_SUPPORT "Enable Zlib Filters" ON)
-ENDIF()
-
-# We don't want warnings from HDF5 compilation
-set (COMPILE_DEFINITIONS "${COMPILE_DEFINITIONS} -w")
-add_definitions (${COMPILE_DEFINITIONS})
-
-# add HDF5 generation
-ADD_SUBDIRECTORY (hdf5)
-
-# We add a custom target for copying header files.
-add_custom_target (hdf5_postbuild ALL)
-
-# We build the output directory
-add_custom_command (TARGET hdf5_postbuild POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${HDF5_INSTALL_INCLUDE_DIR})
-
-# We define all the header files to be copied
-file (GLOB headerfiles ${PROJECT_SOURCE_DIR}/thirdparty/hdf5/src/*.h ${PROJECT_BINARY_DIR}/thirdparty/hdf5/H5pubconf.h)
-
-# We copy each header file
-foreach (header ${headerfiles})
- add_custom_command (TARGET hdf5_postbuild POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different ${header} ${HDF5_INSTALL_INCLUDE_DIR} )
-endforeach()
-
# include other smaller libraries (json, Boophf)
add_custom_target (thirdparty_copy ALL)

View file

@ -0,0 +1,32 @@
{ lib, stdenv, fetchFromGitHub, zlib }:
stdenv.mkDerivation rec {
pname = "minimap2";
version = "2.24";
src = fetchFromGitHub {
repo = pname;
owner = "lh3";
rev = "v${version}";
sha256 = "sha256-sEp7/Y5ifV9LTqrkhlkfykTJYMMuc+VtF7PvmIpBxUw=";
};
buildInputs = [ zlib ];
makeFlags = lib.optionals stdenv.isAarch64 [ "arm_neon=1" "aarch64=1" ];
installPhase = ''
mkdir -p $out/bin
cp minimap2 $out/bin
mkdir -p $out/share/man/man1
cp minimap2.1 $out/share/man/man1
'';
meta = with lib; {
description = "A versatile pairwise aligner for genomic and spliced nucleotide sequences";
homepage = "https://lh3.github.io/minimap2";
license = licenses.mit;
platforms = platforms.all;
maintainers = [ maintainers.arcadio ];
};
}

View file

@ -0,0 +1,45 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, makeWrapper, perlPackages, libminc }:
stdenv.mkDerivation rec {
pname = "mni_autoreg";
version = "unstable-2017-09-22";
src = fetchFromGitHub {
owner = "BIC-MNI";
repo = pname;
rev = "ab99e29987dc029737785baebf24896ec37a2d76";
sha256 = "0axl069nv57vmb2wvqq7s9v3bfxwspzmk37bxm4973ai1irgppjq";
};
patches = [
# Pull upstream workaround for -fno-common toolchains:
# https://github.com/BIC-MNI/mni_autoreg/pull/28
(fetchpatch {
name = "fno-common.patch";
url = "https://github.com/BIC-MNI/mni_autoreg/commit/06adfacbd84369ea3bcc4376596ac1c0f2e49af9.patch";
sha256 = "004sdrbx9kcj1qqwjly6p03svakl0x2sbv83salyg63fv67jynx8";
})
];
nativeBuildInputs = [ cmake makeWrapper ];
buildInputs = [ libminc ];
propagatedBuildInputs = with perlPackages; [ perl GetoptTabular MNI-Perllib ];
cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake" ];
# testing broken: './minc_wrapper: Permission denied' from Testing/ellipse0.mnc
postFixup = ''
for prog in autocrop mritoself mritotal xfmtool; do
echo $out/bin/$prog
wrapProgram $out/bin/$prog --prefix PERL5LIB : $PERL5LIB;
done
'';
meta = with lib; {
homepage = "https://github.com/BIC-MNI/mni_autoreg";
description = "Tools for automated registration using the MINC image format";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.free;
};
}

View file

@ -0,0 +1,24 @@
{lib, nimPackages, fetchFromGitHub, pcre}:
nimPackages.buildNimPackage rec {
pname = "mosdepth";
version = "0.3.3";
nimBinOnly = true;
src = fetchFromGitHub {
owner = "brentp";
repo = "mosdepth";
rev = "v${version}";
sha256 = "sha256-de3h3SXnXlqjuLT1L66jj/1AoiTuFc3PVJYjm7s8Fj8=";
};
buildInputs = with nimPackages; [ docopt hts-nim pcre ];
meta = with lib; {
description = "fast BAM/CRAM depth calculation for WGS, exome, or targeted sequencing";
license = licenses.mit;
homepage = "https://github.com/brentp/mosdepth";
maintainers = with maintainers; [ jbedo ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,30 @@
{ lib, stdenv, fetchFromGitHub, readline }:
stdenv.mkDerivation rec {
pname = "mrbayes";
version = "3.2.7a";
src = fetchFromGitHub {
owner = "NBISweden";
repo = "MrBayes";
rev = "v${version}";
sha256 = "sha256-pkkxZ6YHRn/I1SJpT9A+EK4S5hWGmFdcDBJS0zh5mLA=";
};
meta = with lib; {
description = "Bayesian Inference of Phylogeny";
longDescription = ''
Bayesian inference of phylogeny is based upon a
quantity called the posterior probability distribution of trees, which is
the probability of a tree conditioned on the observations. The conditioning
is accomplished using Bayes's theorem. The posterior probability
distribution of trees is impossible to calculate analytically; instead,
MrBayes uses a simulation technique called Markov chain Monte Carlo (or
MCMC) to approximate the posterior probabilities of trees.
'';
maintainers = with maintainers; [ ];
license = licenses.gpl2Plus;
homepage = "https://nbisweden.github.io/MrBayes/";
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,96 @@
{ stdenv, lib, fetchFromGitHub, python, makeWrapper
, eigen, fftw, libtiff, libpng, zlib, ants, bc
, qt5, libGL, libGLU, libX11, libXext
, withGui ? true, less }:
stdenv.mkDerivation rec {
pname = "mrtrix";
version = "unstable-2021-11-25";
src = fetchFromGitHub {
owner = "MRtrix3";
repo = "mrtrix3";
rev = "994498557037c9e4f7ba67f255820ef84ea899d9";
sha256 = "sha256-8eFDS5z4ZxMzi9Khk90KAS4ndma/Syd6JDXM2Fpr0M8=";
fetchSubmodules = true;
};
nativeBuildInputs = [ eigen makeWrapper ] ++ lib.optional withGui qt5.wrapQtAppsHook;
buildInputs = [
ants
python
fftw
libtiff
libpng
zlib
] ++ lib.optionals withGui [
libGL
libGLU
libX11
libXext
qt5.qtbase
qt5.qtsvg
];
installCheckInputs = [ bc ];
postPatch = ''
patchShebangs ./build ./configure ./run_tests ./bin/*
# patching interpreters before fixup is needed for tests:
patchShebangs ./bin/*
patchShebangs testing/binaries/data/vectorstats/*py
substituteInPlace ./run_tests \
--replace 'git submodule update --init $datadir >> $LOGFILE 2>&1' ""
substituteInPlace ./build \
--replace '"less -RX "' '"${less}/bin/less -RX "'
'';
configurePhase = ''
export EIGEN_CFLAGS="-isystem ${eigen}/include/eigen3"
unset LD # similar to https://github.com/MRtrix3/mrtrix3/issues/1519
./configure ${lib.optionalString (!withGui) "-nogui"};
'';
buildPhase = ''
./build
(cd testing && ../build)
'';
installCheckPhase = ''
./run_tests units
./run_tests binaries
# can also `./run_tests scripts`, but this fails due to lack of FSL package
# (and there's no convenient way to disable individual tests)
'';
doInstallCheck = true;
installPhase = ''
runHook preInstall
mkdir -p $out
cp -ar lib $out/lib
cp -ar bin $out/bin
runHook postInstall
'';
postInstall = ''
for prog in $out/bin/*; do
if [[ -x "$prog" ]]; then
wrapProgram $prog --prefix PATH : ${lib.makeBinPath [ ants ]}
fi
done
'';
meta = with lib; {
broken = (stdenv.isLinux && stdenv.isAarch64);
homepage = "https://github.com/MRtrix3/mrtrix3";
description = "Suite of tools for diffusion imaging";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.linux;
license = licenses.mpl20;
};
}

View file

@ -0,0 +1,36 @@
{ lib, stdenv, fetchurl }:
stdenv.mkDerivation rec {
_name = "muscle";
name = "${_name}-${version}";
version = "3.8.31";
src = fetchurl {
url = "https://www.drive5.com/muscle/downloads${version}/${_name}${version}_src.tar.gz";
sha256 = "1b89z0x7h098g99g00nqadgjnb2r5wpi9s11b7ddffqkh9m9dia3";
};
patches = [
./muscle-3.8.31-no-static.patch
];
preBuild = ''
cd ./src/
patchShebangs mk
'';
installPhase = ''
install -vD muscle $out/bin/muscle
'';
meta = with lib; {
broken = (stdenv.isLinux && stdenv.isAarch64);
description = "A multiple sequence alignment method with reduced time and space complexity";
license = licenses.publicDomain;
homepage = "https://www.drive5.com/muscle/";
maintainers = [ maintainers.unode ];
# NOTE: Supposed to be compatible with darwin/intel & PPC but currently fails.
# Anyone with access to these platforms is welcome to give it a try
platforms = lib.platforms.linux;
};
}

View file

@ -0,0 +1,21 @@
--- a/src/mk 2010-05-02 01:15:42.000000000 +0200
+++ b/src/mk 2018-01-27 17:07:23.539092748 +0100
@@ -5,14 +5,14 @@
rm -f *.o muscle.make.stdout.txt muscle.make.stderr.txt
for CPPName in $CPPNames
do
- echo $CPPName >> /dev/tty
+ echo $CPPName
g++ $ENV_GCC_OPTS -c -O3 -msse2 -mfpmath=sse -D_FILE_OFFSET_BITS=64 -DNDEBUG=1 $CPPName.cpp -o $CPPName.o >> muscle.make.stdout.txt 2>> muscle.make.stderr.txt
done
LINK_OPTS=
-if [ `uname -s` == Linux ] ; then
- LINK_OPTS=-static
-fi
+#if [ `uname -s` == Linux ] ; then
+# LINK_OPTS=-static
+#fi
g++ $LINK_OPTS $ENV_LINK_OPTS -g -o muscle $ObjNames >> muscle.make.stdout.txt 2>> muscle.make.stderr.txt
tail muscle.make.stderr.txt

View file

@ -0,0 +1,89 @@
{ lib, stdenv
, fetchurl
, pkg-config
, automake
, autoconf
, libtool
, ncurses
, readline
, which
, python ? null
, useMpi ? false
, mpi
, iv
}:
stdenv.mkDerivation rec {
pname = "neuron${lib.optionalString useMpi "-mpi"}";
version = "7.5";
nativeBuildInputs = [ which pkg-config automake autoconf libtool ];
buildInputs = [ ncurses readline python iv ]
++ lib.optional useMpi mpi;
src = fetchurl {
url = "https://www.neuron.yale.edu/ftp/neuron/versions/v${version}/nrn-${version}.tar.gz";
sha256 = "0f26v3qvzblcdjg7isq0m9j2q8q7x3vhmkfllv8lsr3gyj44lljf";
};
patches = (lib.optional (stdenv.isDarwin) [ ./neuron-carbon-disable.patch ]);
# With LLVM 3.8 and above, clang (really libc++) gets upset if you attempt to redefine these...
postPatch = lib.optionalString stdenv.cc.isClang ''
substituteInPlace src/gnu/neuron_gnu_builtin.h \
--replace 'double abs(double arg);' "" \
--replace 'float abs(float arg);' "" \
--replace 'short abs(short arg);' "" \
--replace 'long abs(long arg);' ""
'' + lib.optionalString stdenv.isDarwin ''
# we are darwin, but we don't have all the quirks the source wants to compensate for
substituteInPlace src/nrnpython/setup.py.in --replace 'readline="edit"' 'readline="readline"'
for f in src/nrnpython/*.[ch] ; do
substituteInPlace $f --replace "<Python/Python.h>" "<Python.h>"
done
'';
enableParallelBuilding = true;
## neuron install by default everything under prefix/${host_arch}/*
## override this to support nix standard file hierarchy
## without issues: install everything under prefix/
preConfigure = ''
./build.sh
export prefix="''${prefix} --exec-prefix=''${out}"
'';
configureFlags = with lib;
[ "--with-readline=${readline}" "--with-iv=${iv}" ]
++ optionals (python != null) [ "--with-nrnpython=${python.interpreter}" ]
++ (if useMpi then ["--with-mpi" "--with-paranrn"]
else ["--without-mpi"]);
postInstall = lib.optionalString (python != null) ''
## standardise python neuron install dir if any
if [[ -d $out/lib/python ]]; then
mkdir -p ''${out}/${python.sitePackages}
mv ''${out}/lib/python/* ''${out}/${python.sitePackages}/
fi
'';
propagatedBuildInputs = [ readline ncurses which libtool ];
meta = with lib; {
broken = stdenv.isDarwin;
description = "Simulation environment for empirically-based simulations of neurons and networks of neurons";
longDescription = "NEURON is a simulation environment for developing and exercising models of
neurons and networks of neurons. It is particularly well-suited to problems where
cable properties of cells play an important role, possibly including extracellular
potential close to the membrane), and where cell membrane properties are complex,
involving many ion-specific channels, ion accumulation, and second messengers";
license = licenses.bsd3;
homepage = "http://www.neuron.yale.edu/neuron";
maintainers = [ maintainers.adev ];
# source claims it's only tested for x86 and powerpc
platforms = platforms.x86_64 ++ platforms.i686;
};
}

View file

@ -0,0 +1,21 @@
--- nrn-7.4/src/mac/Makefile.am 2015-11-12 21:42:45.000000000 +0100
+++ nrn-7.4.new/src/mac/Makefile.am 2016-08-24 17:43:39.000000000 +0200
@@ -15,18 +15,8 @@
host_cpu = @host_cpu@
if MAC_DARWIN
-carbon = @enable_carbon@
bin_SCRIPTS = $(launch_scripts)
install: install-am
-if UniversalMacBinary
- $(CC) -arch ppc -o aoutppc -Dcpu="\"$(host_cpu)\"" -I. $(srcdir)/launch.c $(srcdir)/mac2uxarg.c -framework Carbon
- $(CC) -arch i386 -o aouti386 -Dcpu="\"$(host_cpu)\"" -I. $(srcdir)/launch.c $(srcdir)/mac2uxarg.c -framework Carbon
- lipo aouti386 aoutppc -create -output a.out
-else
- gcc -g -arch i386 -Dncpu="\"$(host_cpu)\"" -I. $(srcdir)/launch.c $(srcdir)/mac2uxarg.c -framework Carbon
-
-endif
- carbon=$(carbon) sh $(srcdir)/launch_inst.sh "$(host_cpu)" "$(DESTDIR)$(prefix)" "$(srcdir)"
for i in $(S) ; do \
sed "s/^CPU.*/CPU=\"$(host_cpu)\"/" < $(DESTDIR)$(bindir)/$$i > temp; \
mv temp $(DESTDIR)$(bindir)/$$i; \

View file

@ -0,0 +1,24 @@
{ lib, stdenv, fetchurl, cmake, zlib }:
stdenv.mkDerivation rec {
pname = "niftyreg";
version = "1.3.9";
src = fetchurl {
url = "mirror://sourceforge/${pname}/nifty_reg-${version}/nifty_reg-${version}.tar.gz";
sha256 = "07v9v9s41lvw72wpb1jgh2nzanyc994779bd35p76vg8mzifmprl";
};
NIX_CFLAGS_COMPILE = [ "-Wno-error=narrowing" ];
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib ];
meta = with lib; {
homepage = "http://cmictig.cs.ucl.ac.uk/wiki/index.php/NiftyReg";
description = "Medical image registration software";
maintainers = with maintainers; [ bcdarwin ];
platforms = [ "x86_64-linux" ];
license = licenses.bsd3;
};
}

View file

@ -0,0 +1,25 @@
{ lib, stdenv, fetchFromGitHub, cmake, eigen, zlib }:
stdenv.mkDerivation rec {
pname = "niftyseg";
version = "1.0";
src = fetchFromGitHub {
owner = "KCL-BMEIS";
repo = "NiftySeg";
rev = "v${version}";
sha256 = "sha256-FDthq1ild9XOw3E3O7Lpfn6hBF1Frhv1NxfEA8500n8=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ eigen zlib ];
meta = with lib; {
homepage = "http://cmictig.cs.ucl.ac.uk/research/software/software-nifty/niftyseg";
description = "Software for medical image segmentation, bias field correction, and cortical thickness calculation";
maintainers = with maintainers; [ bcdarwin ];
platforms = platforms.unix;
license = licenses.bsd3;
};
}

View file

@ -0,0 +1,35 @@
{ stdenv, lib, fetchurl, python3Packages, cmake, python3 }:
python3Packages.buildPythonApplication rec {
pname = "obitools3";
version = "3.0.1b11";
src = fetchurl {
url = "https://git.metabarcoding.org/obitools/${pname}/repository/v${version}/archive.tar.gz";
sha256 = "1x7a0nrr9agg1pfgq8i1j8r1p6c0jpyxsv196ylix1dd2iivmas1";
};
nativeBuildInputs = [ python3Packages.cython cmake ];
postPatch = lib.optionalString stdenv.isAarch64 ''
substituteInPlace setup.py \
--replace "'-msse2'," ""
'';
preBuild = ''
substituteInPlace src/CMakeLists.txt --replace \$'{PYTHONLIB}' "$out/lib/${python3.libPrefix}/site-packages";
export NIX_CFLAGS_COMPILE="-L $out/lib/${python3.libPrefix}/site-packages $NIX_CFLAGS_COMPILE"
'';
dontConfigure = true;
doCheck = true;
meta = with lib ; {
description = "Management of analyses and data in DNA metabarcoding";
homepage = "https://git.metabarcoding.org/obitools/obitools3";
license = licenses.cecill20;
maintainers = [ maintainers.bzizou ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,29 @@
{lib, stdenv, fetchFromGitHub, cmake, boost, gmp, htslib, zlib, xz, pkg-config}:
stdenv.mkDerivation rec {
pname = "octopus";
version = "0.7.4";
src = fetchFromGitHub {
owner = "luntergroup";
repo = "octopus";
rev = "v${version}";
sha256 = "sha256-FAogksVxUlzMlC0BqRu22Vchj6VX+8yNlHRLyb3g1sE=";
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ boost gmp htslib zlib xz ];
postInstall = ''
mkdir $out/bin
mv $out/octopus $out/bin
'';
meta = with lib; {
description = "Bayesian haplotype-based mutation calling";
license = licenses.mit;
homepage = "https://github.com/luntergroup/octopus";
maintainers = with maintainers; [ jbedo ];
platforms = platforms.x86_64;
};
}

View file

@ -0,0 +1,39 @@
{stdenv, fetchurl}:
stdenv.mkDerivation rec {
version = "4.9j";
pname = "paml";
src = fetchurl {
url = "http://abacus.gene.ucl.ac.uk/software/paml${version}.tgz";
sha256 = "0qflf3i27x6jwks3c6q560m1q8r043ja96syah145113iz5wdalp";
};
# Workaround build failure on -fno-common toolchains like upstream
# gcc-10. Otherwise build fails as:
# ld: /build/ccKomtcd.o:(.bss+0x4544): multiple definition of `SeqTypes';
# /build/ccx7EsgU.o:(.bss+0x2a0dfdc): first defined here
NIX_CFLAGS_COMPILE = "-fcommon";
preBuild = ''
cd ./src/
'';
installPhase = ''
mkdir -pv $out/bin
cp -v codeml $out/bin
cp -v baseml $out/bin
cp -v basemlg $out/bin
cp -v chi2 $out/bin
cp -v codeml $out/bin
cp -v evolver $out/bin
cp -v mcmctree $out/bin
cp -v pamp $out/bin
cp -v yn00 $out/bin
'';
meta = {
description = "Phylogenetic Analysis by Maximum Likelihood (PAML)";
longDescription = "PAML is a package of programs for phylogenetic analyses of DNA or protein sequences using maximum likelihood. It is maintained and distributed for academic use free of charge by Ziheng Yang. ANSI C source codes are distributed for UNIX/Linux/Mac OSX, and executables are provided for MS Windows. PAML is not good for tree making. It may be used to estimate parameters and test hypotheses to study the evolutionary process, when you have reconstructed trees using other programs such as PAUP*, PHYLIP, MOLPHY, PhyML, RaxML, etc.";
license = "non-commercial";
homepage = "http://abacus.gene.ucl.ac.uk/software/paml.html";
};
}

View file

@ -0,0 +1,33 @@
{lib, stdenv, fetchurl, jre, makeWrapper}:
stdenv.mkDerivation rec {
pname = "picard-tools";
version = "2.26.11";
src = fetchurl {
url = "https://github.com/broadinstitute/picard/releases/download/${version}/picard.jar";
sha256 = "sha256-0swggo1a5gExpj3VgaWKT/TYd7rfSFBcqRrAURnTPjM=";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ jre ];
dontUnpack = true;
installPhase = ''
mkdir -p $out/libexec/picard
cp $src $out/libexec/picard/picard.jar
mkdir -p $out/bin
makeWrapper ${jre}/bin/java $out/bin/picard --add-flags "-jar $out/libexec/picard/picard.jar"
'';
meta = with lib; {
description = "Tools for high-throughput sequencing (HTS) data and formats such as SAM/BAM/CRAM and VCF";
license = licenses.mit;
homepage = "https://broadinstitute.github.io/picard/";
sourceProvenance = with sourceTypes; [ binaryBytecode ];
maintainers = with maintainers; [ jbedo ];
mainProgram = "picard";
platforms = platforms.all;
};
}

View file

@ -0,0 +1,39 @@
{lib, stdenv, fetchFromGitHub, python27, htslib, zlib, makeWrapper}:
let python = python27.withPackages (ps: with ps; [ cython ]);
in stdenv.mkDerivation {
pname = "platypus-unstable";
version = "2018-07-22";
src = fetchFromGitHub {
owner = "andyrimmer";
repo = "Platypus";
rev = "3e72641c69800da0cd4906b090298e654d316ee1";
sha256 = "0nah6r54b8xm778gqyb8b7rsd76z8ji4g73sm6rvpw5s96iib1vw";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ htslib python zlib ];
buildPhase = ''
patchShebangs .
make
'';
installPhase = ''
mkdir -p $out/libexec/platypus
cp -r ./* $out/libexec/platypus
mkdir -p $out/bin
makeWrapper ${python}/bin/python $out/bin/platypus --add-flags "$out/libexec/platypus/bin/Platypus.py"
'';
meta = with lib; {
description = "The Platypus variant caller";
license = licenses.gpl3;
homepage = "https://github.com/andyrimmer/Platypus";
maintainers = with maintainers; [ jbedo ];
platforms = platforms.x86_64;
};
}

View file

@ -0,0 +1,40 @@
{ lib, stdenv, fetchFromGitHub, zlib, blas, lapack, darwin}:
stdenv.mkDerivation rec {
pname = "plink-ng";
version = "1.90b3";
src = fetchFromGitHub {
owner = "chrchang";
repo = "plink-ng";
rev = "v${version}";
sha256 = "1zhffjbwpd50dxywccbnv1rxy9njwz73l4awc5j7i28rgj3davcq";
};
buildInputs = [ zlib ] ++ (if stdenv.isDarwin then [ darwin.apple_sdk.frameworks.Accelerate ] else [ blas lapack ]) ;
preBuild = ''
sed -i 's|zlib-1.2.8/zlib.h|zlib.h|g' *.c *.h
${if stdenv.cc.isClang then "sed -i 's|g++|clang++|g' Makefile.std" else ""}
makeFlagsArray+=(
ZLIB=-lz
BLASFLAGS="-lblas -lcblas -llapack"
);
'';
makefile = "Makefile.std";
installPhase = ''
mkdir -p $out/bin
cp plink $out/bin
'';
meta = {
broken = (stdenv.isLinux && stdenv.isAarch64);
description = "A comprehensive update to the PLINK association analysis toolset";
homepage = "https://www.cog-genomics.org/plink2";
license = lib.licenses.gpl3;
platforms = lib.platforms.linux;
};
}

View file

@ -0,0 +1,22 @@
{ lib, python2Packages, fetchFromGitHub }:
python2Packages.buildPythonPackage rec {
pname = "poretools";
version = "unstable-2016-07-10";
src = fetchFromGitHub {
repo = pname;
owner = "arq5x";
rev = "e426b1f09e86ac259a00c261c79df91510777407";
sha256 = "0bglj833wxpp3cq430p1d3xp085ls221js2y90w7ir2x5ay8l7am";
};
propagatedBuildInputs = [python2Packages.h5py python2Packages.matplotlib python2Packages.seaborn python2Packages.pandas];
meta = {
description = "a toolkit for working with nanopore sequencing data from Oxford Nanopore";
license = lib.licenses.mit;
homepage = "https://poretools.readthedocs.io/en/latest/";
maintainers = [lib.maintainers.rybern];
};
}

View file

@ -0,0 +1,26 @@
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "prodigal";
version = "2.6.3";
src = fetchFromGitHub {
repo = "Prodigal";
owner = "hyattpd";
rev = "v${version}";
sha256 = "1fs1hqk83qjbjhrvhw6ni75zakx5ki1ayy3v6wwkn3xvahc9hi5s";
};
makeFlags = [
"CC=${stdenv.cc.targetPrefix}cc"
"INSTALLDIR=$(out)/bin"
];
meta = with lib; {
description = "Fast, reliable protein-coding gene prediction for prokaryotic genomes";
homepage = "https://github.com/hyattpd/Prodigal";
license = licenses.gpl3;
platforms = platforms.all;
maintainers = with maintainers; [ luispedro ];
};
}

View file

@ -0,0 +1,56 @@
{ lib, stdenv, fetchurl, python3Packages, zlib, bash }:
let
pythonPackages = python3Packages;
inherit (pythonPackages) python;
in
pythonPackages.buildPythonApplication rec {
pname = "quast";
version = "5.0.2";
src = fetchurl {
url = "https://github.com/ablab/quast/releases/download/${pname}_${version}/${pname}-${version}.tar.gz";
sha256 = "13ml8qywbb4cc7wf2x7z5mz1rjqg51ab8wkizwcg4f6c40zgif6d";
};
pythonPath = with pythonPackages; [ simplejson joblib setuptools matplotlib ];
buildInputs = [ zlib ] ++ pythonPath;
dontConfigure = true;
dontBuild = true;
installPhase = ''
substituteInPlace quast_libs/bedtools/Makefile \
--replace "/bin/bash" "${bash}/bin/bash"
mkdir -p "$out/${python.sitePackages}"
export PYTHONPATH="$out/${python.sitePackages}:$PYTHONPATH"
${python.interpreter} setup.py install \
--install-lib=$out/${python.sitePackages} \
--prefix="$out"
'';
postFixup = ''
for file in $(find $out -type f -type f -perm /0111); do
old_rpath=$(patchelf --print-rpath $file) && \
patchelf --set-rpath $old_rpath:${stdenv.cc.cc.lib}/lib $file || true
done
# Link to the master program
ln -s $out/bin/quast.py $out/bin/quast
'';
dontPatchELF = true;
# Tests need to download data files, so manual run after packaging is needed
doCheck = false;
meta = with lib ; {
description = "Evaluates genome assemblies by computing various metrics";
homepage = "https://github.com/ablab/quast";
license = licenses.gpl2;
maintainers = [ maintainers.bzizou ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,40 @@
{ lib, stdenv
, fetchFromGitHub
, useMpi ? false
, mpi
}:
stdenv.mkDerivation rec {
pname = "RAxML${lib.optionalString useMpi "-mpi"}";
version = "8.2.12";
src = fetchFromGitHub {
owner = "stamatak";
repo = "standard-RAxML";
rev = "v${version}";
sha256 = "1jqjzhch0rips0vp04prvb8vmc20c5pdmsqn8knadcf91yy859fh";
};
buildInputs = lib.optionals useMpi [ mpi ];
# TODO darwin, AVX and AVX2 makefile targets
buildPhase = if useMpi then ''
make -f Makefile.MPI.gcc
'' else ''
make -f Makefile.SSE3.PTHREADS.gcc
'';
installPhase = if useMpi then ''
mkdir -p $out/bin && cp raxmlHPC-MPI $out/bin
'' else ''
mkdir -p $out/bin && cp raxmlHPC-PTHREADS-SSE3 $out/bin
'';
meta = with lib; {
description = "A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies";
license = licenses.gpl3;
homepage = "https://sco.h-its.org/exelixis/web/software/raxml/";
maintainers = [ maintainers.unode ];
platforms = [ "i686-linux" "x86_64-linux" ];
};
}

View file

@ -0,0 +1,27 @@
{ lib, stdenv, fetchurl }:
stdenv.mkDerivation rec {
pname = "repseek";
version = "9Sep2014";
src = fetchurl {
url = "https://bioinfo.mnhn.fr/abi/public/RepSeek/RepSeek.${version}.tgz";
sha256 = "1jiknji3ivrv7zmrfbf2mccfpdwhin3lfxfsciaqwf69b3sda8nf";
};
preConfigure = ''
mkdir -p $out/bin
substituteInPlace Makefile \
--replace "INSTALLDIR = \$\$HOME/bin" "INSTALLDIR = $out/bin/" \
--replace "CC= gcc" "CC = $CC"
'' + lib.optionalString stdenv.isLinux ''
substituteInPlace Makefile --replace "MACHINE = MACOSX" "MACHINE = LINUX"
'';
meta = {
description = "Tool to retrieve approximate repeats from large DNA sequences";
homepage = "https://bioinfo.mnhn.fr/abi/public/RepSeek";
maintainers = [ lib.maintainers.bzizou ];
license = lib.licenses.lgpl21;
};
}

View file

@ -0,0 +1,39 @@
{ lib
, stdenv
, fetchFromGitHub
, python3
, which
, ldc
, zlib
, lz4
}:
stdenv.mkDerivation rec {
pname = "sambamba";
version = "0.8.2";
src = fetchFromGitHub {
owner = "biod";
repo = "sambamba";
rev = "v${version}";
sha256 = "sha256-FEa9QjQoGNUOAtMNMZcqpTKMKVtXoBuOomTy0mpos/0=";
fetchSubmodules = true;
};
nativeBuildInputs = [ which python3 ldc ];
buildInputs = [ zlib lz4 ];
# Upstream's install target is broken; copy manually
installPhase = ''
mkdir -p $out/bin
cp bin/sambamba-${version} $out/bin/sambamba
'';
meta = with lib; {
description = "SAM/BAM processing tool";
homepage = "https://lomereiter.github.io/sambamba/";
maintainers = with maintainers; [ jbedo ];
license = with licenses; gpl2;
platforms = platforms.x86_64;
};
}

View file

@ -0,0 +1,28 @@
{ lib, stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "samblaster";
version = "0.1.26";
src = fetchFromGitHub {
owner = "GregoryFaust";
repo = "samblaster";
rev = "v.${version}";
sha256 = "0g24fq5hplnfgqkh3xqpg3lgx3wmxwnh9c7m6yw7pbi40lmgl1jv";
};
makeFlags = [ "CPP=${stdenv.cc.targetPrefix}c++" ];
installPhase = ''
mkdir -p $out/bin
cp samblaster $out/bin
'';
meta = with lib; {
description = "Tool for marking duplicates and extracting discordant/split reads from SAM/BAM files";
maintainers = with maintainers; [ jbedo ];
license = licenses.mit;
homepage = "https://github.com/GregoryFaust/samblaster";
platforms = platforms.x86_64;
};
}

View file

@ -0,0 +1,50 @@
{ lib, stdenv, fetchurl, fetchpatch, zlib, htslib, perl, ncurses ? null }:
stdenv.mkDerivation rec {
pname = "samtools";
version = "1.13";
src = fetchurl {
url = "https://github.com/samtools/samtools/releases/download/${version}/${pname}-${version}.tar.bz2";
sha256 = "sha256-YWyi4FHMgAmh6cAc/Yx8r4twkW3f9m87dpFAeUZfjGA=";
};
patches = [
# Pull upstream patch for ncurses-6.3 support
(fetchpatch {
name = "ncurses-6.3.patch";
url = "https://github.com/samtools/samtools/commit/396ef20eb0854d6b223c3223b60bb7efe42301f7.patch";
sha256 = "sha256-p0l9ymXK9nqL2w8EytbW+qeaI7dD86IQgIVxacBj838=";
})
];
nativeBuildInputs = [ perl ];
buildInputs = [ zlib ncurses htslib ];
preConfigure = lib.optional stdenv.hostPlatform.isStatic ''
export LIBS="-lz -lbz2 -llzma"
'';
makeFlags = lib.optional stdenv.hostPlatform.isStatic "AR=${stdenv.cc.targetPrefix}ar";
configureFlags = [ "--with-htslib=${htslib}" ]
++ lib.optional (ncurses == null) "--without-curses"
++ lib.optional stdenv.hostPlatform.isStatic ["--without-curses" ]
;
preCheck = ''
patchShebangs test/
'';
enableParallelBuilding = true;
doCheck = true;
meta = with lib; {
description = "Tools for manipulating SAM/BAM/CRAM format";
license = licenses.mit;
homepage = "http://www.htslib.org/";
platforms = platforms.unix;
maintainers = with maintainers; [ mimame unode ];
};
}

View file

@ -0,0 +1,22 @@
diff --git a/Makefile b/Makefile
index 2f51bfc..395d6f1 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
CC= gcc
CFLAGS= -g -Wall -O2
#LDFLAGS= -Wl,-rpath,\$$ORIGIN/../lib
-DFLAGS= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_USE_KNETFILE -D_CURSES_LIB=1
+DFLAGS= -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_USE_KNETFILE # -D_CURSES_LIB=1
KNETFILE_O= knetfile.o
LOBJS= bgzf.o kstring.o bam_aux.o bam.o bam_import.o sam.o bam_index.o \
bam_pileup.o bam_lpileup.o bam_md.o razf.o faidx.o bedidx.o \
@@ -15,7 +15,7 @@ PROG= samtools
INCLUDES= -I.
SUBDIRS= . bcftools misc
LIBPATH=
-LIBCURSES= -lcurses # -lXCurses
+LIBCURSES= # -lcurses # -lXCurses
.SUFFIXES:.c .o
.PHONY: all lib

View file

@ -0,0 +1,33 @@
{ lib, stdenv, fetchurl, zlib }:
stdenv.mkDerivation rec {
pname = "samtools";
version = "0.1.19";
src = fetchurl {
url = "mirror://sourceforge/samtools/${pname}-${version}.tar.bz2";
sha256 = "d080c9d356e5f0ad334007e4461cbcee3c4ca97b8a7a5a48c44883cf9dee63d4";
};
patches = [
./samtools-0.1.19-no-curses.patch
];
buildInputs = [ zlib ];
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/share/man
cp samtools $out/bin
cp samtools.1 $out/share/man
'';
meta = with lib; {
description = "Tools for manipulating SAM/BAM/CRAM format";
license = licenses.mit;
homepage = "http://samtools.sourceforge.net/";
platforms = platforms.unix;
maintainers = [ maintainers.unode ];
};
}

View file

@ -0,0 +1,41 @@
{ lib, stdenv, fetchurl, coreutils, fltk, libjpeg }:
stdenv.mkDerivation rec {
version = "5.0.5";
pname = "seaview";
src = fetchurl {
url = "ftp://pbil.univ-lyon1.fr/pub/mol_phylogeny/seaview/archive/seaview_${version}.tar.gz";
sha256 = "sha256-zo9emLpHiDv6kekbx55NOibxWN2Zg7XngzGkUqSx+PI=";
};
buildInputs = [ fltk libjpeg ];
patchPhase = "sed -i 's#PATH=/bin:/usr/bin rm#'${coreutils}/bin/rm'#' seaview.cxx";
installPhase = "mkdir -p $out/bin; cp seaview $out/bin";
meta = with lib; {
description = "GUI for molecular phylogeny";
longDescription = ''
SeaView is a multiplatform, graphical user interface for multiple sequence alignment and molecular phylogeny.
- SeaView reads and writes various file formats (NEXUS, MSF, CLUSTAL, FASTA, PHYLIP, MASE, Newick) of DNA and protein sequences and of phylogenetic trees.
- SeaView drives programs muscle or Clustal Omega for multiple sequence alignment, and also allows to use any external alignment algorithm able to read and write FASTA-formatted files.
- Seaview drives the Gblocks program to select blocks of evolutionarily conserved sites.
- SeaView computes phylogenetic trees by
+ parsimony, using PHYLIP's dnapars/protpars algorithm,
+ distance, with NJ or BioNJ algorithms on a variety of evolutionary distances,
+ maximum likelihood, driving program PhyML 3.1.
- Seaview can use the Transfer Bootstrap Expectation method to compute the bootstrap support of PhyML and distance trees.
- SeaView prints and draws phylogenetic trees on screen, SVG, PDF or PostScript files.
- SeaView allows to download sequences from EMBL/GenBank/UniProt using the Internet.
Seaview is published in:
Gouy M., Guindon S. & Gascuel O. (2010) SeaView version 4 : a multiplatform graphical user interface for sequence alignment and phylogenetic tree building. Molecular Biology and Evolution 27(2):221-224.
'';
homepage = "http://doua.prabi.fr/software/seaview";
license = licenses.gpl3;
maintainers = [ maintainers.iimog ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,35 @@
{lib, stdenv, fetchurl, jre, unzip, makeWrapper}:
stdenv.mkDerivation rec {
pname = "snpeff";
version = "4.3t";
src = fetchurl {
url = "mirror://sourceforge/project/snpeff/snpEff_v${builtins.replaceStrings [ "." ] [ "_" ] version}_core.zip";
sha256 = "0i12mv93bfv8xjwc3rs2x73d6hkvi7kgbbbx3ry984l3ly4p6nnm";
};
nativeBuildInputs = [ makeWrapper unzip ];
buildInputs = [ jre ];
sourceRoot = "snpEff";
installPhase = ''
mkdir -p $out/libexec/snpeff
cp *.jar *.config $out/libexec/snpeff
mkdir -p $out/bin
makeWrapper ${jre}/bin/java $out/bin/snpeff --add-flags "-jar $out/libexec/snpeff/snpEff.jar"
makeWrapper ${jre}/bin/java $out/bin/snpsift --add-flags "-jar $out/libexec/snpeff/SnpSift.jar"
'';
meta = with lib; {
description = "Genetic variant annotation and effect prediction toolbox";
license = licenses.lgpl3;
homepage = "http://snpeff.sourceforge.net/";
sourceProvenance = with sourceTypes; [ binaryBytecode ];
maintainers = with maintainers; [ jbedo ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,29 @@
{lib, stdenv, fetchFromGitHub, cmake, zlib, ncurses}:
stdenv.mkDerivation rec {
pname = "somatic-sniper";
version = "1.0.5.0";
src = fetchFromGitHub {
owner = "genome";
repo = "somatic-sniper";
rev = "v${version}";
sha256 = "0lk7p9sp6mp50f6w1nppqhr40fcwy1asw06ivw8w8jvvnwaqf987";
};
patches = [ ./somatic-sniper.patch ];
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib ncurses ];
enableParallelBuilding = false;
meta = with lib; {
description = "Identify single nucleotide positions that are different between tumor and normal";
license = licenses.mit;
homepage = "https://github.com/genome/somatic-sniper";
maintainers = with maintainers; [ jbedo ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,26 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6d5a180..7254292 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,7 +11,7 @@ set(CMAKE_MODULE_PATH
)
include(TestHelper)
-include(VersionHelper)
+#include(VersionHelper)
include(ProjectHelper)
# NOTE: for sniper we want the exe suffix to be like 0.7.4, not just 0.7
diff --git a/vendor/samtools.patch b/vendor/samtools.patch
index f173017..654f878 100644
--- a/vendor/samtools.patch
+++ b/vendor/samtools.patch
@@ -6,7 +6,7 @@ diff -Nuar a/Makefile b/Makefile
samtools:lib $(AOBJS)
- $(CC) $(CFLAGS) -o $@ $(AOBJS) -lm $(LIBPATH) $(LIBCURSES) -lz -L. -lbam
-+ $(CC) $(CFLAGS) -o $@ $(AOBJS) -lm $(LIBPATH) $(LIBCURSES) -L. -lbam -lz
++ $(CC) $(CFLAGS) -o $@ $(AOBJS) -lm $(LIBPATH) -lncurses -L. -lbam -lz
razip:razip.o razf.o
$(CC) $(CFLAGS) -o $@ razf.o razip.o -lz

View file

@ -0,0 +1,46 @@
{ lib, stdenv, cmake, rocksdb, rapidjson, pkg-config, fetchFromGitHub, fetchpatch, zlib }:
stdenv.mkDerivation rec {
pname = "sortmerna";
version = "4.2.0";
src = fetchFromGitHub {
repo = pname;
owner = "biocore";
rev = "v${version}";
sha256 = "0r91viylzr069jm7kpcgb45kagvf8sqcj5zc1af4arl9sgfs1f3j";
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ zlib rocksdb rapidjson ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DPORTABLE=off"
"-DRAPIDJSON_HOME=${rapidjson}"
"-DROCKSDB_HOME=${rocksdb}"
"-DROCKSDB_STATIC=off"
"-DZLIB_STATIC=off"
];
postPatch = ''
# Fix formatting string error:
# https://github.com/biocore/sortmerna/issues/255
substituteInPlace src/sortmerna/indexdb.cpp \
--replace 'is_verbose, ss' 'is_verbose, "%s", ss'
# Fix missing pthread dependency for the main binary.
substituteInPlace src/sortmerna/CMakeLists.txt \
--replace "target_link_libraries(sortmerna" \
"target_link_libraries(sortmerna Threads::Threads"
'';
meta = with lib; {
description = "Tools for filtering, mapping, and OTU-picking from shotgun genomics data";
license = licenses.lgpl3;
platforms = platforms.x86_64;
homepage = "https://bioinfo.lifl.fr/RNA/sortmerna/";
maintainers = with maintainers; [ luispedro ];
broken = stdenv.isDarwin;
};
}

View file

@ -0,0 +1,27 @@
{ lib, stdenv, fetchurl, zlib, bzip2, cmake, python3 }:
stdenv.mkDerivation rec {
pname = "SPAdes";
version = "3.15.4";
src = fetchurl {
url = "http://cab.spbu.ru/files/release${version}/${pname}-${version}.tar.gz";
sha256 = "sha256-OyQcUopCqL398j5b+PAISDR5BZDQhJHezqnw8AnYWJ8=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib bzip2 python3 ];
doCheck = true;
sourceRoot = "${pname}-${version}/src";
meta = with lib; {
description = "St. Petersburg genome assembler: assembly toolkit containing various assembly pipelines";
license = licenses.gpl2Only;
homepage = "http://cab.spbu.ru/software/spades/";
platforms = with platforms; [ "x86_64-linux" "x86_64-darwin"];
maintainers = [ maintainers.bzizou ];
};
}

View file

@ -0,0 +1,19 @@
{ lib, stdenv, fetchurl, zlib }:
stdenv.mkDerivation rec {
pname = "stacks";
version = "2.60";
src = fetchurl {
url = "http://catchenlab.life.illinois.edu/stacks/source/${pname}-${version}.tar.gz";
sha256 = "sha256-ppKG7Z1TyLwUyqRnGYk3QWPJqKeNcW04GMW7myPFSNM=";
};
buildInputs = [ zlib ];
meta = {
description = "Software pipeline for building loci from short-read sequences";
homepage = "http://catchenlab.life.illinois.edu/stacks/";
maintainers = [ lib.maintainers.bzizou ];
license = lib.licenses.gpl3Plus;
};
}

View file

@ -0,0 +1,39 @@
{ lib, stdenv, fetchFromGitHub, zlib }:
stdenv.mkDerivation rec {
pname = "star";
version = "2.7.10a";
src = fetchFromGitHub {
repo = "STAR";
owner = "alexdobin";
rev = version;
sha256 = "sha256-qwddCGMOKWgx76qGwRQXwvv9fCSeVsZbWHmlBwEqGKE=";
};
sourceRoot = "source/source";
postPatch = ''
substituteInPlace Makefile --replace "/bin/rm" "rm"
'';
buildInputs = [ zlib ];
buildFlags = [ "STAR" "STARlong" ];
enableParallelBuilding = true;
installPhase = ''
runHook preInstall
install -D STAR STARlong -t $out/bin
runHook postInstall
'';
meta = with lib; {
description = "Spliced Transcripts Alignment to a Reference";
homepage = "https://github.com/alexdobin/STAR";
license = licenses.gpl3Plus;
platforms = [ "x86_64-linux" ];
maintainers = [ maintainers.arcadio ];
};
}

View file

@ -0,0 +1,43 @@
{lib, stdenv, fetchFromGitHub, cmake, zlib, python2}:
stdenv.mkDerivation rec {
pname = "strelka";
version = "2.9.10";
src = fetchFromGitHub {
owner = "Illumina";
repo = "strelka";
rev = "v${version}";
sha256 = "1nykbmim1124xh22nrhrsn8xgjb3s2y7akrdapn9sl1gdych4ppf";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ zlib python2 ];
NIX_CFLAGS_COMPILE = [
"-Wno-error=maybe-uninitialized"
"-Wno-error=pessimizing-move"
];
preConfigure = ''
sed -i 's|/usr/bin/env python|${python2}/bin/python|' src/python/lib/makeRunScript.py
patchShebangs .
'';
postFixup = ''
pushd $out/lib/python/pyflow
sed -i 's|/bin/bash|${stdenv.shell}|' pyflowTaskWrapper.py
rm pyflowTaskWrapper.pyc
echo "import pyflowTaskWrapper" | python2
popd
'';
meta = with lib; {
description = "Germline and small variant caller";
license = licenses.gpl3;
homepage = "https://github.com/Illumina/strelka";
maintainers = with maintainers; [ jbedo ];
platforms = [ "x86_64-linux" ];
};
}

View file

@ -0,0 +1,41 @@
{ lib
, stdenv
, fetchurl
, zlib
}:
stdenv.mkDerivation rec {
pname = "subread";
version = "2.0.3";
src = fetchurl {
url = "mirror://sourceforge/subread/subread-${version}/subread-${version}-source.tar.gz";
sha256 = "sha256-Vs7zovkU1DJxMGnVwoL0iDHDoezIlDKtVYDKoyKl9Ws=";
};
buildInputs = [
zlib
];
configurePhase = ''
cd src
cp Makefile.${if stdenv.isLinux then "Linux" else "MacOS"} Makefile
'';
makeFlags = [ "CC_EXEC=cc" ];
installPhase = ''
mkdir $out
cp -r ../bin $out
'';
meta = with lib; {
broken = stdenv.isDarwin;
description = "High-performance read alignment, quantification and mutation discovery";
license = licenses.gpl3;
maintainers = with maintainers; [ jbedo ];
platforms = [ "x86_64-darwin" "x86_64-linux" ];
homepage = "http://subread.sourceforge.net/";
};
}

View file

@ -0,0 +1,68 @@
{ lib, gccStdenv, fetchFromGitLab, zlib }:
let
stdenv = gccStdenv;
meta = with lib; {
description = "Fast and exact comparison and clustering of sequences";
homepage = "https://metabarcoding.org/sumatra";
maintainers = [ maintainers.bzizou ];
platforms = platforms.unix;
};
in rec {
# Suma library
sumalibs = stdenv.mkDerivation rec {
version = "1.0.34";
pname = "sumalibs";
src = fetchFromGitLab {
domain = "git.metabarcoding.org";
owner = "obitools";
repo = pname;
rev = "sumalib_v${version}";
sha256 = "0hwkrxzfz7m5wdjvmrhkjg8kis378iaqr5n4nhdhkwwhn8x1jn5a";
};
makeFlags = [ "PREFIX=$(out)" ];
inherit meta;
};
# Sumatra
sumatra = stdenv.mkDerivation rec {
version = "1.0.34";
pname = "sumatra";
src = fetchFromGitLab {
domain = "git.metabarcoding.org";
owner = "obitools";
repo = pname;
rev = "${pname}_v${version}";
sha256 = "1bbpbdkshdc3xffqnr1qfy8qk64ldsmdc3s8mrcrlx132rgbi5f6";
};
buildInputs = [ sumalibs zlib ];
makeFlags = [
"LIBSUMA=${sumalibs}/lib/libsuma.a"
"LIBSUMAPATH=-L${sumalibs}"
"PREFIX=$(out)"
];
inherit meta;
};
# Sumaclust
sumaclust = stdenv.mkDerivation rec {
version = "1.0.34";
pname = "sumaclust";
src = fetchFromGitLab {
domain = "git.metabarcoding.org";
owner = "obitools";
repo = pname;
rev = "${pname}_v${version}";
sha256 = "0x8yi3k3jxhmv2krp4rcjlj2f9zg0qrk7gx4kpclf9c3yxgsgrds";
};
buildInputs = [ sumalibs ];
makeFlags = [
"LIBSUMA=${sumalibs}/lib/libsuma.a"
"LIBSUMAPATH=-L${sumalibs}"
"PREFIX=$(out)"
];
inherit meta;
};
}

Some files were not shown because too many files have changed in this diff Show more