Add android user home for android sdk dep.

Android tests were using the default location which had two different
issues: it was writing state outside of the test chroot, and it was
deleting the state after the test execution. This change sets the
android home to a tmp directory that is deleted after the task is
complete.

Bug: https://github.com/flutter/flutter/issues/126557
Change-Id: I7237b5eaccdfa252930faa5b293bf1cc17fbf937
Reviewed-on: https://flutter-review.googlesource.com/c/recipes/+/44380
Reviewed-by: Keyong Han <keyonghan@google.com>
Reviewed-by: Ricardo Amador <ricardoamador@google.com>
Commit-Queue: Godofredo Contreras <godofredoc@google.com>
Reviewed-by: Gray Mackall <mackall@google.com>
diff --git a/recipe_modules/flutter_deps/api.py b/recipe_modules/flutter_deps/api.py
index fe52090..e6c83ff 100644
--- a/recipe_modules/flutter_deps/api.py
+++ b/recipe_modules/flutter_deps/api.py
@@ -333,6 +333,8 @@
       env['ANDROID_SDK_ROOT'] = sdk_root.join('sdk')
       env['ANDROID_HOME'] = sdk_root.join('sdk')
       env['ANDROID_NDK_PATH'] = sdk_root.join('ndk')
+    # Set android home to a temp directory.
+    env['ANDROID_USER_HOME'] = self.m.path.mkdtemp()
     self.gradle_cache(env, env_prefixes, version)
 
   def gradle_cache(self, env, env_prefixes, version):
diff --git a/recipe_modules/flutter_deps/examples/full.expected/basic.json b/recipe_modules/flutter_deps/examples/full.expected/basic.json
index b3a756f..7fefbe5 100644
--- a/recipe_modules/flutter_deps/examples/full.expected/basic.json
+++ b/recipe_modules/flutter_deps/examples/full.expected/basic.json
@@ -481,7 +481,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1",
+      "[CLEANUP]/tmp_tmp_3",
       "-ensure-file",
       "flutter/codesign/${platform} latest",
       "-max-threads",
@@ -620,7 +620,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision",
+      "[CLEANUP]/tmp_tmp_4/mobileprovision",
       "-ensure-file",
       "flutter_internal/mac/mobileprovision/${platform} latest",
       "-max-threads",
@@ -658,7 +658,7 @@
   {
     "cmd": [
       "RECIPE_MODULE[flutter::flutter_deps]/resources/copy_mobileprovisioning_profile.sh",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision/development.mobileprovision"
+      "[CLEANUP]/tmp_tmp_4/mobileprovision/development.mobileprovision"
     ],
     "name": "Prepare code signing.copy mobileprovisioning profile",
     "~followup_annotations": [
@@ -670,7 +670,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_3/curl",
+      "[CLEANUP]/tmp_tmp_5/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -776,6 +776,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -803,11 +804,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl"
+        "[CLEANUP]/tmp_tmp_5/curl"
       ]
     },
     "name": "Install jazzy.Ruby version",
@@ -884,6 +885,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -912,11 +914,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl",
+        "[CLEANUP]/tmp_tmp_5/curl",
         "[CACHE]/gems/ruby/0/bin"
       ]
     },
diff --git a/recipe_modules/flutter_deps/examples/full.expected/flutter_engine.json b/recipe_modules/flutter_deps/examples/full.expected/flutter_engine.json
index 1a44f08..59b1b6f 100644
--- a/recipe_modules/flutter_deps/examples/full.expected/flutter_engine.json
+++ b/recipe_modules/flutter_deps/examples/full.expected/flutter_engine.json
@@ -565,7 +565,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1",
+      "[CLEANUP]/tmp_tmp_3",
       "-ensure-file",
       "flutter/codesign/${platform} latest",
       "-max-threads",
@@ -704,7 +704,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision",
+      "[CLEANUP]/tmp_tmp_4/mobileprovision",
       "-ensure-file",
       "flutter_internal/mac/mobileprovision/${platform} latest",
       "-max-threads",
@@ -742,7 +742,7 @@
   {
     "cmd": [
       "RECIPE_MODULE[flutter::flutter_deps]/resources/copy_mobileprovisioning_profile.sh",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision/development.mobileprovision"
+      "[CLEANUP]/tmp_tmp_4/mobileprovision/development.mobileprovision"
     ],
     "name": "Prepare code signing.copy mobileprovisioning profile",
     "~followup_annotations": [
@@ -754,7 +754,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_3/curl",
+      "[CLEANUP]/tmp_tmp_5/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -860,6 +860,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -889,11 +890,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl"
+        "[CLEANUP]/tmp_tmp_5/curl"
       ]
     },
     "name": "Install jazzy.Ruby version",
@@ -970,6 +971,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -1000,11 +1002,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl",
+        "[CLEANUP]/tmp_tmp_5/curl",
         "[CACHE]/gems/ruby/0/bin"
       ]
     },
diff --git a/recipe_modules/flutter_deps/examples/full.expected/goldTryjob.json b/recipe_modules/flutter_deps/examples/full.expected/goldTryjob.json
index b3a756f..7fefbe5 100644
--- a/recipe_modules/flutter_deps/examples/full.expected/goldTryjob.json
+++ b/recipe_modules/flutter_deps/examples/full.expected/goldTryjob.json
@@ -481,7 +481,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1",
+      "[CLEANUP]/tmp_tmp_3",
       "-ensure-file",
       "flutter/codesign/${platform} latest",
       "-max-threads",
@@ -620,7 +620,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision",
+      "[CLEANUP]/tmp_tmp_4/mobileprovision",
       "-ensure-file",
       "flutter_internal/mac/mobileprovision/${platform} latest",
       "-max-threads",
