From 323c503cbabc14dd12e040306c974c0c42a826f5 Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Thu, 2 Sep 2021 18:35:32 +0200 Subject: [PATCH] mosdepth: convert to buildNimPackage --- .../science/biology/mosdepth/default.nix | 30 +++---------------- .../nim-packages/docopt/default.nix | 8 +++++ .../nim-packages/hts-nim/default.nix | 13 ++++++++ pkgs/top-level/nim-packages.nix | 4 +++ 4 files changed, 29 insertions(+), 26 deletions(-) create mode 100644 pkgs/development/nim-packages/docopt/default.nix create mode 100644 pkgs/development/nim-packages/hts-nim/default.nix diff --git a/pkgs/applications/science/biology/mosdepth/default.nix b/pkgs/applications/science/biology/mosdepth/default.nix index 715f2ea313b..b6cc5e40615 100644 --- a/pkgs/applications/science/biology/mosdepth/default.nix +++ b/pkgs/applications/science/biology/mosdepth/default.nix @@ -1,23 +1,9 @@ -{lib, stdenv, fetchFromGitHub, nim, htslib, pcre}: +{lib, nimPackages, fetchFromGitHub, pcre}: -let - hts-nim = fetchFromGitHub { - owner = "brentp"; - repo = "hts-nim"; - rev = "v0.3.4"; - sha256 = "0670phk1bq3l9j2zaa8i5wcpc5dyfrc0l2a6c21g0l2mmdczffa7"; - }; - - docopt = fetchFromGitHub { - owner = "docopt"; - repo = "docopt.nim"; - rev = "v0.6.7"; - sha256 = "1ga7ckg21fzwwvh26jp2phn2h3pvkn8g8sm13dxif33rp471bv37"; - }; - -in stdenv.mkDerivation rec { +nimPackages.buildNimPackage rec { pname = "mosdepth"; version = "0.3.2"; + nimBinOnly = true; src = fetchFromGitHub { owner = "brentp"; @@ -26,15 +12,7 @@ in stdenv.mkDerivation rec { sha256 = "sha256-uui4yC7ok+pvbXVKfBVsAarH40fnH4fnP8P4uzOqztQ="; }; - nativeBuildInputs = [ nim ]; - buildInputs = [ htslib pcre ]; - - buildPhase = '' - HOME=$TMPDIR - nim -p:${hts-nim}/src -p:${docopt}/src c --nilseqs:on -d:release mosdepth.nim - ''; - - installPhase = "install -Dt $out/bin mosdepth"; + buildInputs = with nimPackages; [ docopt hts-nim pcre ]; meta = with lib; { description = "fast BAM/CRAM depth calculation for WGS, exome, or targeted sequencing"; diff --git a/pkgs/development/nim-packages/docopt/default.nix b/pkgs/development/nim-packages/docopt/default.nix new file mode 100644 index 00000000000..38465384fbd --- /dev/null +++ b/pkgs/development/nim-packages/docopt/default.nix @@ -0,0 +1,8 @@ +{ fetchFromGitHub }: + +fetchFromGitHub { + owner = "docopt"; + repo = "docopt.nim"; + rev = "v0.6.7"; + sha256 = "1ga7ckg21fzwwvh26jp2phn2h3pvkn8g8sm13dxif33rp471bv37"; +} diff --git a/pkgs/development/nim-packages/hts-nim/default.nix b/pkgs/development/nim-packages/hts-nim/default.nix new file mode 100644 index 00000000000..960a9e63d21 --- /dev/null +++ b/pkgs/development/nim-packages/hts-nim/default.nix @@ -0,0 +1,13 @@ +{ buildNimPackage, fetchFromGitHub, htslib }: + +buildNimPackage rec { + pname = "hts-nim"; + version = "0.3.4"; + src = fetchFromGitHub { + owner = "brentp"; + repo = pname; + rev = "v${version}"; + sha256 = "0670phk1bq3l9j2zaa8i5wcpc5dyfrc0l2a6c21g0l2mmdczffa7"; + }; + propagatedBuildInputs = [ htslib ]; +} diff --git a/pkgs/top-level/nim-packages.nix b/pkgs/top-level/nim-packages.nix index a1cefc4fd81..7d9e6c512f4 100644 --- a/pkgs/top-level/nim-packages.nix +++ b/pkgs/top-level/nim-packages.nix @@ -16,10 +16,14 @@ lib.makeScope newScope (self: chroma = callPackage ../development/nim-packages/chroma { }; + docopt = callPackage ../development/nim-packages/docopt { }; + flatty = callPackage ../development/nim-packages/flatty { }; frosty = callPackage ../development/nim-packages/frosty { }; + hts-nim = callPackage ../development/nim-packages/hts-nim { }; + jester = callPackage ../development/nim-packages/jester { }; jsonschema = callPackage ../development/nim-packages/jsonschema { };