Files
ccpkgs/pkgs/lumpy.nix
2024-01-26 11:13:07 -05:00

80 lines
2.0 KiB
Nix

{ stdenv, lib, fetchFromGitHub, which, autoconf, automake
, zlib, curl
, python2, fetchPypi, hexdump, sambamba, samblaster, samtools }: let
python = python2.override {
packageOverrides = final: prev: {
numpy = prev.numpy.overridePythonAttrs(old: rec {
version = "1.16.6";
disabled = false;
src = fetchPypi {
inherit version;
pname = "numpy";
extension = "zip";
sha256 = "e5cf3fdf13401885e8eea8170624ec96225e2174eb0c611c6f26dd33b489e3ff";
};
nativeCheckInputs = [
prev.pytest
# "hypothesis" indirectly depends on numpy to build its documentation.
prev.hypothesis
prev.typing-extensions
];
});
};
};
in stdenv.mkDerivation rec {
version = "0.3.0";
name = "lumpy-${version}";
src = fetchFromGitHub {
inherit name;
owner = "arq5x";
repo = "lumpy-sv";
rev = version;
fetchSubmodules = true;
sha256 = "1r6sssbnz017jpnsfb6dfjj0y7bzxgxxdikz4rak569m6kqkawqq";
};
installPhase = ''
mkdir -p "$out"
cp -r bin "$out"
substituteInPlace "$out/bin/lumpyexpress.config" \
--replace "$PWD/" "$out"
mkdir -p "$out/lib/lumpy/bamkit"
for script in \
pairend_distro.py \
bamkit/bamgroupreads.py \
bamkit/bamfilterrg.py \
bamkit/bamlibs.py
do
cp "scripts/$script" "$out/lib/lumpy/$script"
substituteInPlace "$out/bin/lumpyexpress.config" \
--replace "$out/scripts/$script" "$out/lib/lumpy/$script"
done
'';
buildInputs = [
which
autoconf
automake
zlib
curl
(python.withPackages (packages: with packages;
[
numpy
pysam
]
))
hexdump
sambamba
samblaster
samtools
];
meta = with lib; {
description = "A probabilistic framework for structural variant discovery.";
homepage = https://github.com/arq5x/lumpy-sv;
platforms = platforms.all;
license = licenses.mit;
};
}