@@ -658,7 +658,7 @@
   {
     "cmd": [
       "RECIPE_MODULE[flutter::flutter_deps]/resources/copy_mobileprovisioning_profile.sh",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision/development.mobileprovision"
+      "[CLEANUP]/tmp_tmp_4/mobileprovision/development.mobileprovision"
     ],
     "name": "Prepare code signing.copy mobileprovisioning profile",
     "~followup_annotations": [
@@ -670,7 +670,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_3/curl",
+      "[CLEANUP]/tmp_tmp_5/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -776,6 +776,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -803,11 +804,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl"
+        "[CLEANUP]/tmp_tmp_5/curl"
       ]
     },
     "name": "Install jazzy.Ruby version",
@@ -884,6 +885,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -912,11 +914,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl",
+        "[CLEANUP]/tmp_tmp_5/curl",
         "[CACHE]/gems/ruby/0/bin"
       ]
     },
diff --git a/recipe_modules/flutter_deps/examples/full.expected/linux.json b/recipe_modules/flutter_deps/examples/full.expected/linux.json
index b3a756f..7fefbe5 100644
--- a/recipe_modules/flutter_deps/examples/full.expected/linux.json
+++ b/recipe_modules/flutter_deps/examples/full.expected/linux.json
@@ -481,7 +481,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1",
+      "[CLEANUP]/tmp_tmp_3",
       "-ensure-file",
       "flutter/codesign/${platform} latest",
       "-max-threads",
@@ -620,7 +620,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision",
+      "[CLEANUP]/tmp_tmp_4/mobileprovision",
       "-ensure-file",
       "flutter_internal/mac/mobileprovision/${platform} latest",
       "-max-threads",
@@ -658,7 +658,7 @@
   {
     "cmd": [
       "RECIPE_MODULE[flutter::flutter_deps]/resources/copy_mobileprovisioning_profile.sh",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision/development.mobileprovision"
+      "[CLEANUP]/tmp_tmp_4/mobileprovision/development.mobileprovision"
     ],
     "name": "Prepare code signing.copy mobileprovisioning profile",
     "~followup_annotations": [
@@ -670,7 +670,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_3/curl",
+      "[CLEANUP]/tmp_tmp_5/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -776,6 +776,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -803,11 +804,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl"
+        "[CLEANUP]/tmp_tmp_5/curl"
       ]
     },
     "name": "Install jazzy.Ruby version",
@@ -884,6 +885,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -912,11 +914,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl",
+        "[CLEANUP]/tmp_tmp_5/curl",
         "[CACHE]/gems/ruby/0/bin"
       ]
     },
diff --git a/recipe_modules/flutter_deps/examples/full.expected/local_engine_cas.json b/recipe_modules/flutter_deps/examples/full.expected/local_engine_cas.json
index 097a09c..edcca7a 100644
--- a/recipe_modules/flutter_deps/examples/full.expected/local_engine_cas.json
+++ b/recipe_modules/flutter_deps/examples/full.expected/local_engine_cas.json
@@ -565,7 +565,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1",
+      "[CLEANUP]/tmp_tmp_3",
       "-ensure-file",
       "flutter/codesign/${platform} latest",
       "-max-threads",
@@ -704,7 +704,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision",
+      "[CLEANUP]/tmp_tmp_4/mobileprovision",
       "-ensure-file",
       "flutter_internal/mac/mobileprovision/${platform} latest",
       "-max-threads",
@@ -742,7 +742,7 @@
   {
     "cmd": [
       "RECIPE_MODULE[flutter::flutter_deps]/resources/copy_mobileprovisioning_profile.sh",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision/development.mobileprovision"
+      "[CLEANUP]/tmp_tmp_4/mobileprovision/development.mobileprovision"
     ],
     "name": "Prepare code signing.copy mobileprovisioning profile",
     "~followup_annotations": [
@@ -754,7 +754,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_3/curl",
+      "[CLEANUP]/tmp_tmp_5/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -860,6 +860,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -889,11 +890,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl"
+        "[CLEANUP]/tmp_tmp_5/curl"
       ]
     },
     "name": "Install jazzy.Ruby version",
@@ -970,6 +971,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -1000,11 +1002,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl",
+        "[CLEANUP]/tmp_tmp_5/curl",
         "[CACHE]/gems/ruby/0/bin"
       ]
     },
diff --git a/recipe_modules/flutter_deps/examples/full.expected/local_web_sdk_cas.json b/recipe_modules/flutter_deps/examples/full.expected/local_web_sdk_cas.json
index 9aa97a5..130ee75 100644
--- a/recipe_modules/flutter_deps/examples/full.expected/local_web_sdk_cas.json
+++ b/recipe_modules/flutter_deps/examples/full.expected/local_web_sdk_cas.json
@@ -565,7 +565,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1",
+      "[CLEANUP]/tmp_tmp_3",
       "-ensure-file",
       "flutter/codesign/${platform} latest",
       "-max-threads",
@@ -704,7 +704,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision",
+      "[CLEANUP]/tmp_tmp_4/mobileprovision",
       "-ensure-file",
       "flutter_internal/mac/mobileprovision/${platform} latest",
       "-max-threads",
@@ -742,7 +742,7 @@
   {
     "cmd": [
       "RECIPE_MODULE[flutter::flutter_deps]/resources/copy_mobileprovisioning_profile.sh",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision/development.mobileprovision"
+      "[CLEANUP]/tmp_tmp_4/mobileprovision/development.mobileprovision"
     ],
     "name": "Prepare code signing.copy mobileprovisioning profile",
     "~followup_annotations": [
@@ -754,7 +754,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_3/curl",
+      "[CLEANUP]/tmp_tmp_5/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -860,6 +860,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -889,11 +890,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl"
+        "[CLEANUP]/tmp_tmp_5/curl"
       ]
     },
     "name": "Install jazzy.Ruby version",
