diff options
author | Justin Bedo <cu@cua0.org> | 2022-05-16 12:46:12 +1000 |
---|---|---|
committer | Justin Bedo <cu@cua0.org> | 2022-05-16 13:07:24 +1000 |
commit | 2bd2c3958ed91ef3bbea2fc3e077a8c03a648a1b (patch) | |
tree | 8d12d5f861a0ef6194fdd055586527ab998b151e /tools | |
parent | 61a05c73159f4578322ba9a59ab8ee7a5f1fb1b4 (diff) |
quip: init
Diffstat (limited to 'tools')
-rw-r--r-- | tools/quip-app.nix | 19 | ||||
-rw-r--r-- | tools/quip-quip.nix | 17 | ||||
-rw-r--r-- | tools/quip-unquip.nix | 18 | ||||
-rw-r--r-- | tools/quip.nix | 6 |
4 files changed, 60 insertions, 0 deletions
diff --git a/tools/quip-app.nix b/tools/quip-app.nix new file mode 100644 index 0000000..422b603 --- /dev/null +++ b/tools/quip-app.nix @@ -0,0 +1,19 @@ +{ + stdenv, + fetchFromGitHub, + autoreconfHook, + zlib, +}: +stdenv.mkDerivation rec { + name = "quip"; + + src = fetchFromGitHub { + owner = "dcjones"; + repo = "quip"; + rev = "9165bb5ac17a2cf2822e437df573487d7adfa1cc"; + sha256 = "PpvgLzdiYcLyJ1JH9UzbUd29eKIlyY440HiJGYWvkrs="; + }; + + nativeBuildInputs = [autoreconfHook]; + buildInputs = [zlib]; +} diff --git a/tools/quip-quip.nix b/tools/quip-quip.nix new file mode 100644 index 0000000..77cf557 --- /dev/null +++ b/tools/quip-quip.nix @@ -0,0 +1,17 @@ +{bionix}: +with bionix; +with lib.types; + input: let + ref = matchFiletype "quip" {bam = f: f.ref;} input; + in + stage { + name = "quip"; + buildInputs = [quip.app]; + buildCommand = '' + ln -s ${input} input.bam + quip -r ${ref} input.bam + cp input.bam.qp $out + ''; + stripStorePaths = false; + passthru.filetype = filetype.qp input.filetype; + } diff --git a/tools/quip-unquip.nix b/tools/quip-unquip.nix new file mode 100644 index 0000000..8c9cc01 --- /dev/null +++ b/tools/quip-unquip.nix @@ -0,0 +1,18 @@ +{bionix}: +with bionix; +with lib.types; + input: let + bamft = matchFiletype "unquip" {qp = x: x;} input; + ref = matchFiletype' "unquip-sub" {bam = f: f.ref;} bamft; + in + stage { + name = "unquip"; + buildInputs = [quip.app]; + buildCommand = '' + ln -s ${input} input.bam.qp + unquip -r ${ref} input.bam.qp + cp input.bam $out + ''; + stripStorePaths = false; + passthru.filetype = bamft; + } diff --git a/tools/quip.nix b/tools/quip.nix new file mode 100644 index 0000000..f0a57aa --- /dev/null +++ b/tools/quip.nix @@ -0,0 +1,6 @@ +{bionix}: +with bionix; { + app = pkgs.callPackage ./quip-app.nix {}; + quip = callBionix ./quip-quip.nix; + unquip = callBionix ./quip-unquip.nix; +} |