anchor.diff:  { stdenv, fetchFromGitHub, cmake
   , boost, python3
  -
  -# TODO: also add libtrellis, later on
  -, icestorm
  +, icestorm, trellis
   
   # TODO(thoughtpolice) Currently the GUI build seems broken at runtime on my
   # laptop (and over a remote X server on my server...), so mark it broken for
  
positive.code: 
  let
    boostPython = boost.override { python = python3; enablePython = true; };
  in
  stdenv.mkDerivation rec {
    name = "nextpnr-${version}";
  
negative.code: 
    enableParallelBuilding = true;
    cmakeFlags =
      [ "-DARCH=generic;ice40;ecp5"
        "-DICEBOX_ROOT=${icestorm}/share/icebox"
        "-DTRELLIS_ROOT=${trellisRoot}/trellis"
      ] ++ (stdenv.lib.optional (!enableGui) "-DBUILD_GUI=OFF");
  
    # Fix the version number. This is a bit stupid (and fragile) in practice
  