@@ -970,6 +971,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -1000,11 +1002,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl",
+        "[CLEANUP]/tmp_tmp_5/curl",
         "[CACHE]/gems/ruby/0/bin"
       ]
     },
diff --git a/recipe_modules/flutter_deps/examples/full.expected/mac.json b/recipe_modules/flutter_deps/examples/full.expected/mac.json
index e606660..e83c252 100644
--- a/recipe_modules/flutter_deps/examples/full.expected/mac.json
+++ b/recipe_modules/flutter_deps/examples/full.expected/mac.json
@@ -543,7 +543,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1",
+      "[CLEANUP]/tmp_tmp_3",
       "-ensure-file",
       "flutter/codesign/${platform} latest",
       "-max-threads",
@@ -685,7 +685,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_2/curl",
+      "[CLEANUP]/tmp_tmp_4/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -791,6 +791,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome-mac/Chromium.app/Contents/MacOS/Chromium",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -820,11 +821,11 @@
         "[CACHE]/chrome/drivers",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_2/curl"
+        "[CLEANUP]/tmp_tmp_4/curl"
       ]
     },
     "name": "Install jazzy.Ruby version",
diff --git a/recipe_modules/flutter_deps/examples/full.expected/windows.json b/recipe_modules/flutter_deps/examples/full.expected/windows.json
index 142fee2..cc4cea4 100644
--- a/recipe_modules/flutter_deps/examples/full.expected/windows.json
+++ b/recipe_modules/flutter_deps/examples/full.expected/windows.json
@@ -481,7 +481,7 @@
       "cipd.bat",
       "ensure",
       "-root",
-      "[CLEANUP]\\tmp_tmp_1",
+      "[CLEANUP]\\tmp_tmp_3",
       "-ensure-file",
       "flutter/codesign/${platform} latest",
       "-max-threads",
@@ -620,7 +620,7 @@
       "cipd.bat",
       "ensure",
       "-root",
-      "[CLEANUP]\\tmp_tmp_2\\mobileprovision",
+      "[CLEANUP]\\tmp_tmp_4\\mobileprovision",
       "-ensure-file",
       "flutter_internal/mac/mobileprovision/${platform} latest",
       "-max-threads",
@@ -658,7 +658,7 @@
   {
     "cmd": [
       "RECIPE_MODULE[flutter::flutter_deps]\\resources\\copy_mobileprovisioning_profile.sh",
-      "[CLEANUP]\\tmp_tmp_2\\mobileprovision\\development.mobileprovision"
+      "[CLEANUP]\\tmp_tmp_4\\mobileprovision\\development.mobileprovision"
     ],
     "name": "Prepare code signing.copy mobileprovisioning profile",
     "~followup_annotations": [
@@ -670,7 +670,7 @@
       "cipd.bat",
       "ensure",
       "-root",
-      "[CLEANUP]\\tmp_tmp_3\\curl",
+      "[CLEANUP]\\tmp_tmp_5\\curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -769,6 +769,7 @@
       "ANDROID_HOME": "[CACHE]\\android",
       "ANDROID_NDK_PATH": "[CACHE]\\android\\ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]\\android",
+      "ANDROID_USER_HOME": "[CLEANUP]\\tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]\\chrome\\chrome\\chrome.exe",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]\\firefox\\firefox",
@@ -792,11 +793,11 @@
         "[CLEANUP]\\go_path\\bin",
         "[START_DIR]\\firebase",
         "[CACHE]\\cmake\\bin",
-        "[CLEANUP]\\tmp_tmp_1",
+        "[CLEANUP]\\tmp_tmp_3",
         "[CACHE]\\cosign\\bin",
         "[CACHE]\\ninja",
         "[CACHE]\\clang\\bin",
-        "[CLEANUP]\\tmp_tmp_3\\curl"
+        "[CLEANUP]\\tmp_tmp_5\\curl"
       ]
     },
     "name": "Install Certs"
@@ -844,6 +845,7 @@
       "ANDROID_HOME": "[CACHE]\\android",
       "ANDROID_NDK_PATH": "[CACHE]\\android\\ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]\\android",
+      "ANDROID_USER_HOME": "[CLEANUP]\\tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]\\chrome\\chrome\\chrome.exe",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]\\firefox\\firefox",
@@ -868,11 +870,11 @@
         "[CLEANUP]\\go_path\\bin",
         "[START_DIR]\\firebase",
         "[CACHE]\\cmake\\bin",
-        "[CLEANUP]\\tmp_tmp_1",
+        "[CLEANUP]\\tmp_tmp_3",
         "[CACHE]\\cosign\\bin",
         "[CACHE]\\ninja",
         "[CACHE]\\clang\\bin",
-        "[CLEANUP]\\tmp_tmp_3\\curl"
+        "[CLEANUP]\\tmp_tmp_5\\curl"
       ]
     },
     "name": "Install VS build"
@@ -927,6 +929,7 @@
       "ANDROID_HOME": "[CACHE]\\android",
       "ANDROID_NDK_PATH": "[CACHE]\\android\\ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]\\android",
+      "ANDROID_USER_HOME": "[CLEANUP]\\tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]\\chrome\\chrome\\chrome.exe",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]\\firefox\\firefox",
@@ -956,11 +959,11 @@
         "[CLEANUP]\\go_path\\bin",
         "[START_DIR]\\firebase",
         "[CACHE]\\cmake\\bin",
-        "[CLEANUP]\\tmp_tmp_1",
+        "[CLEANUP]\\tmp_tmp_3",
         "[CACHE]\\cosign\\bin",
         "[CACHE]\\ninja",
         "[CACHE]\\clang\\bin",
-        "[CLEANUP]\\tmp_tmp_3\\curl"
+        "[CLEANUP]\\tmp_tmp_5\\curl"
       ]
     },
     "name": "Install jazzy.Ruby version",
