about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/science/biology/N3/default.nix
blob: e7ae8fb3cea3de2e4d8380859d591f5fcd5d3ae8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{ lib, stdenv, fetchFromGitHub, cmake, makeWrapper,
  perlPackages,
  libminc, ebtks }:

stdenv.mkDerivation rec {
  pname = "N3";
  version = "unstable-2018-08-09";

  src = fetchFromGitHub {
    owner  = "BIC-MNI";
    repo   = pname;
    rev    = "010fc2ac58ce1d67b8e6a863fac0809d3203cb9b";
    sha256 = "06hci7gzhy8p34ggvx7gah2k9yxpwhgmq1cgw8pcd1r82g4rg6kd";
  };

  postPatch = ''
    substituteInPlace src/VolumeHist/DHistogram.cc \
      --replace "register " ""
  '';

  nativeBuildInputs = [ cmake makeWrapper ];
  buildInputs = [ libminc ebtks ];
  propagatedBuildInputs = with perlPackages; [ perl MNI-Perllib GetoptTabular ];

  cmakeFlags = [ "-DLIBMINC_DIR=${libminc}/lib/cmake" "-DEBTKS_DIR=${ebtks}/lib/" ];

  postFixup = ''
    for p in $out/bin/*; do
      wrapProgram $p --prefix PERL5LIB : $PERL5LIB
    done
  '';

  meta = with lib; {
    homepage = "https://github.com/BIC-MNI/N3";
    description = "MRI non-uniformity correction for MINC files";
    maintainers = with maintainers; [ bcdarwin ];
    platforms = platforms.unix;
    license   = licenses.free;
  };
}