{
  stdenv,
  lib,
  autoreconfHook,
  pkg-config,
  guile,
  guile-opengl,
  mesa,
  glibcLocales,
  libfive,
  sources,
}:
stdenv.mkDerivation {
  name = "inspekt3d-unstable";

  src = sources.inspekt3d;
  version = "unstable-2018-10-17";

  nativeBuildInputs = [pkg-config autoreconfHook];
  buildInputs = [guile glibcLocales mesa];
  propagatedBuildInputs = [guile-opengl libfive];

  preBuild = ''
    substituteInPlace inspekt3d/library.scm \
      --replace '"libfive-guile"' '"${libfive}/lib/libfive-guile.so"' \
      --replace '"libfive"' '"${libfive}/lib/libfive.so"'
  '';

  GUILE_AUTO_COMPILE = 0;
  preConfigure = "./bootstrap";

  meta = with lib; {
    description = "Lightweight 3D viewer for Libfive written in Guile Scheme";
    homepage = "https://sr.ht/~morgansmith/inspekt3d";
    license = licenses.gpl3;
    maintainers = with maintainers; [bsima];
    platforms = platforms.all;
  };
}