diff --git a/recipe_modules/flutter_deps/examples/full.expected/with-arm64ruby.json b/recipe_modules/flutter_deps/examples/full.expected/with-arm64ruby.json
index 8a9261f..6dd9494 100644
--- a/recipe_modules/flutter_deps/examples/full.expected/with-arm64ruby.json
+++ b/recipe_modules/flutter_deps/examples/full.expected/with-arm64ruby.json
@@ -481,7 +481,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1",
+      "[CLEANUP]/tmp_tmp_3",
       "-ensure-file",
       "flutter/codesign/${platform} latest",
       "-max-threads",
@@ -620,7 +620,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision",
+      "[CLEANUP]/tmp_tmp_4/mobileprovision",
       "-ensure-file",
       "flutter_internal/mac/mobileprovision/${platform} latest",
       "-max-threads",
@@ -658,7 +658,7 @@
   {
     "cmd": [
       "RECIPE_MODULE[flutter::flutter_deps]/resources/copy_mobileprovisioning_profile.sh",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision/development.mobileprovision"
+      "[CLEANUP]/tmp_tmp_4/mobileprovision/development.mobileprovision"
     ],
     "name": "Prepare code signing.copy mobileprovisioning profile",
     "~followup_annotations": [
@@ -670,7 +670,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_3/curl",
+      "[CLEANUP]/tmp_tmp_5/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -776,6 +776,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -803,11 +804,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl"
+        "[CLEANUP]/tmp_tmp_5/curl"
       ]
     },
     "name": "Install jazzy.Ruby version",
@@ -884,6 +885,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -912,11 +914,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl",
+        "[CLEANUP]/tmp_tmp_5/curl",
         "[CACHE]/gems/ruby/0/bin"
       ]
     },
diff --git a/recipe_modules/flutter_deps/examples/full.expected/with-gems.json b/recipe_modules/flutter_deps/examples/full.expected/with-gems.json
index 12a66ba..d8d4d7c 100644
--- a/recipe_modules/flutter_deps/examples/full.expected/with-gems.json
+++ b/recipe_modules/flutter_deps/examples/full.expected/with-gems.json
@@ -481,7 +481,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1",
+      "[CLEANUP]/tmp_tmp_3",
       "-ensure-file",
       "flutter/codesign/${platform} latest",
       "-max-threads",
@@ -620,7 +620,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision",
+      "[CLEANUP]/tmp_tmp_4/mobileprovision",
       "-ensure-file",
       "flutter_internal/mac/mobileprovision/${platform} latest",
       "-max-threads",
@@ -658,7 +658,7 @@
   {
     "cmd": [
       "RECIPE_MODULE[flutter::flutter_deps]/resources/copy_mobileprovisioning_profile.sh",
-      "[CLEANUP]/tmp_tmp_2/mobileprovision/development.mobileprovision"
+      "[CLEANUP]/tmp_tmp_4/mobileprovision/development.mobileprovision"
     ],
     "name": "Prepare code signing.copy mobileprovisioning profile",
     "~followup_annotations": [
@@ -670,7 +670,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_3/curl",
+      "[CLEANUP]/tmp_tmp_5/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -776,6 +776,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -803,11 +804,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl"
+        "[CLEANUP]/tmp_tmp_5/curl"
       ]
     },
     "name": "Install jazzy.Ruby version",
@@ -884,6 +885,7 @@
       "ANDROID_HOME": "[CACHE]/android",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk-bundle",
       "ANDROID_SDK_ROOT": "[CACHE]/android",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_2",
       "CHROME_EXECUTABLE": "[CACHE]/chrome/chrome/chrome",
       "CHROME_NO_SANDBOX": "true",
       "FIREFOX_EXECUTABLE": "[CACHE]/firefox/firefox",
@@ -912,11 +914,11 @@
         "[CLEANUP]/go_path/bin",
         "[START_DIR]/firebase",
         "[CACHE]/cmake/bin",
-        "[CLEANUP]/tmp_tmp_1",
+        "[CLEANUP]/tmp_tmp_3",
         "[CACHE]/cosign/bin",
         "[CACHE]/ninja",
         "[CACHE]/clang/bin",
-        "[CLEANUP]/tmp_tmp_3/curl",
+        "[CLEANUP]/tmp_tmp_5/curl",
         "[CACHE]/gems/ruby/0/bin"
       ]
     },
