Files
ccpkgs/firedrake/default.nix
2018-01-14 09:19:56 -05:00

64 lines
1.5 KiB
Nix

with import <nixpkgs> {};
let
ufl = import ./ufl.nix;
fiat = import ./fiat.nix;
finat = import ./finat.nix;
tsfc = import ./tsfc.nix;
pyop2 = import ./pyop2.nix;
petsc = import ./petsc.nix;
petsc4py = import ./petsc4py.nix;
coffee = import ./coffee.nix;
in
python27Packages.buildPythonPackage rec {
version = "a967a34c0f05d3dbfb9be05825777da40a6195dc";
name = "firedrake-${version}";
src = fetchFromGitHub {
owner = "firedrakeproject";
repo = "firedrake";
rev = "${version}";
sha256 = "1mf9vmmin51x2wgz8fdvbw27y6w41qg488f7c2hifx74jdr2ggfd";
};
buildInputs = [
openmpi
hdf5
libspatialindex
python27Packages.cython
python27Packages.pytest_29
python27Packages.pytest_xdist
python27Packages.pylint
petsc
];
propagatedBuildInputs = [
python27Packages.h5py
python27Packages.six
python27Packages.sympy
python27Packages.psutil
python27Packages.cachetools
python27Packages.singledispatch
python27Packages.ipython
python27Packages.matplotlib
ufl
fiat
finat
tsfc
pyop2
petsc4py
coffee
];
patches = [ ./firedrake-setup.patch ];
meta = {
homepage = "http://www.firedrakeproject.org";
description = "Firedrake is an automated system for the portable solution of partial differential equations using the finite element method (FEM).";
license = licenses.gpl3;
};
}