anchor.diff:  { nixpkgs ? ../../nixpkgs
   , javaFront ? { outPath = ../../java-front ; rev = 1234; }
   , strategoxtJava ? { outPath = ../../strategoxt ; rev = 1234; }
  -, baseline ? ../../strategoxt.jar
  +, baselineTarball ? ../../strategoxt-distrib.tar
   } :
   let
     pkgs = import nixpkgs {};
   
  -  baseline = pkgs.fetchurl {
  +  baselineTarball = pkgs.fetchurl {
       url = https://github.com/metaborg/strategoxt/releases/download/baseline-2/strategoxt-distrib.tar;
  -    sha256 = "e4d3920bb5b5a9d365e12d7f4626d93c42eafe4996c284cab5c7960c1da645f0";
  +    sha256 = "545e14a2ae302f96a35b95683ffb1915d4bbaa48e112f552d8469a97f40877e3";
  +  };
  +  
  +  baseline = pkgs.stdenv.mkDerivation {
  +      name = "strategoxt-baseline";
  +
  +
  +      buildInputs = with pkgs; [ ];
  +
  +      buildCommand = ''
  +        ensureDir $out
  +        cd $out
  +        tar -xf ${baselineTarball}
  +      '';
     };
   
     bootstrap = baseline: nr:
       pkgs.releaseTools.antBuild {
         name = "strategoxt-java-${toString nr}";
         src = strategoxtJava;
  -      buildInputs = with pkgs; [ strategoPackages.sdf ecj openjdk ];
  +      buildInputs = with pkgs; [ strategoPackages.sdf openjdk ];
   
         preConfigure = ''
           cd strategoxt
  
positive.code:   jobs = {
  
      bootstrap1 = bootstrap baseline 1;
      bootstrap2 = bootstrap jobs.bootstrap1 2;
      bootstrap3 = bootstrap jobs.bootstrap2 3;
      test-compiler = test jobs.bootstrap3 "test-compiler";
      test-interpreter = test jobs.bootstrap3 "test-interpreter";
    };
  in
    jobs
  
negative.code:         mkdir -p strategoxt/syntax/java-front
          cp -Rv ${javaFront}/* strategoxt/syntax/java-front/
          chmod -R a+w strategoxt/syntax/java-front
          cd ..
        '';
        
        
        antTargets = ["all" "install"] ++ (pkgs.lib.optional (nr == 3) "test-compiler");
        antProperties = [
          { name = "revision"; value = "${toString strategoxtJava.rev}"; }
          { name = "sdf2bundle"; value = pkgs.strategoPackages.sdf; }
          # { name = "sdf2bundle"; value = "${baseline}"; }
          # { name = "nativepath"; value = "${pkgs.strategoPackages.sdf}/bin"; }
          { name = "install-prefix-out"; value = "$out"; }
        ] ;
        antBuildInputs = [ (pkgs.lib.concatStrings [baseline "/share/strategoxt/strategoxt" ] ) ] ; # todo: ecj strj
  
        ANT_OPTS="-Xss8m -Xmx1024m";
  
  