From 20050d08b1d6b18f437d7ac44a4720f2c24d7f53 Mon Sep 17 00:00:00 2001 From: Justin Bedo Date: Mon, 7 Feb 2022 14:37:43 +1100 Subject: pizzly: init --- default.nix | 1 + tools/pizzly-app.nix | 30 ++++++++++++++++++++++++++++++ tools/pizzly-call.nix | 24 ++++++++++++++++++++++++ tools/pizzly.nix | 8 ++++++++ 4 files changed, 63 insertions(+) create mode 100644 tools/pizzly-app.nix create mode 100644 tools/pizzly-call.nix create mode 100644 tools/pizzly.nix diff --git a/default.nix b/default.nix index ab69803..1d2bad3 100644 --- a/default.nix +++ b/default.nix @@ -53,6 +53,7 @@ let genmap = callBionix ./tools/genmap.nix { }; subread = callBionix ./tools/subread.nix { }; hatchet = callBionix ./tools/hatchet.nix { }; + pizzly = callBionix ./tools/pizzly.nix { }; slurm-run = callPackage ./lib/slurm.nix { }; slurm-exec = f: x: y: diff --git a/tools/pizzly-app.nix b/tools/pizzly-app.nix new file mode 100644 index 0000000..703e4aa --- /dev/null +++ b/tools/pizzly-app.nix @@ -0,0 +1,30 @@ +{ lib, stdenv, fetchFromGitHub, cmake, zlib }: + +stdenv.mkDerivation rec { + pname = "pizzly"; + version = "0.37.3"; + + src = fetchFromGitHub { + repo = pname; + owner = "pmelsted"; + rev = "v${version}"; + sha256 = "sha256-VB3kYjnhg9+QMdCAbYAzf30kO8zXZlEvK913ALZiUwU="; + }; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ zlib ]; + + installPhase = '' + runHook preInstall + install -Dm 755 pizzly $out/bin/pizzly + runHook postInstall + ''; + + meta = with lib; { + description = "Fusion detection from kallisto"; + homepage = "https://github.com/pmelsted/pizzly"; + license = licenses.bsd2; + platforms = platforms.linux; + maintainers = with maintainers; [ jbedo ]; + }; +} diff --git a/tools/pizzly-call.nix b/tools/pizzly-call.nix new file mode 100644 index 0000000..72e23bf --- /dev/null +++ b/tools/pizzly-call.nix @@ -0,0 +1,24 @@ +{ bionix, kmerSize ? 31, gtf, cdna, alignScore ? 2, maxInsertSize ? 400 }: + +with bionix; +with pkgs; + +input: +stage { + name = "pizzly"; + buildInputs = [ bionix.pizzly.app ]; + buildCommand = '' + ln -s ${gtf} ref.gtf + ln -s ${cdna} ref.fa + mkdir $out + pizzly \ + -G ref.gtf \ + -C cache \ + -F ref.fa \ + -k ${toString kmerSize} \ + -o $out/output \ + -a ${toString alignScore} \ + -i ${toString maxInsertSize} \ + ${input}/fusion.txt + ''; +} diff --git a/tools/pizzly.nix b/tools/pizzly.nix new file mode 100644 index 0000000..4011424 --- /dev/null +++ b/tools/pizzly.nix @@ -0,0 +1,8 @@ +{ bionix }: + +with bionix; + +{ + app = pkgs.callPackage ./pizzly-app.nix { }; + call = callBionixE ./pizzly-call.nix; +} -- cgit v1.2.3