anchor.diff:      homepage = http://lammps.sandia.gov;
       license = stdenv.lib.licenses.gpl2;
       platforms = stdenv.lib.platforms.linux;
  +    maintainers = with lib.maintainers; [ costrouc ];
     };
   }
  
positive.code:   builder = writeText "builder.sh" ''
      source $stdenv/setup
  
      tar xzf $src
      cd lammps-*/src
      make mode=exe ${if mpiSupport then "mpi" else "serial"} SHELL=$SHELL LMP_INC="-DLAMMPS_GZIP -DLAMMPS_PNG" FFT_PATH=-DFFT_FFTW3 FFT_LIB=-lfftw3 JPG_LIB=-lpng
      make mode=shlib ${if mpiSupport then "mpi" else "serial"} SHELL=$SHELL LMP_INC="-DLAMMPS_GZIP -DLAMMPS_PNG" FFT_PATH=-DFFT_FFTW3 FFT_LIB=-lfftw3 JPG_LIB=-lpng
  
      mkdir -p $out/bin
      cp -v lmp_* $out/bin/lammps
  
      mkdir -p $out/lib
      cp -v liblammps* $out/lib/
  
negative.code: { lib
  , bash
  , stdenv
  , writeText
  , fetchFromGitHub
  , libpng
  , gzip
  , fftw
  , openblas
  , mpiSupport ? false, mpi ? null
  }:
  
  assert mpiSupport -> mpi != null;
  
  stdenv.mkDerivation rec {
    # LAMMPS has weird versioning converted to ISO 8601 format
    version = "patch_2Aug2018";
    name = "lammps-${version}";
  
    lammps_packages = "asphere body class2 colloid compress coreshell dipole granular kspace manybody mc misc molecule opt peri qeq replica rigid shock snap srd user-reaxc";
    lammps_includes = "-DLAMMPS_EXCEPTIONS -DLAMMPS_GZIP -DLAMMPS_MEMALIGN=64";
  
    src = fetchFromGitHub {
      owner = "lammps";
      repo = "lammps";
      rev = "${version}";
      sha256 = "1ph9pr7s11wgmspmnhxa55bh1pq2cyl8iimfi62lbpbpl9pr1ilc";
    };
  
    passthru = {
      inherit mpi;
    };
  
    buildInputs = [ fftw libpng openblas gzip bash ]
    ++ (stdenv.lib.optionals mpiSupport [ mpi ]);
  
    # Must do manual build due to LAMMPS requiring a seperate build for
  