diff --git a/pkgs/by-name/gi/giza/package.nix b/pkgs/by-name/gi/giza/package.nix new file mode 100644 index 0000000000000..1658970c8b335 --- /dev/null +++ b/pkgs/by-name/gi/giza/package.nix @@ -0,0 +1,42 @@ +{ + lib, + stdenv, + fetchFromGitHub, + autoreconfHook, + pkg-config, + gfortran, + cairo, + freetype, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "giza"; + version = "1.4.1"; + + src = fetchFromGitHub { + owner = "danieljprice"; + repo = "giza"; + rev = "v${finalAttrs.version}"; + hash = "sha256-spb46IoySf6DM454adcWmqqLlzNA2HK9z29TzOCECJ4="; + }; + + nativeBuildInputs = [ + autoreconfHook + pkg-config + gfortran + ]; + + buildInputs = [ + cairo + freetype + ]; + + meta = { + description = "Scientific plotting library for C/Fortran"; + inherit (finalAttrs.src.meta) homepage; + changelog = "${finalAttrs.src.meta.homepage}/blob/${finalAttrs.src.rev}/ChangeLog"; + license = lib.licenses.lgpl3Plus; + maintainers = with lib.maintainers; [ doronbehar ]; + platforms = lib.platforms.all; + }; +}) diff --git a/pkgs/by-name/sp/splash/package.nix b/pkgs/by-name/sp/splash/package.nix new file mode 100644 index 0000000000000..39d22a88b9d45 --- /dev/null +++ b/pkgs/by-name/sp/splash/package.nix @@ -0,0 +1,56 @@ +{ + lib, + stdenv, + fetchFromGitHub, + gfortran, + giza, + hdf5, + cairo, + freetype, + versionCheckHook, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "splash"; + version = "3.10.3"; + + src = fetchFromGitHub { + owner = "danieljprice"; + repo = "splash"; + rev = "v${finalAttrs.version}"; + hash = "sha256-5ieJHUWZDGgsNj7U9tbdhtDIsN+wgbs03IxVd1xM+hw="; + }; + + nativeBuildInputs = [ + gfortran + ]; + + buildInputs = [ + giza + cairo + freetype + hdf5 + ]; + makeFlags = [ + "SYSTEM=gfortran" + "GIZA_DIR=${giza}" + "PREFIX=${placeholder "out"}" + ]; + # Upstream's simplistic makefile doesn't even `mkdir $(PREFIX)`, so we help + # it: + preInstall = '' + mkdir -p $out/bin + ''; + nativeInstallCheckInputs = [ + versionCheckHook + ]; + doInstallCheck = true; + + meta = { + description = "An interactive visualisation and plotting tool using kernel interpolation, mainly used for Smoothed Particle Hydrodynamics simulations"; + inherit (finalAttrs.src.meta) homepage; + license = lib.licenses.lgpl3Plus; + maintainers = with lib.maintainers; [ doronbehar ]; + platforms = lib.platforms.all; + }; +})