anchor.diff:  # limitations under the License.
   
   { sources ? import ./sources.nix
  +, targetAndroid ? false
  +, targetIos ? false
  +, targetDesktop ? false
  +, targetWeb ? false
  +, fixAutoPatchelfHook ? false
   }:
   let
     config = { android_sdk.accept_license = true; };
  
positive.code:   };
  
    # Additional tools useful for code work and repository maintenance.
    devTools = runtimeDeps // buildTools // {
      inherit (pkgs) niv;
    };
  
    nativeBuildInputs = builtins.attrValues runtimeDeps;
    buildInputs = builtins.attrValues ciTools;
    shellInputs = builtins.attrValues devTools;
    shellHook = ''
      export ANDROID_HOME="${androidsdk}/libexec/android-sdk"
      export JAVA_HOME="${pkgs.jdk}"
    '';
  }
  
negative.code:     import sources.unstable-fix-autopatchelfhook {
        inherit config;
      };
    unstable_patched_overlay = _: pkgs:
      pkgs.lib.optionalAttrs (fixAutoPatchelfHook) {
        inherit (unstable_patched) androidenv;
      };
  
    unstable = import sources.unstable {
      inherit config;
    };
    unstable_overlay = _: pkgs: { inherit (unstable) cocoapods jdk; };
  
    flutter_overlay = _: pkgs: rec {
      flutterPackages =
  