1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 gfortran,
6 giza,
7 hdf5,
8 cairo,
9 freetype,
10 versionCheckHook,
11}:
12
13stdenv.mkDerivation (finalAttrs: {
14 pname = "splash";
15 version = "3.11.4";
16
17 src = fetchFromGitHub {
18 owner = "danieljprice";
19 repo = "splash";
20 rev = "v${finalAttrs.version}";
21 hash = "sha256-e777Te+gOsVDiu/y1VWBDYIW/C6Ojo3gY8qDfJuE5I4=";
22 };
23
24 nativeBuildInputs = [
25 gfortran
26 ];
27
28 buildInputs = [
29 giza
30 cairo
31 freetype
32 hdf5
33 ];
34 makeFlags = [
35 "SYSTEM=gfortran"
36 "GIZA_DIR=${giza}"
37 "PREFIX=${placeholder "out"}"
38 ];
39 # Upstream's simplistic makefile doesn't even `mkdir $(PREFIX)`, so we help
40 # it:
41 preInstall = ''
42 mkdir -p $out/bin
43 '';
44 nativeInstallCheckInputs = [
45 versionCheckHook
46 ];
47 doInstallCheck = true;
48
49 meta = {
50 description = "Interactive visualisation and plotting tool using kernel interpolation, mainly used for Smoothed Particle Hydrodynamics simulations";
51 inherit (finalAttrs.src.meta) homepage;
52 license = lib.licenses.lgpl3Plus;
53 maintainers = with lib.maintainers; [ doronbehar ];
54 platforms = lib.platforms.all;
55 };
56})