diff --git a/pkgs/pybedtools.nix b/pkgs/pybedtools.nix new file mode 100644 index 0000000..f1a91bf --- /dev/null +++ b/pkgs/pybedtools.nix @@ -0,0 +1,32 @@ +{ lib, fetchFromGitHub, buildPythonPackage +, cython, bedtools +, zlib, six, pysam, pytest, psutil, pyaml }: + +buildPythonPackage rec { + version = "0.8.0"; + name = "pybedtools-${version}"; + + src = fetchFromGitHub { + owner = "daler"; + repo = "pybedtools"; + rev = "v${version}"; + sha256 = "10c7rj07jz8v7r5yxfpwdx7dqfnrcncp16ry1y2cfk68awdnk122"; + }; + + buildInputs = [ cython zlib ]; + propagatedBuildInputs = [ six pysam ]; + checkInputs = [ pytest psutil pyaml ]; + + postPatch = '' + sed -i -e '$ahelpers.set_bedtools_path('\'''${bedtools}/bin'\''')' pybedtools/__init__.py + ''; + preBuild = '' + python setup.py cythonize + ''; + + meta = with lib; { + homepage = "http://daler.github.io/pybedtools"; + description = "pybedtools wraps and extends BEDTools and offers feature-level manipulations from within Python."; + license = licenses.lgpl2Plus; + }; +} \ No newline at end of file diff --git a/pkgs/python-packages.nix b/pkgs/python-packages.nix index 3af8f7b..37223dd 100644 --- a/pkgs/python-packages.nix +++ b/pkgs/python-packages.nix @@ -1,4 +1,6 @@ pkgs: self: super: with self; { openslide = callPackage ./openslide/python.nix { openslide = pkgs.openslide; }; + + pybedtools = callPackage ./pybedtools.nix { }; }