anchor.diff:  { stdenv, lib, fetchurl, boost, cmake, ffmpeg, gettext, glew
  -, ilmbase, libXi, libX11, libjpeg, libpng, libsamplerate, libsndfile
  -, libtiff, mesa, openal, opencolorio, openexr, openimageio, openjpeg, python
  -, zlib, fftw, opensubdiv, freetype
  +, ilmbase, libXi, libX11, libXext, libXrender
  +, libjpeg, libpng, libsamplerate, libsndfile
  +, libtiff, mesa, openal, opencolorio, openexr, openimageio, openjpeg_1, python
  +, zlib, fftw, opensubdiv, freetype, jemalloc
   , jackaudioSupport ? false, libjack2
   , cudaSupport ? false, cudatoolkit
   , colladaSupport ? true, opencollada
  
positive.code:       "-DWITH_CODEC_SNDFILE=ON"
        "-DWITH_INSTALL_PORTABLE=OFF"
        "-DWITH_FFTW3=ON"
        "-DWITH_SDL=ON"
        "-DWITH_GAMEENGINE=ON"
        "-DWITH_OPENCOLORIO=ON"
        "-DWITH_SYSTEM_OPENJPEG=ON"
  
negative.code: with lib;
  
  stdenv.mkDerivation rec {
    name = "blender-2.78";
  
    src = fetchurl {
      url = "http://download.blender.org/source/${name}.tar.gz";
      sha256 = "0hfl7q6phydlk8mbkksnqxj004qqad99xkrp5n9wrz9vrcf3x1hp";
    };
  
    buildInputs =
      [ boost cmake ffmpeg gettext glew ilmbase
        libXi libX11 libXext libXrender
        freetype libjpeg libpng libsamplerate libsndfile libtiff mesa openal
        opencolorio openexr openimageio openjpeg_1 python zlib fftw jemalloc
        (opensubdiv.override { inherit cudaSupport; })
      ]
      ++ optional jackaudioSupport libjack2
  