diff --git a/recipes/engine_v2/builder.pyback b/recipes/engine_v2/builder.pyback
deleted file mode 100644
index ff13048..0000000
--- a/recipes/engine_v2/builder.pyback
+++ /dev/null
@@ -1,333 +0,0 @@
-# Copyright 2021 The Chromium Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-"""Flutter Engine builder recipe.
-
-This recipe is used to build flavors of flutter engine identified by lists of
-gn flags and ninja configs and targets.
-
-
-The following are examples of valid configurations passed to builders using
-this recipe in the builds property:
-
- {
-    "gn" : [
-       "--ios",
-       "--runtime-mode",
-       "debug",
-       "--simulator",
-       "--no-lto"
-    ],
-    "ninja": {
-      "config": "ios_debug_sim",
-      "targets": ["ios_test_flutter"]
-    }
- }
-"""
-import copy
-
-from contextlib import contextmanager
-
-from google.protobuf import struct_pb2
-from PB.recipes.flutter.engine.engine import InputProperties
-from PB.recipes.flutter.engine.engine import EnvProperties
-from PB.go.chromium.org.luci.buildbucket.proto import build as build_pb2
-
-DEPS = [
-    'depot_tools/depot_tools',
-    'depot_tools/gsutil',
-    'flutter/archives',
-    'flutter/build_util',
-    'flutter/flutter_bcid',
-    'flutter/flutter_deps',
-    'flutter/logs_util',
-    'flutter/monorepo',
-    'flutter/os_utils',
-    'flutter/osx_sdk',
-    'flutter/repo_util',
-    'flutter/retry',
-    'flutter/shard_util_v2',
-    'flutter/signing',
-    'flutter/test_utils',
-    'fuchsia/cas_util',
-    'recipe_engine/bcid_reporter',
-    'recipe_engine/buildbucket',
-    'recipe_engine/context',
-    'recipe_engine/file',
-    'recipe_engine/path',
-    'recipe_engine/platform',
-    'recipe_engine/properties',
-    'recipe_engine/raw_io',
-    'recipe_engine/step',
-]
-
-PROPERTIES = InputProperties
-ENV_PROPERTIES = EnvProperties
-ANDROID_ARTIFACTS_BUCKET = 'download.flutter.io'
-
-# Relative paths used to mock paths for testing.
-MOCK_JAR_PATH = (
-    'io/flutter/x86_debug/'
-    '1.0.0-0005149dca9b248663adcde4bdd7c6c915a76584/'
-    'x86_debug-1.0.0-0005149dca9b248663adcde4bdd7c6c915a76584.jar'
-)
-MOCK_POM_PATH = (
-    'io/flutter/x86_debug/'
-    '1.0.0-0005149dca9b248663adcde4bdd7c6c915a76584/'
-    'x86_debug-1.0.0-0005149dca9b248663adcde4bdd7c6c915a76584.pom'
-)
-
-# Used for mock paths
-DIRECTORY = 'DIRECTORY'
-
-
-def run_generators(api, pub_dirs, generator_tasks, checkout, env, env_prefixes):
-  """Runs sub-builds generators."""
-  # Run pub on all of the pub_dirs.
-  for pub in pub_dirs:
-    pub_dir = api.path.abs_to_path(api.path.dirname(checkout.join(pub)))
-    with api.context(env=env, env_prefixes=env_prefixes, cwd=pub_dir):
-      api.step('dart pub get', ['dart', 'pub', 'get'])
-  for generator_task in generator_tasks:
-    # Generators must run from inside flutter folder.
-    cmd = []
-    for script in generator_task.get('scripts'):
-      full_path_script = checkout.join(script)
-      cmd.append(full_path_script)
-    cmd.extend(generator_task.get('parameters', []))
-    api.step(generator_task.get('name'), cmd)
-
-
-def run_tests(api, tests, checkout, env, env_prefixes):
-  """Runs sub-build tests."""
-  # Run local tests in the builder to optimize resource usage.
-  for test in tests:
-    command = [test.get('language')] if test.get('language') else []
-    # Ideally local tests should be completely hermetic and in theory we can run
-    # them in parallel using futures. I haven't found a flutter engine
-    # configuration with more than one local test but once we find it we
-    # should run the list of tests using parallelism.
-    # TODO(godofredoc): Optimize to run multiple local tests in parallel.
-    command.append(checkout.join(test.get('script')))
-    command.extend(test.get('parameters', []))
-    #api.step(test.get('name'), command)
-    step_name = api.test_utils.test_step_name(test.get('name'))
-
-    def run_test():
-      return api.step(step_name, command)
-
-    # Rerun test step 3 times by default if failing.
-    # TODO(keyonghan): notify tree gardener for test failures/flakes:
-    # https://github.com/flutter/flutter/issues/89308
-    api.logs_util.initialize_logs_collection(env)
-    try:
-      # Run within another context to make the logs env variable available to
-      # test scripts.
-      with api.context(env=env, env_prefixes=env_prefixes):
-        api.retry.wrap(run_test, step_name=test.get('name'))
-    finally:
-      api.logs_util.upload_logs(test.get('name'))
-
-
-def ReadBuildConfig(api, checkout_path):
-  """Reads an standalone build configuration."""
-  config_name = api.properties.get('config_name')
-  config_path = checkout_path.join(
-      'flutter', 'ci', 'builders', 'standalone', '%s.json' % config_name
-  )
-  config = api.file.read_json(
-      'Read build config file', config_path, test_data={}
-  )
-  return config
-
-
-def Build(api, checkout, env, env_prefixes, outputs):
-  """Builds a flavor identified as a set of gn and ninja configs."""
-
-  # Mock data for tests. This is required for the archive api to expand the directory to full path
-  # of files.
-  api.path.mock_add_paths(
-      api.path['cache'].join(
-          'builder/src/out/android_jit_release_x86/zip_archives/download.flutter.io'
-      ), DIRECTORY
-  )
-
-  ninja_tool = {
-      "ninja": api.build_util.build,
-  }
-  build = api.properties.get('build') or ReadBuildConfig(api, checkout)
-  deps = build.get('dependencies', [])
-  api.flutter_deps.required_deps(env, env_prefixes, deps)
-  api.flutter_bcid.report_stage('compile')
-  gn = build.get('gn')
-  if gn:
-    with api.context(env=env, env_prefixes=env_prefixes):
-      api.build_util.run_gn(build.get('gn'), checkout)
-      ninja = build.get('ninja')
-      ninja_tool[ninja.get('tool', 'ninja')
-                ](ninja.get('config'), checkout, ninja.get('targets', []))
-  generator_tasks = build.get('generators', {}).get('tasks', [])
-  pub_dirs = build.get('generators', {}).get('pub_dirs', [])
-  archives = build.get('archives', [])
-  # Get only local tests.
-  tests = build.get('tests', [])
-  with api.context(env=env, env_prefixes=env_prefixes,
-                   cwd=checkout.join('flutter')), api.depot_tools.on_path():
-    run_generators(api, pub_dirs, generator_tasks, checkout, env, env_prefixes)
-    run_tests(api, tests, checkout, env, env_prefixes)
-    api.flutter_bcid.report_stage('upload')
-    for archive_config in archives:
-      outputs[archive_config['name']] = Archive(api, checkout, archive_config)
-    api.flutter_bcid.report_stage('upload-complete')
-  # Archive full build. This is inneficient but necessary for global generators.
-  if build.get('cas_archive', True):
-    full_build_hash = api.shard_util_v2.archive_full_build(
-        checkout.join('out', build.get('name')), build.get('name')
-    )
-    outputs['full_build'] = full_build_hash
-
-
-def Archive(api, checkout, archive_config):
-  paths = api.archives.engine_v2_gcs_paths(checkout, archive_config)
-  # Sign artifacts if running on mac and a release candidate branch.
-  is_release_branch = api.repo_util.is_release_candidate_branch(
-      checkout.join('flutter')
-  )
-  if api.platform.is_mac and is_release_branch:
-    signing_paths = [
-        path.local
-        for path in paths
-        if api.signing.requires_signing(path.local)
-    ]
-    api.signing.code_sign(signing_paths)
-  for path in paths:
-    api.archives.upload_artifact(path.local, path.remote)
-    api.flutter_bcid.upload_provenance(path.local, path.remote)
-
-
-def RunSteps(api, properties, env_properties):
-  api.flutter_bcid.report_stage('start')
-  checkout = api.path['cache'].join('builder', 'src')
-  api.file.rmtree('Clobber build output', checkout.join('out'))
-  cache_root = api.path['cache'].join('builder')
-  api.file.ensure_directory('Ensure checkout cache', cache_root)
-
-  # Enable long path support on Windows.
-  api.os_utils.enable_long_paths()
-  env, env_prefixes = api.repo_util.engine_environment(
-      api.path['cache'].join('builder')
-  )
-
-  # Engine path is used inconsistently across the engine repo. We'll start
-  # with [cache]/builder and will adjust it to start using it consistently.
-  env['ENGINE_PATH'] = api.path['cache'].join('builder')
-
-  api.flutter_bcid.report_stage('fetch')
-  if api.monorepo.is_monorepo_ci_build or api.monorepo.is_monorepo_try_build:
-    api.repo_util.monorepo_checkout(cache_root, env, env_prefixes)
-    checkout = api.path['cache'].join('builder', 'engine', 'src')
-  else:
-    api.repo_util.engine_checkout(cache_root, env, env_prefixes)
-  outputs = {}
-  if api.platform.is_mac:
-    with api.osx_sdk('ios'):
-      Build(api, checkout, env, env_prefixes, outputs)
-  else:
-    Build(api, checkout, env, env_prefixes, outputs)
-  output_props = api.step('Set output properties', None)
-  output_props.presentation.properties['cas_output_hash'] = outputs
-
-
-def GenTests(api):
-  build = {
-      "archives": [{
-          "name":
-              "android_jit_release_x86", "type":
-                  "gcs", "realm":
-                      "production", "base_path":
-                          "out/android_jit_release_x86/zip_archives/",
-          "include_paths": [
-              "out/android_jit_release_x86/zip_archives/android-x86-jit-release/artifacts.zip",
-              "out/android_jit_release_x86/zip_archives/download.flutter.io"
-          ]
-      }], "gn": ["--ios"], "ninja": {"config": "ios_debug", "targets": []},
-      "generators": {
-          "pub_dirs": ["dev"], "tasks": [{
-              "name": "generator1", "scripts": ["script1.sh", "dev/felt.dart"],
-              "parameters": ["--argument1"]
-          }]
-      }, "tests": [{
-          "name": "mytest", "script": "myscript.sh",
-          "parameters": ["param1", "param2"], "type": "local"
-      }]
-  }
-  yield api.test(
-      'basic',
-      api.properties(build=build, no_goma=True),
-      api.buildbucket.ci_build(
-          project='flutter',
-          bucket='prod',
-          builder='linux-host',
-          git_repo='https://flutter.googlesource.com/mirrors/engine',
-          git_ref='refs/heads/main',
-          revision='abcd' * 10,
-          build_number=123,
-      ),
-  )
-  yield api.test(
-      'config_file',
-      api.properties(no_goma=True, config_name='abc'),
-      api.buildbucket.ci_build(
-          project='flutter',
-          bucket='prod',
-          builder='linux-host',
-          git_repo='https://flutter.googlesource.com/mirrors/engine',
-          git_ref='refs/heads/main',
-          revision='abcd' * 10,
-          build_number=123,
-      ),
-  )
-  yield api.test(
-      'mac',
-      api.properties(build=build, no_goma=True),
-      api.platform('mac', 64),
-      api.buildbucket.ci_build(
-          project='flutter',
-          bucket='prod',
-          builder='mac-host',
-          git_repo='https://flutter.googlesource.com/mirrors/engine',
-          git_ref='refs/heads/main',
-          revision='abcd' * 10,
-          build_number=123,
-      ),
-      api.step_data(
-          'Identify branches.git branch',
-          stdout=api.raw_io
-          .output_text('branch1\nbranch2\nflutter-3.2-candidate.5')
-      ),
-  )
-  yield api.test(
-      'monorepo',
-      api.properties(build=build, no_goma=True),
-      api.monorepo.ci_build(),
-  )
-  yield api.test(
-      'monorepo_tryjob',
-      api.properties(build=build, no_goma=True),
-      api.monorepo.try_build(),
-  )
-
-  build_custom = dict(build)
-  build_custom["gclient_variables"] = {"example_custom_var": True}
-  build_custom["tests"] = []
-  yield api.test(
-      'dart-internal-flutter',
-      api.properties(build=build, no_goma=True),
-      api.buildbucket.ci_build(
-          project='dart-internal',
-          bucket='flutter',
-          git_repo='https://flutter.googlesource.com/mirrors/engine',
-          git_ref='refs/heads/main',
-      ),
-  )
diff --git a/recipes/engine_v2/tester.expected/monorepo_framework_tests.json b/recipes/engine_v2/tester.expected/monorepo_framework_tests.json
index 0430e70..4f4f728 100644
--- a/recipes/engine_v2/tester.expected/monorepo_framework_tests.json
+++ b/recipes/engine_v2/tester.expected/monorepo_framework_tests.json
@@ -524,6 +524,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "FLUTTER_STORAGE_BASE_URL": "https://storage.googleapis.com/flutter_archives_v2/monorepo",
       "GIT_BRANCH": "",
@@ -570,6 +571,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "FLUTTER_STORAGE_BASE_URL": "https://storage.googleapis.com/flutter_archives_v2/monorepo",
       "GIT_BRANCH": "",
diff --git a/recipes/flutter/android_views.expected/flutter_drive_clean_exit.json b/recipes/flutter/android_views.expected/flutter_drive_clean_exit.json
index 8b0883e..f251058 100644
--- a/recipes/flutter/android_views.expected/flutter_drive_clean_exit.json
+++ b/recipes/flutter/android_views.expected/flutter_drive_clean_exit.json
@@ -222,6 +222,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -269,7 +270,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1/curl",
+      "[CLEANUP]/tmp_tmp_2/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -310,6 +311,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
@@ -328,7 +330,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "env_suffixes": {
@@ -364,6 +366,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
@@ -382,7 +385,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "env_suffixes": {
@@ -416,6 +419,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -435,7 +439,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -455,6 +459,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -474,7 +479,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -504,6 +509,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -523,7 +529,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter config --no-analytics",
@@ -542,6 +548,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -561,7 +568,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter doctor",
@@ -582,6 +589,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -601,7 +609,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter devices",
@@ -621,6 +629,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -640,7 +649,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -665,6 +674,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -684,7 +694,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "Android Views Integration Tests",
@@ -706,6 +716,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -725,7 +736,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "kill and cleanup avd.Kill emulator cleanup",
@@ -744,6 +755,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -763,7 +775,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "kill and cleanup avd.list processes",
@@ -787,6 +799,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -806,7 +819,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -826,6 +839,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -845,7 +859,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -865,6 +879,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -884,7 +899,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -904,6 +919,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -923,7 +939,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -943,6 +959,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -962,7 +979,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -986,6 +1003,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -1005,7 +1023,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
diff --git a/recipes/flutter/android_views.expected/flutter_drive_zombie_process.json b/recipes/flutter/android_views.expected/flutter_drive_zombie_process.json
index 2158ffe..75a8728 100644
--- a/recipes/flutter/android_views.expected/flutter_drive_zombie_process.json
+++ b/recipes/flutter/android_views.expected/flutter_drive_zombie_process.json
@@ -222,6 +222,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -269,7 +270,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1/curl",
+      "[CLEANUP]/tmp_tmp_2/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -310,6 +311,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
@@ -328,7 +330,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "env_suffixes": {
@@ -364,6 +366,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
@@ -382,7 +385,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "env_suffixes": {
@@ -416,6 +419,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -435,7 +439,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -455,6 +459,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -474,7 +479,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -504,6 +509,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -523,7 +529,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter config --no-analytics",
@@ -542,6 +548,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -561,7 +568,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter doctor",
@@ -582,6 +589,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -601,7 +609,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter devices",
@@ -621,6 +629,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -640,7 +649,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -665,6 +674,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -684,7 +694,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "Android Views Integration Tests",
@@ -706,6 +716,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -725,7 +736,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "kill and cleanup avd.Kill emulator cleanup",
@@ -744,6 +755,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -763,7 +775,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "kill and cleanup avd.list processes",
@@ -784,6 +796,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -803,7 +816,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "kill and cleanup avd.Kill zombie processes",
@@ -826,6 +839,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -845,7 +859,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -865,6 +879,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -884,7 +899,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -904,6 +919,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -923,7 +939,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -943,6 +959,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -962,7 +979,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -982,6 +999,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -1001,7 +1019,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -1025,6 +1043,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -1044,7 +1063,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
diff --git a/recipes/flutter/deferred_components.expected/flutter_release_clean_exit.json b/recipes/flutter/deferred_components.expected/flutter_release_clean_exit.json
index 11367c8..35283a8 100644
--- a/recipes/flutter/deferred_components.expected/flutter_release_clean_exit.json
+++ b/recipes/flutter/deferred_components.expected/flutter_release_clean_exit.json
@@ -222,6 +222,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -269,7 +270,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1/curl",
+      "[CLEANUP]/tmp_tmp_2/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -310,6 +311,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
@@ -328,7 +330,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "env_suffixes": {
@@ -364,6 +366,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
@@ -382,7 +385,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "env_suffixes": {
@@ -416,6 +419,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -435,7 +439,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -455,6 +459,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -474,7 +479,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -504,6 +509,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -523,7 +529,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter config --no-analytics",
@@ -542,6 +548,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -561,7 +568,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter doctor",
@@ -582,6 +589,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -601,7 +609,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter devices",
@@ -621,6 +629,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -640,7 +649,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -668,6 +677,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -687,7 +697,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.ensure_installed",
@@ -716,6 +726,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -735,7 +746,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "download assets script"
@@ -752,6 +763,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -771,7 +783,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "Deferred components release tests",
@@ -793,6 +805,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -812,7 +825,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "kill and cleanup avd.Kill emulator cleanup",
@@ -831,6 +844,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -850,7 +864,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "kill and cleanup avd.list processes",
@@ -874,6 +888,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -893,7 +908,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -913,6 +928,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -932,7 +948,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -952,6 +968,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -971,7 +988,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -991,6 +1008,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -1010,7 +1028,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -1030,6 +1048,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -1049,7 +1068,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -1073,6 +1092,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -1092,7 +1112,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
diff --git a/recipes/flutter/deferred_components.expected/flutter_release_zombie_process.json b/recipes/flutter/deferred_components.expected/flutter_release_zombie_process.json
index 3f33ab2..fd63e5c 100644
--- a/recipes/flutter/deferred_components.expected/flutter_release_zombie_process.json
+++ b/recipes/flutter/deferred_components.expected/flutter_release_zombie_process.json
@@ -222,6 +222,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -269,7 +270,7 @@
       "cipd",
       "ensure",
       "-root",
-      "[CLEANUP]/tmp_tmp_1/curl",
+      "[CLEANUP]/tmp_tmp_2/curl",
       "-ensure-file",
       "flutter_internal/tools/curl/${platform} latest",
       "-max-threads",
@@ -310,6 +311,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
@@ -328,7 +330,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "env_suffixes": {
@@ -364,6 +366,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
@@ -382,7 +385,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "env_suffixes": {
@@ -416,6 +419,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -435,7 +439,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -455,6 +459,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -474,7 +479,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -504,6 +509,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -523,7 +529,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter config --no-analytics",
@@ -542,6 +548,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -561,7 +568,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter doctor",
@@ -582,6 +589,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -601,7 +609,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.flutter devices",
@@ -621,6 +629,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -640,7 +649,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -668,6 +677,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -687,7 +697,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "prepare environment.ensure_installed",
@@ -716,6 +726,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -735,7 +746,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "download assets script"
@@ -752,6 +763,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -771,7 +783,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "Deferred components release tests",
@@ -793,6 +805,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -812,7 +825,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "kill and cleanup avd.Kill emulator cleanup",
@@ -831,6 +844,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -850,7 +864,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "kill and cleanup avd.list processes",
@@ -871,6 +885,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -890,7 +905,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "name": "kill and cleanup avd.Kill zombie processes",
@@ -913,6 +928,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -932,7 +948,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -952,6 +968,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -971,7 +988,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -991,6 +1008,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -1010,7 +1028,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -1030,6 +1048,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -1049,7 +1068,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -1069,6 +1088,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -1088,7 +1108,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
@@ -1112,6 +1132,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "AVD_ROOT": "[CACHE]/avd",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "EMULATOR_PID": "17687",
@@ -1131,7 +1152,7 @@
         "[START_DIR]/flutter sdk/bin",
         "[START_DIR]/flutter sdk/bin/cache/dart-sdk/bin",
         "[CACHE]/avd/src/third_party/android_sdk/public/platform-tools",
-        "[CLEANUP]/tmp_tmp_1/curl"
+        "[CLEANUP]/tmp_tmp_2/curl"
       ]
     },
     "infra_step": true,
diff --git a/recipes/flutter/flutter_drone.expected/android_sdk.json b/recipes/flutter/flutter_drone.expected/android_sdk.json
index 48812c1..f8fc4e6 100644
--- a/recipes/flutter/flutter_drone.expected/android_sdk.json
+++ b/recipes/flutter/flutter_drone.expected/android_sdk.json
@@ -171,6 +171,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -209,6 +210,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -242,13 +244,14 @@
       "/path/to/tmp/json",
       "copy",
       "extra.secret.token.should.not.be.logged",
-      "[CLEANUP]/tmp_tmp_1"
+      "[CLEANUP]/tmp_tmp_2"
     ],
     "cwd": "[START_DIR]/flutter",
     "env": {
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -284,6 +287,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -318,6 +322,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GCP_PROJECT": "flutter-infra",
       "GIT_BRANCH": "",
@@ -333,7 +338,7 @@
       "SDK_CHECKOUT_PATH": "[START_DIR]/flutter",
       "SHARD": null,
       "SUBSHARD": null,
-      "TOKEN_PATH": "[CLEANUP]/tmp_tmp_1"
+      "TOKEN_PATH": "[CLEANUP]/tmp_tmp_2"
     },
     "env_prefixes": {
       "PATH": [
@@ -372,6 +377,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -409,6 +415,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -446,6 +453,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -483,6 +491,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -520,6 +529,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -561,6 +571,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
diff --git a/recipes/flutter/flutter_drone.expected/android_sdk_reduced.json b/recipes/flutter/flutter_drone.expected/android_sdk_reduced.json
index 6e1ecff..8d048c9 100644
--- a/recipes/flutter/flutter_drone.expected/android_sdk_reduced.json
+++ b/recipes/flutter/flutter_drone.expected/android_sdk_reduced.json
@@ -171,6 +171,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -209,6 +210,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -242,13 +244,14 @@
       "/path/to/tmp/json",
       "copy",
       "extra.secret.token.should.not.be.logged",
-      "[CLEANUP]/tmp_tmp_1"
+      "[CLEANUP]/tmp_tmp_2"
     ],
     "cwd": "[START_DIR]/flutter",
     "env": {
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -284,6 +287,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -318,6 +322,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GCP_PROJECT": "flutter-infra",
       "GIT_BRANCH": "",
@@ -333,7 +338,7 @@
       "SDK_CHECKOUT_PATH": "[START_DIR]/flutter",
       "SHARD": null,
       "SUBSHARD": null,
-      "TOKEN_PATH": "[CLEANUP]/tmp_tmp_1"
+      "TOKEN_PATH": "[CLEANUP]/tmp_tmp_2"
     },
     "env_prefixes": {
       "PATH": [
@@ -372,6 +377,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -409,6 +415,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -446,6 +453,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -483,6 +491,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -520,6 +529,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",
@@ -561,6 +571,7 @@
       "ANDROID_HOME": "[CACHE]/android/sdk",
       "ANDROID_NDK_PATH": "[CACHE]/android/ndk",
       "ANDROID_SDK_ROOT": "[CACHE]/android/sdk",
+      "ANDROID_USER_HOME": "[CLEANUP]/tmp_tmp_1",
       "DEPOT_TOOLS": "RECIPE_REPO[depot_tools]",
       "GIT_BRANCH": "",
       "GRADLE_OPTS": "-Dorg.gradle.daemon=false",