summary refs log tree commit diff
path: root/pkgs/development/mobile
diff options
context:
space:
mode:
authorLuca Favatella <lucafavatella@users.noreply.github.com>2020-03-08 17:35:52 +0000
committerLuca Favatella <lucafavatella@users.noreply.github.com>2020-03-09 04:47:39 +0000
commite003ca046c788100c094a6c13b9ba195a1378cc5 (patch)
tree34e12c969492782958c4cc5e55495c689b31c750 /pkgs/development/mobile
parentde119ca8eaf85eb6efcf8ca31ba9091cc670e868 (diff)
downloadnixpkgs-e003ca046c788100c094a6c13b9ba195a1378cc5.tar
nixpkgs-e003ca046c788100c094a6c13b9ba195a1378cc5.tar.gz
nixpkgs-e003ca046c788100c094a6c13b9ba195a1378cc5.tar.bz2
nixpkgs-e003ca046c788100c094a6c13b9ba195a1378cc5.tar.lz
nixpkgs-e003ca046c788100c094a6c13b9ba195a1378cc5.tar.xz
nixpkgs-e003ca046c788100c094a6c13b9ba195a1378cc5.tar.zst
nixpkgs-e003ca046c788100c094a6c13b9ba195a1378cc5.zip
androidenv: update the generated expressions
... running `generate.sh`.
Diffstat (limited to 'pkgs/development/mobile')
-rw-r--r--pkgs/development/mobile/androidenv/generated/addons.nix179
-rw-r--r--pkgs/development/mobile/androidenv/generated/packages.nix738
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-android-tv.nix245
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-android-wear-cn.nix97
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-android-wear.nix143
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-android.nix949
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-google_apis.nix890
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-google_apis_playstore.nix241
8 files changed, 1892 insertions, 1590 deletions
diff --git a/pkgs/development/mobile/androidenv/generated/addons.nix b/pkgs/development/mobile/androidenv/generated/addons.nix
index d902b111665..a1807b99054 100644
--- a/pkgs/development/mobile/androidenv/generated/addons.nix
+++ b/pkgs/development/mobile/androidenv/generated/addons.nix
@@ -423,6 +423,17 @@
     };
     
 
+    "extras;google;Android_Emulator_Hypervisor_Driver" = {
+      name = "extras-google-Android_Emulator_Hypervisor_Driver";
+      path = "extras/google/Android_Emulator_Hypervisor_Driver";
+      revision = "1.4.0";
+      displayName = "Android Emulator Hypervisor Driver for AMD Processors (installer)";
+      archives = {
+      
+      };
+    };
+    
+
     "extras;google;admob_ads_sdk" = {
       name = "extras-google-admob_ads_sdk";
       path = "extras/google/admob_ads_sdk";
@@ -525,13 +536,13 @@
     "extras;google;instantapps" = {
       name = "extras-google-instantapps";
       path = "extras/google/instantapps";
-      revision = "1.5.0";
+      revision = "1.9.0";
       displayName = "Google Play Instant Development SDK";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/iasdk-1.5.0-1538000167.zip;
-          sha1 = "6c282b9c686e819fe7f5ac8f2249d2479acb63b4";
+          url = https://dl.google.com/android/repository/iasdk-1.9.0-1566514721.zip;
+          sha1 = "c498367dcd7db30154b3e70c4ddbb1b0ea4b8d20";
         };
       
       };
@@ -605,7 +616,7 @@
     "extras;google;usb_driver" = {
       name = "extras-google-usb_driver";
       path = "extras/google/usb_driver";
-      revision = "11";
+      revision = "12";
       displayName = "Google USB Driver";
       archives = {
       
@@ -645,38 +656,6 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha2" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha2";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha2";
-      revision = "1";
-      displayName = "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha2";
-      archives = {
-      
-        all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha2.zip;
-          sha1 = "2e7fd5d8d158f4517ba52af824f84466ffede879";
-        };
-      
-      };
-    };
-    
-
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha3" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha3";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha3";
-      revision = "1";
-      displayName = "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha3";
-      archives = {
-      
-        all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha3.zip;
-          sha1 = "cd1cbbb2621c9034b835e9b69243dc558cdee4dc";
-        };
-      
-      };
-    };
-    
-
     "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha4" = {
       name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha4";
       path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha4";
@@ -693,48 +672,48 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha5" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha5";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha5";
+    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha4";
       revision = "1";
-      displayName = "Solver for ConstraintLayout 1.0.0-alpha5";
+      displayName = "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha5.zip;
-          sha1 = "7ba6c82c7645ac023cf45c1e27a6ae3added308a";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha4.zip;
+          sha1 = "2aa2aceecc6ba172742d0af0b43f11d03924eeb8";
         };
       
       };
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha6" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha6";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha6";
+    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha4";
       revision = "1";
-      displayName = "Solver for ConstraintLayout 1.0.0-alpha6";
+      displayName = "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha6.zip;
-          sha1 = "b7e390f940704f4f78e1eaa5f5a5dba3bc3e81ad";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha4.zip;
+          sha1 = "2aa2aceecc6ba172742d0af0b43f11d03924eeb8";
         };
       
       };
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha7" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha7";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha7";
+    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha4";
       revision = "1";
-      displayName = "Solver for ConstraintLayout 1.0.0-alpha7";
+      displayName = "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha7.zip;
-          sha1 = "f08be3c306bf878de31c465e46a266c52014a13f";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha4.zip;
+          sha1 = "2aa2aceecc6ba172742d0af0b43f11d03924eeb8";
         };
       
       };
@@ -757,16 +736,16 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha9" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha9";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha9";
+    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha8" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha8";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha8";
       revision = "1";
-      displayName = "Solver for ConstraintLayout 1.0.0-alpha9";
+      displayName = "Solver for ConstraintLayout 1.0.0-alpha8";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha9.zip;
-          sha1 = "2c52ddd883d83230a17042b8f4ba03669f0f5f40";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha8.zip;
+          sha1 = "cd13d16a8f0198c1d6040ec8b1d0d4e5bb7feb6a";
         };
       
       };
@@ -901,38 +880,6 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha2" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha2";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha2";
-      revision = "1";
-      displayName = "com.android.support.constraint:constraint-layout:1.0.0-alpha2";
-      archives = {
-      
-        all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha2.zip;
-          sha1 = "2edb4fc33745cc9d69d985f29fd48fefcd0aa9f0";
-        };
-      
-      };
-    };
-    
-
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha3" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha3";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha3";
-      revision = "1";
-      displayName = "com.android.support.constraint:constraint-layout:1.0.0-alpha3";
-      archives = {
-      
-        all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha3.zip;
-          sha1 = "1a26fb79d98421f315ead7ad15be167727533026";
-        };
-      
-      };
-    };
-    
-
     "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha4" = {
       name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha4";
       path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha4";
@@ -949,48 +896,48 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha5" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha5";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha5";
+    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha4";
       revision = "1";
-      displayName = "ConstraintLayout for Android 1.0.0-alpha5";
+      displayName = "com.android.support.constraint:constraint-layout:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha5.zip;
-          sha1 = "24f78daf491dcad74bcb2acfa79ea2d8e906f53b";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha4.zip;
+          sha1 = "645a9be1f0c1177301e71cd0ddccf1dd67c554fe";
         };
       
       };
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha6" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha6";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha6";
+    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha4";
       revision = "1";
-      displayName = "ConstraintLayout for Android 1.0.0-alpha6";
+      displayName = "com.android.support.constraint:constraint-layout:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha6.zip;
-          sha1 = "cb60e9ad4f6d3cc3c5b1b98cd3610c8d3204e651";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha4.zip;
+          sha1 = "645a9be1f0c1177301e71cd0ddccf1dd67c554fe";
         };
       
       };
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha7" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha7";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha7";
+    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha4";
       revision = "1";
-      displayName = "ConstraintLayout for Android 1.0.0-alpha7";
+      displayName = "com.android.support.constraint:constraint-layout:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha7.zip;
-          sha1 = "17ac210c85d24d7e8ace62847f05e4e45b640b73";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha4.zip;
+          sha1 = "645a9be1f0c1177301e71cd0ddccf1dd67c554fe";
         };
       
       };
@@ -1013,16 +960,16 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha9" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha9";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha9";
+    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha8" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha8";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha8";
       revision = "1";
-      displayName = "ConstraintLayout for Android 1.0.0-alpha9";
+      displayName = "ConstraintLayout for Android 1.0.0-alpha8";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha9.zip;
-          sha1 = "89c2bbc005d4731c7a830a4d5aa98dae121a46a4";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha8.zip;
+          sha1 = "7912ba03b04831f918f523648f118c4ee4da7604";
         };
       
       };
diff --git a/pkgs/development/mobile/androidenv/generated/packages.nix b/pkgs/development/mobile/androidenv/generated/packages.nix
index fc9f50e1316..a63a18c4b51 100644
--- a/pkgs/development/mobile/androidenv/generated/packages.nix
+++ b/pkgs/development/mobile/androidenv/generated/packages.nix
@@ -877,6 +877,158 @@
     };
   };
   
+  "build-tools"."29.0.0" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.0";
+    revision = "29.0.0";
+    displayName = "Android SDK Build-Tools 29";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-linux.zip;
+        sha1 = "ad314caf1802209c4b00a5f3517af5ceb0d48eae";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-macosx.zip;
+        sha1 = "35dc6bc7a53bd9d206847e72f02cab21cfdaa869";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.0-rc1" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.0-rc1";
+    revision = "29.0.0-rc1";
+    displayName = "Android SDK Build-Tools 29-rc1";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc1-linux.zip;
+        sha1 = "1c897f5885ac5468613e40e1ea598c21c05d345d";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc1-macosx.zip;
+        sha1 = "f066c0d9ea2f0d8a0a9cc7b2ca0a467a570ab034";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.0-rc2" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.0-rc2";
+    revision = "29.0.0-rc2";
+    displayName = "Android SDK Build-Tools 29-rc2";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc2-linux.zip;
+        sha1 = "b4b41d429c35b42db07b6c65d4aa998ba8c4093c";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc2-macosx.zip;
+        sha1 = "7a960367999169ccac5dbc60817e5f1725c4c738";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.0-rc3" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.0-rc3";
+    revision = "29.0.0-rc3";
+    displayName = "Android SDK Build-Tools 29-rc3";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc3-linux.zip;
+        sha1 = "8b7177f198e8b92da8f9537aaf859f6edf222b01";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc3-macosx.zip;
+        sha1 = "643e8d76625f6e2cfcd5494e50bae5e14725ec0c";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.1" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.1";
+    revision = "29.0.1";
+    displayName = "Android SDK Build-Tools 29.0.1";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.1-linux.zip;
+        sha1 = "fc209e5d91ab2daeac24345a5cb17261940547e4";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.1-macosx.zip;
+        sha1 = "46ae9b1d1e2a67241d7da9c2cd8eae42f24cc6cd";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.2" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.2";
+    revision = "29.0.2";
+    displayName = "Android SDK Build-Tools 29.0.2";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.2-linux.zip;
+        sha1 = "c0fc7e5c37ac96bfd0c611802e8ab36d0e71b398";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.2-macosx.zip;
+        sha1 = "f781d9e03d5c2debcf51fed3792ee7a9d066723f";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.3" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.3";
+    revision = "29.0.3";
+    displayName = "Android SDK Build-Tools 29.0.3";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.3-linux.zip;
+        sha1 = "64efff52165cda5e31848acafa46a05e3f3b4651";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.3-macosx.zip;
+        sha1 = "76520eb7712fb0bb4c023b55c6f65588ee268289";
+      };
+      
+    };
+  };
+  
+  "build-tools"."30.0.0-rc1" = {
+    
+    name = "build-tools";
+    path = "build-tools/30.0.0-rc1";
+    revision = "30.0.0-rc1";
+    displayName = "Android SDK Build-Tools 30-rc1";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r30-rc1-linux.zip;
+        sha1 = "afcb370bb6956bbf9e90557230088a3e1417e8a8";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r30-rc1-macosx.zip;
+        sha1 = "2761a0ea9466685aaaf93e85bf8bd47575bc91b8";
+      };
+      
+    };
+  };
+  
   "cmake"."3.10.2" = {
     
     name = "cmake";
@@ -915,6 +1067,25 @@
     };
   };
   
+  "cmdline-tools"."1.0" = {
+    
+    name = "cmdline-tools";
+    path = "cmdline-tools/1.0";
+    revision = "1.0";
+    displayName = "Android SDK Command-line Tools";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/commandlinetools-linux-6200805_latest.zip;
+        sha1 = "6ffc5bd72db2c755f9b374ed829202262a6d8aaf";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/commandlinetools-mac-6200805_latest.zip;
+        sha1 = "23f803c07e392bb769507c88b23c2c7868cc7a6f";
+      };
+      
+    };
+  };
+  
   "docs"."1" = {
     
     name = "docs";
@@ -931,88 +1102,66 @@
     };
   };
   
-  "emulator"."27.3.10".linux = {
-    
-    name = "emulator";
-    path = "emulator";
-    revision = "27.3.10";
-    displayName = "Android Emulator";
-    archives = {
-      linux = fetchurl {
-        url = https://dl.google.com/android/repository/emulator-linux-4969155.zip;
-        sha1 = "5b037b25bc6567fda3071457f0009c057670d9e8";
-      };
-      
-    };
-  };
-  
-  "emulator"."27.3.10".macosx = {
+  "emulator"."30.0.0".macosx = {
     
     name = "emulator";
     path = "emulator";
-    revision = "27.3.10";
+    revision = "30.0.0";
     displayName = "Android Emulator";
     archives = {
       macosx = fetchurl {
-        url = https://dl.google.com/android/repository/emulator-darwin-4969155.zip;
-        sha1 = "28d2b51ee5c84bc544deee433419f33dc9e05b66";
+        url = https://dl.google.com/android/repository/emulator-darwin-6203977.zip;
+        sha1 = "3bb965869577be4e62dec053de34c279f5024a12";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/emulator-linux-6203977.zip;
+        sha1 = "356cac370c03460ca82166464de7ecd7da1f4a49";
       };
       
     };
   };
   
-  "emulator"."27.3.10".windows = {
+  "emulator"."28.0.25".windows = {
     
     name = "emulator";
     path = "emulator";
-    revision = "27.3.10";
+    revision = "28.0.25";
     displayName = "Android Emulator";
     archives = {
       
     };
   };
   
-  "emulator"."28.0.14".linux = {
+  "emulator"."30.0.3".linux = {
     
     name = "emulator";
     path = "emulator";
-    revision = "28.0.14";
+    revision = "30.0.3";
     displayName = "Android Emulator";
     archives = {
       linux = fetchurl {
-        url = https://dl.google.com/android/repository/emulator-linux-5092175.zip;
-        sha1 = "062ef9a1f6759481de897d6c5602d9d66e958a0b";
+        url = https://dl.google.com/android/repository/emulator-linux-6258612.zip;
+        sha1 = "a891e1532443a55c3ce9986b484effdabd842f8e";
       };
       
     };
   };
   
-  "emulator"."28.0.14".macosx = {
+  "emulator"."30.0.2".macosx = {
     
     name = "emulator";
     path = "emulator";
-    revision = "28.0.14";
+    revision = "30.0.2";
     displayName = "Android Emulator";
     archives = {
       macosx = fetchurl {
-        url = https://dl.google.com/android/repository/emulator-darwin-5092175.zip;
-        sha1 = "6dc13599bddd5c2acdb559b25201c92a801d157c";
+        url = https://dl.google.com/android/repository/emulator-darwin-6237347.zip;
+        sha1 = "702b6a050a230b3b45f667867f6fc99b3f973d9a";
       };
       
     };
   };
   
-  "emulator"."28.0.14".windows = {
-    
-    name = "emulator";
-    path = "emulator";
-    revision = "28.0.14";
-    displayName = "Android Emulator";
-    archives = {
-      
-    };
-  };
-  
   "lldb"."2.0.2558144" = {
     
     name = "lldb";
@@ -1127,6 +1276,177 @@
     };
   };
   
+  "ndk-bundle"."21.1.6210238-rc1" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "21.1.6210238-rc1";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21b-beta1-darwin-x86_64.zip;
+        sha1 = "971609f9a579ebbcb8d121a5d5aa0cba716b2d1f";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21b-beta1-linux-x86_64.zip;
+        sha1 = "cf06ed408663c11c8f4824f9370c7a900ec074dd";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."21.0.6113669" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "21.0.6113669";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-darwin-x86_64.zip;
+        sha1 = "0d50636cc0e34ed3ba540d6d5818ea0cf10f16aa";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-linux-x86_64.zip;
+        sha1 = "afc9c0b9faad222898ac8168c78ad4ccac8a1b5c";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."21.0.6011959-rc2" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "21.0.6011959-rc2";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-beta2-darwin-x86_64.zip;
+        sha1 = "34a46c3867c9d87a80895c0b8a098256052536d2";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-beta2-linux-x86_64.zip;
+        sha1 = "335f30302bee700a9a5fdfe3ae533a4963499c44";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."20.1.5948944" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "20.1.5948944";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20b-darwin-x86_64.zip;
+        sha1 = "b51290ab69cb89de1f0ba108702277bc333b38be";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20b-linux-x86_64.zip;
+        sha1 = "d903fdf077039ad9331fb6c3bee78aa46d45527b";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."20.0.5594570" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "20.0.5594570";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-darwin-x86_64.zip;
+        sha1 = "96d5f1c50452596912d1982439c514194b5751e6";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-linux-x86_64.zip;
+        sha1 = "8665fc84a1b1f0d6ab3b5fdd1e30200cc7b9adff";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."20.0.5471264-rc3" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "20.0.5471264-rc3";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta3-darwin-x86_64.zip;
+        sha1 = "665a035cadb0dd03e6502ba25c18643f6e4ede24";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta3-linux-x86_64.zip;
+        sha1 = "674d8fb0e0df8e8be1c31fa321eb176548a19ba3";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."20.0.5392854-rc2" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "20.0.5392854-rc2";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta2-darwin-x86_64.zip;
+        sha1 = "cd94191ace6b31ec9af1cc370173e16934e1cb8b";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta2-linux-x86_64.zip;
+        sha1 = "8285ae2e24a7232fd0cbfb55e955c8586ef2ee02";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."19.2.5345600" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "19.2.5345600";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19c-darwin-x86_64.zip;
+        sha1 = "f46b8193109bba8a58e0461c1a48f4534051fb25";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19c-linux-x86_64.zip;
+        sha1 = "fd94d0be6017c6acbd193eb95e09cf4b6f61b834";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."19.0.5232133" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "19.0.5232133";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19-darwin-x86_64.zip;
+        sha1 = "86c1a962601b23b8a6d3d535c93b4b0bc4f29249";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19-linux-x86_64.zip;
+        sha1 = "f02ad84cb5b6e1ff3eea9e6168037c823408c8ac";
+      };
+      
+    };
+  };
+  
   "ndk-bundle"."18.1.5063045" = {
     
     name = "ndk-bundle";
@@ -1146,6 +1466,272 @@
     };
   };
   
+  "ndk-bundle"."17.2.4988734" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "17.2.4988734";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r17c-darwin-x86_64.zip;
+        sha1 = "f97e3d7711497e3b4faf9e7b3fa0f0da90bb649c";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r17c-linux-x86_64.zip;
+        sha1 = "12cacc70c3fd2f40574015631c00f41fb8a39048";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."16.1.4479499" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "16.1.4479499";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r16b-darwin-x86_64.zip;
+        sha1 = "e51e615449b98c716cf912057e2682e75d55e2de";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r16b-linux-x86_64.zip;
+        sha1 = "42aa43aae89a50d1c66c3f9fdecd676936da6128";
+      };
+      
+    };
+  };
+  
+  "ndk"."16.1.4479499" = {
+    
+    name = "ndk";
+    path = "ndk/16.1.4479499";
+    revision = "16.1.4479499";
+    displayName = "NDK (Side by side) 16.1.4479499";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r16b-darwin-x86_64.zip;
+        sha1 = "e51e615449b98c716cf912057e2682e75d55e2de";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r16b-linux-x86_64.zip;
+        sha1 = "42aa43aae89a50d1c66c3f9fdecd676936da6128";
+      };
+      
+    };
+  };
+  
+  "ndk"."17.2.4988734" = {
+    
+    name = "ndk";
+    path = "ndk/17.2.4988734";
+    revision = "17.2.4988734";
+    displayName = "NDK (Side by side) 17.2.4988734";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r17c-darwin-x86_64.zip;
+        sha1 = "f97e3d7711497e3b4faf9e7b3fa0f0da90bb649c";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r17c-linux-x86_64.zip;
+        sha1 = "12cacc70c3fd2f40574015631c00f41fb8a39048";
+      };
+      
+    };
+  };
+  
+  "ndk"."18.1.5063045" = {
+    
+    name = "ndk";
+    path = "ndk/18.1.5063045";
+    revision = "18.1.5063045";
+    displayName = "NDK (Side by side) 18.1.5063045";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r18b-darwin-x86_64.zip;
+        sha1 = "98cb9909aa8c2dab32db188bbdc3ac6207e09440";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r18b-linux-x86_64.zip;
+        sha1 = "500679655da3a86aecf67007e8ab230ea9b4dd7b";
+      };
+      
+    };
+  };
+  
+  "ndk"."19.0.5232133" = {
+    
+    name = "ndk";
+    path = "ndk/19.0.5232133";
+    revision = "19.0.5232133";
+    displayName = "NDK (Side by side) 19.0.5232133";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19-darwin-x86_64.zip;
+        sha1 = "86c1a962601b23b8a6d3d535c93b4b0bc4f29249";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19-linux-x86_64.zip;
+        sha1 = "f02ad84cb5b6e1ff3eea9e6168037c823408c8ac";
+      };
+      
+    };
+  };
+  
+  "ndk"."19.2.5345600" = {
+    
+    name = "ndk";
+    path = "ndk/19.2.5345600";
+    revision = "19.2.5345600";
+    displayName = "NDK (Side by side) 19.2.5345600";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19c-darwin-x86_64.zip;
+        sha1 = "f46b8193109bba8a58e0461c1a48f4534051fb25";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19c-linux-x86_64.zip;
+        sha1 = "fd94d0be6017c6acbd193eb95e09cf4b6f61b834";
+      };
+      
+    };
+  };
+  
+  "ndk"."20.0.5392854-rc2" = {
+    
+    name = "ndk";
+    path = "ndk/20.0.5392854";
+    revision = "20.0.5392854-rc2";
+    displayName = "NDK (Side by side) 20.0.5392854";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta2-darwin-x86_64.zip;
+        sha1 = "cd94191ace6b31ec9af1cc370173e16934e1cb8b";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta2-linux-x86_64.zip;
+        sha1 = "8285ae2e24a7232fd0cbfb55e955c8586ef2ee02";
+      };
+      
+    };
+  };
+  
+  "ndk"."20.0.5471264-rc3" = {
+    
+    name = "ndk";
+    path = "ndk/20.0.5471264";
+    revision = "20.0.5471264-rc3";
+    displayName = "NDK (Side by side) 20.0.5471264";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta3-darwin-x86_64.zip;
+        sha1 = "665a035cadb0dd03e6502ba25c18643f6e4ede24";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta3-linux-x86_64.zip;
+        sha1 = "674d8fb0e0df8e8be1c31fa321eb176548a19ba3";
+      };
+      
+    };
+  };
+  
+  "ndk"."20.0.5594570" = {
+    
+    name = "ndk";
+    path = "ndk/20.0.5594570";
+    revision = "20.0.5594570";
+    displayName = "NDK (Side by side) 20.0.5594570";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-darwin-x86_64.zip;
+        sha1 = "96d5f1c50452596912d1982439c514194b5751e6";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-linux-x86_64.zip;
+        sha1 = "8665fc84a1b1f0d6ab3b5fdd1e30200cc7b9adff";
+      };
+      
+    };
+  };
+  
+  "ndk"."20.1.5948944" = {
+    
+    name = "ndk";
+    path = "ndk/20.1.5948944";
+    revision = "20.1.5948944";
+    displayName = "NDK (Side by side) 20.1.5948944";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20b-darwin-x86_64.zip;
+        sha1 = "b51290ab69cb89de1f0ba108702277bc333b38be";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20b-linux-x86_64.zip;
+        sha1 = "d903fdf077039ad9331fb6c3bee78aa46d45527b";
+      };
+      
+    };
+  };
+  
+  "ndk"."21.0.6011959-rc2" = {
+    
+    name = "ndk";
+    path = "ndk/21.0.6011959";
+    revision = "21.0.6011959-rc2";
+    displayName = "NDK (Side by side) 21.0.6011959";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-beta2-darwin-x86_64.zip;
+        sha1 = "34a46c3867c9d87a80895c0b8a098256052536d2";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-beta2-linux-x86_64.zip;
+        sha1 = "335f30302bee700a9a5fdfe3ae533a4963499c44";
+      };
+      
+    };
+  };
+  
+  "ndk"."21.0.6113669" = {
+    
+    name = "ndk";
+    path = "ndk/21.0.6113669";
+    revision = "21.0.6113669";
+    displayName = "NDK (Side by side) 21.0.6113669";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-darwin-x86_64.zip;
+        sha1 = "0d50636cc0e34ed3ba540d6d5818ea0cf10f16aa";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-linux-x86_64.zip;
+        sha1 = "afc9c0b9faad222898ac8168c78ad4ccac8a1b5c";
+      };
+      
+    };
+  };
+  
+  "ndk"."21.1.6210238-rc1" = {
+    
+    name = "ndk";
+    path = "ndk/21.1.6210238";
+    revision = "21.1.6210238-rc1";
+    displayName = "NDK (Side by side) 21.1.6210238";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21b-beta1-darwin-x86_64.zip;
+        sha1 = "971609f9a579ebbcb8d121a5d5aa0cba716b2d1f";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21b-beta1-linux-x86_64.zip;
+        sha1 = "cf06ed408663c11c8f4824f9370c7a900ec074dd";
+      };
+      
+    };
+  };
+  
   "patcher"."1" = {
     
     name = "patcher";
@@ -1155,27 +1741,27 @@
     archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/3534162-studio.sdk-patcher.zip.bak;
+          url = https://dl.google.com/android/repository/3534162-studio.sdk-patcher.zip;
           sha1 = "046699c5e2716ae11d77e0bad814f7f33fab261e";
         };
       
     };
   };
   
-  "platform-tools"."28.0.1" = {
+  "platform-tools"."29.0.6" = {
     
     name = "platform-tools";
     path = "platform-tools";
-    revision = "28.0.1";
+    revision = "29.0.6";
     displayName = "Android SDK Platform-Tools";
     archives = {
       macosx = fetchurl {
-        url = https://dl.google.com/android/repository/platform-tools_r28.0.1-darwin.zip;
-        sha1 = "ed1edad4a48c27655ce98d0a5821e7296e9de145";
+        url = https://dl.google.com/android/repository/platform-tools_r29.0.6-darwin.zip;
+        sha1 = "3232179dce22d8a6332018729026ed39f5d5cd0b";
       };
       linux = fetchurl {
-        url = https://dl.google.com/android/repository/platform-tools_r28.0.1-linux.zip;
-        sha1 = "74ff83bc203f01c4f04bd9316ab5a2573f023fd1";
+        url = https://dl.google.com/android/repository/platform-tools_r29.0.6-linux.zip;
+        sha1 = "e95ed28330406705d47fe96bafb589be6c1f2f23";
       };
       
     };
@@ -1513,14 +2099,13 @@
     archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/platform-29_r03.zip;
-          sha1 = "670e2e104333dae90e16ea3b615f0b63da5883ae";
+          url = https://dl.google.com/android/repository/platform-29_r04.zip;
+          sha1 = "8d644c39902038e0bd529165d5ba4f5a8607daea";
         };
       
     };
   };
-
-
+  
   "platforms"."3" = {
     
     name = "platforms";
@@ -1645,6 +2230,41 @@
     };
   };
   
+  "platforms"."R" = {
+    
+    name = "platforms";
+    path = "platforms/android-R";
+    revision = "R";
+    displayName = "Android SDK Platform R";
+    archives = {
+      
+        all = fetchurl {
+          url = https://dl.google.com/android/repository/platform-R_r01.zip;
+          sha1 = "f6ce3ef0ec8526550fc3b517bdb29051275bcd1a";
+        };
+      
+    };
+  };
+  
+  "skiaparser"."1-rc02" = {
+    
+    name = "skiaparser";
+    path = "skiaparser/1";
+    revision = "1-rc02";
+    displayName = "Skia Parser Server";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/skiaparser-6172737-linux.zip;
+        sha1 = "d2eac6deff2c257d47853251bda5528c96a41720";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/skiaparser-6172737-mac.zip;
+        sha1 = "1e3b8da7a4f5e9887479b4e4186db3cb22422c82";
+      };
+      
+    };
+  };
+  
   "sources"."14" = {
     
     name = "sources";
@@ -1885,6 +2505,22 @@
     };
   };
   
+  "sources"."29" = {
+    
+    name = "sources";
+    path = "sources/android-29";
+    revision = "29";
+    displayName = "Sources for Android 29";
+    archives = {
+      
+        all = fetchurl {
+          url = https://dl.google.com/android/repository/sources-29_r01.zip;
+          sha1 = "d0ad249e152b3a8fe3cb7c4a329453a048be29e4";
+        };
+      
+    };
+  };
+  
   "tools"."25.2.5" = {
     
     name = "tools";
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-android-tv.nix b/pkgs/development/mobile/androidenv/generated/system-images-android-tv.nix
index 1aa49545254..d700a546a24 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-android-tv.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-android-tv.nix
@@ -1,157 +1,114 @@
-
 {fetchurl}:
 
 {
-  
-
-    "21".android-tv."x86" = {
-      name = "system-image-21-android-tv-x86";
-      path = "system-images/android-21/android-tv/x86";
-      revision = "21-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-21_r03.zip;
-        sha1 = "2f8a1988188d6abfd6c6395baeb4471a034dc1e8";
-      
-      };
+  "21".android-tv."x86" = {
+    name = "system-image-21-android-tv-x86";
+    path = "system-images/android-21/android-tv/x86";
+    revision = "21-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-21_r03.zip;
+      sha1 = "2f8a1988188d6abfd6c6395baeb4471a034dc1e8";
+    };
   };
-  
-
-    "21".android-tv."armeabi-v7a" = {
-      name = "system-image-21-android-tv-armeabi-v7a";
-      path = "system-images/android-21/android-tv/armeabi-v7a";
-      revision = "21-android-tv-armeabi-v7a";
-      displayName = "Android TV ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/armeabi-v7a-21_r03.zip;
-        sha1 = "b63e28a47f11b639dd94981a458b7abfa89ac331";
-      
-      };
+  "21".android-tv."armeabi-v7a" = {
+    name = "system-image-21-android-tv-armeabi-v7a";
+    path = "system-images/android-21/android-tv/armeabi-v7a";
+    revision = "21-android-tv-armeabi-v7a";
+    displayName = "Android TV ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/armeabi-v7a-21_r03.zip;
+      sha1 = "b63e28a47f11b639dd94981a458b7abfa89ac331";
+    };
   };
-  
-
-    "22".android-tv."x86" = {
-      name = "system-image-22-android-tv-x86";
-      path = "system-images/android-22/android-tv/x86";
-      revision = "22-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-22_r03.zip;
-        sha1 = "c78efd5a155622eb490be9d326f5783993375c35";
-      
-      };
+  "22".android-tv."x86" = {
+    name = "system-image-22-android-tv-x86";
+    path = "system-images/android-22/android-tv/x86";
+    revision = "22-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-22_r03.zip;
+      sha1 = "c78efd5a155622eb490be9d326f5783993375c35";
+    };
   };
-  
-
-    "23".android-tv."x86" = {
-      name = "system-image-23-android-tv-x86";
-      path = "system-images/android-23/android-tv/x86";
-      revision = "23-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-23_r17.zip;
-        sha1 = "6d42eb8f07e1c49c000e530fdb7de894144ea19b";
-      
-      };
+  "23".android-tv."x86" = {
+    name = "system-image-23-android-tv-x86";
+    path = "system-images/android-23/android-tv/x86";
+    revision = "23-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-23_r19.zip;
+      sha1 = "47e8d6b08a337a0672f0f105bf907d39ed9457ec";
+    };
   };
-  
-
-    "23".android-tv."armeabi-v7a" = {
-      name = "system-image-23-android-tv-armeabi-v7a";
-      path = "system-images/android-23/android-tv/armeabi-v7a";
-      revision = "23-android-tv-armeabi-v7a";
-      displayName = "Android TV ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/armeabi-v7a-23_r12.zip;
-        sha1 = "bd84678ae8caf71d584f5210e866b2807e7b4b52";
-      
-      };
+  "23".android-tv."armeabi-v7a" = {
+    name = "system-image-23-android-tv-armeabi-v7a";
+    path = "system-images/android-23/android-tv/armeabi-v7a";
+    revision = "23-android-tv-armeabi-v7a";
+    displayName = "Android TV ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/armeabi-v7a-23_r12.zip;
+      sha1 = "bd84678ae8caf71d584f5210e866b2807e7b4b52";
+    };
   };
-  
-
-    "24".android-tv."x86" = {
-      name = "system-image-24-android-tv-x86";
-      path = "system-images/android-24/android-tv/x86";
-      revision = "24-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-24_r19.zip;
-        sha1 = "478e7073f9fcd588bcce89946aa632fbf302ac6a";
-      
-      };
+  "24".android-tv."x86" = {
+    name = "system-image-24-android-tv-x86";
+    path = "system-images/android-24/android-tv/x86";
+    revision = "24-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-24_r20.zip;
+      sha1 = "0b8cd98dec9ebd04376ce4f6e270193ceae8acea";
+    };
   };
-  
-
-    "25".android-tv."x86" = {
-      name = "system-image-25-android-tv-x86";
-      path = "system-images/android-25/android-tv/x86";
-      revision = "25-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-25_r13.zip;
-        sha1 = "fda1743a87331b43b1ff35cd70f3276ae0b1836d";
-      
-      };
+  "25".android-tv."x86" = {
+    name = "system-image-25-android-tv-x86";
+    path = "system-images/android-25/android-tv/x86";
+    revision = "25-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-25_r14.zip;
+      sha1 = "1c88f11683375c059803c3a7be8e880cc23a6f9a";
+    };
   };
-  
-
-    "26".android-tv."x86" = {
-      name = "system-image-26-android-tv-x86";
-      path = "system-images/android-26/android-tv/x86";
-      revision = "26-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-26_r11.zip;
-        sha1 = "5c4b0b3c0b9d04a3364956a7ba31d30c33ea57e7";
-      
-      };
+  "26".android-tv."x86" = {
+    name = "system-image-26-android-tv-x86";
+    path = "system-images/android-26/android-tv/x86";
+    revision = "26-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-26_r12.zip;
+      sha1 = "d8b12e543925a0454403d2a854996a76410ec374";
+    };
   };
-  
-
-    "27".android-tv."x86" = {
-      name = "system-image-27-android-tv-x86";
-      path = "system-images/android-27/android-tv/x86";
-      revision = "27-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-27_r06.zip;
-        sha1 = "6b69f1e95a3db3d973e19a95ab5da1adc7750d54";
-      
-      };
+  "27".android-tv."x86" = {
+    name = "system-image-27-android-tv-x86";
+    path = "system-images/android-27/android-tv/x86";
+    revision = "27-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-27_r07.zip;
+      sha1 = "5ed40e568c0d8d023c5b6c76634b22a477ed54aa";
+    };
   };
-  
-
-    "28".android-tv."x86" = {
-      name = "system-image-28-android-tv-x86";
-      path = "system-images/android-28/android-tv/x86";
-      revision = "28-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-28_r07.zip;
-        sha1 = "3ed7e51036957cf350db7fa128cb485b61cbd061";
-      
-      };
+  "28".android-tv."x86" = {
+    name = "system-image-28-android-tv-x86";
+    path = "system-images/android-28/android-tv/x86";
+    revision = "28-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-28_r08.zip;
+      sha1 = "f5f8f296dfaca7945434992761c8d47d50257c21";
+    };
+  };
+  "Q".android-tv."x86" = {
+    name = "system-image-Q-android-tv-x86";
+    path = "system-images/android-Q/android-tv/x86";
+    revision = "Q-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-Q_r01.zip;
+      sha1 = "80c66ddce0dbe53fe6fedcade230d518112fffb1";
+    };
   };
-  
-}
-  
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-android-wear-cn.nix b/pkgs/development/mobile/androidenv/generated/system-images-android-wear-cn.nix
index 372a751f41c..52fcc24bf88 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-android-wear-cn.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-android-wear-cn.nix
@@ -1,67 +1,44 @@
-
 {fetchurl}:
 
 {
-  
-
-    "25".android-wear."armeabi-v7a" = {
-      name = "system-image-25-android-wear-armeabi-v7a";
-      path = "system-images/android-25/android-wear-cn/armeabi-v7a";
-      revision = "25-android-wear-armeabi-v7a";
-      displayName = "China version of Android Wear ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear-cn/armeabi-v7a-25_r04.zip;
-        sha1 = "02d7bc86df054d1e89fe5856b3af1d2c142cab41";
-      
-      };
+  "25".android-wear."armeabi-v7a" = {
+    name = "system-image-25-android-wear-armeabi-v7a";
+    path = "system-images/android-25/android-wear-cn/armeabi-v7a";
+    revision = "25-android-wear-armeabi-v7a";
+    displayName = "China version of Android Wear ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear-cn/armeabi-v7a-25_r04.zip;
+      sha1 = "02d7bc86df054d1e89fe5856b3af1d2c142cab41";
+    };
   };
-  
-
-    "25".android-wear."x86" = {
-      name = "system-image-25-android-wear-x86";
-      path = "system-images/android-25/android-wear-cn/x86";
-      revision = "25-android-wear-x86";
-      displayName = "China version of Android Wear Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-25_r04.zip;
-        sha1 = "73eab14c7cf2f6941e1fee61e0038ead7a2c7f4d";
-      
-      };
+  "25".android-wear."x86" = {
+    name = "system-image-25-android-wear-x86";
+    path = "system-images/android-25/android-wear-cn/x86";
+    revision = "25-android-wear-x86";
+    displayName = "China version of Android Wear Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-25_r04.zip;
+      sha1 = "73eab14c7cf2f6941e1fee61e0038ead7a2c7f4d";
+    };
   };
-  
-
-    "26".android-wear."x86" = {
-      name = "system-image-26-android-wear-x86";
-      path = "system-images/android-26/android-wear-cn/x86";
-      revision = "26-android-wear-x86";
-      displayName = "China version of Android Wear Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-26_r04.zip;
-        sha1 = "fdc8a313f889a2d6522de1fbc00ee9e13547d096";
-      
-      };
+  "26".android-wear."x86" = {
+    name = "system-image-26-android-wear-x86";
+    path = "system-images/android-26/android-wear-cn/x86";
+    revision = "26-android-wear-x86";
+    displayName = "China version of Android Wear Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-26_r04.zip;
+      sha1 = "fdc8a313f889a2d6522de1fbc00ee9e13547d096";
+    };
   };
-  
-
-    "28".android-wear."x86" = {
-      name = "system-image-28-android-wear-x86";
-      path = "system-images/android-P/android-wear-cn/x86";
-      revision = "28-android-wear-x86";
-      displayName = "China version of Wear OS Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-P_r02.zip;
-        sha1 = "a61a2e453a11f77ab15b3e0bf1e017e0bb9d1bcc";
-      
-      };
+  "28".android-wear."x86" = {
+    name = "system-image-28-android-wear-x86";
+    path = "system-images/android-28/android-wear-cn/x86";
+    revision = "28-android-wear-x86";
+    displayName = "China version of Wear OS Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-28_r03.zip;
+      sha1 = "2099d87709c5e064273925dbf2cf1fd081bf0262";
+    };
   };
-  
-}
-  
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-android-wear.nix b/pkgs/development/mobile/androidenv/generated/system-images-android-wear.nix
index 0c45a1162fe..a2a1490d4ae 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-android-wear.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-android-wear.nix
@@ -1,97 +1,64 @@
-
 {fetchurl}:
 
 {
-  
-
-    "23".android-wear."armeabi-v7a" = {
-      name = "system-image-23-android-wear-armeabi-v7a";
-      path = "system-images/android-23/android-wear/armeabi-v7a";
-      revision = "23-android-wear-armeabi-v7a";
-      displayName = "Android Wear ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/armeabi-v7a-23_r06.zip;
-        sha1 = "0df5d34b1cdaaaa3805a2f06bb889901eabe2e71";
-      
-      };
+  "23".android-wear."armeabi-v7a" = {
+    name = "system-image-23-android-wear-armeabi-v7a";
+    path = "system-images/android-23/android-wear/armeabi-v7a";
+    revision = "23-android-wear-armeabi-v7a";
+    displayName = "Android Wear ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/armeabi-v7a-23_r06.zip;
+      sha1 = "0df5d34b1cdaaaa3805a2f06bb889901eabe2e71";
+    };
   };
-  
-
-    "23".android-wear."x86" = {
-      name = "system-image-23-android-wear-x86";
-      path = "system-images/android-23/android-wear/x86";
-      revision = "23-android-wear-x86";
-      displayName = "Android Wear Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/x86-23_r06.zip;
-        sha1 = "3b15c123f3f71459d5b60c1714d49c5d90a5525e";
-      
-      };
+  "23".android-wear."x86" = {
+    name = "system-image-23-android-wear-x86";
+    path = "system-images/android-23/android-wear/x86";
+    revision = "23-android-wear-x86";
+    displayName = "Android Wear Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/x86-23_r06.zip;
+      sha1 = "3b15c123f3f71459d5b60c1714d49c5d90a5525e";
+    };
   };
-  
-
-    "25".android-wear."armeabi-v7a" = {
-      name = "system-image-25-android-wear-armeabi-v7a";
-      path = "system-images/android-25/android-wear/armeabi-v7a";
-      revision = "25-android-wear-armeabi-v7a";
-      displayName = "Android Wear ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/armeabi-v7a-25_r03.zip;
-        sha1 = "76d3568a4e08023047af7d13025a35c9bf1d7e5c";
-      
-      };
+  "25".android-wear."armeabi-v7a" = {
+    name = "system-image-25-android-wear-armeabi-v7a";
+    path = "system-images/android-25/android-wear/armeabi-v7a";
+    revision = "25-android-wear-armeabi-v7a";
+    displayName = "Android Wear ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/armeabi-v7a-25_r03.zip;
+      sha1 = "76d3568a4e08023047af7d13025a35c9bf1d7e5c";
+    };
   };
-  
-
-    "25".android-wear."x86" = {
-      name = "system-image-25-android-wear-x86";
-      path = "system-images/android-25/android-wear/x86";
-      revision = "25-android-wear-x86";
-      displayName = "Android Wear Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/x86-25_r03.zip;
-        sha1 = "693fce7b487a65491a4e88e9f740959688c9dbe6";
-      
-      };
+  "25".android-wear."x86" = {
+    name = "system-image-25-android-wear-x86";
+    path = "system-images/android-25/android-wear/x86";
+    revision = "25-android-wear-x86";
+    displayName = "Android Wear Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/x86-25_r03.zip;
+      sha1 = "693fce7b487a65491a4e88e9f740959688c9dbe6";
+    };
   };
-  
-
-    "26".android-wear."x86" = {
-      name = "system-image-26-android-wear-x86";
-      path = "system-images/android-26/android-wear/x86";
-      revision = "26-android-wear-x86";
-      displayName = "Android Wear Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/x86-26_r04.zip;
-        sha1 = "fbffa91b936ca18fcc1e0bab2b52a8b0835cbb1c";
-      
-      };
+  "26".android-wear."x86" = {
+    name = "system-image-26-android-wear-x86";
+    path = "system-images/android-26/android-wear/x86";
+    revision = "26-android-wear-x86";
+    displayName = "Android Wear Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/x86-26_r04.zip;
+      sha1 = "fbffa91b936ca18fcc1e0bab2b52a8b0835cbb1c";
+    };
   };
-  
-
-    "28".android-wear."x86" = {
-      name = "system-image-28-android-wear-x86";
-      path = "system-images/android-P/android-wear/x86";
-      revision = "28-android-wear-x86";
-      displayName = "Wear OS Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/x86-P_r02.zip;
-        sha1 = "cd0d3a56e114dbb0a2a77d58942d344db464b514";
-      
-      };
+  "28".android-wear."x86" = {
+    name = "system-image-28-android-wear-x86";
+    path = "system-images/android-28/android-wear/x86";
+    revision = "28-android-wear-x86";
+    displayName = "Wear OS Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/x86-28_r03.zip;
+      sha1 = "b80bd53ab69f19441714bff2e4d55931e6d3f7be";
+    };
   };
-  
-}
-  
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-android.nix b/pkgs/development/mobile/androidenv/generated/system-images-android.nix
index 915cceec546..74efe60be92 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-android.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-android.nix
@@ -1,547 +1,408 @@
-
 {fetchurl}:
 
 {
-  
-
-    "10".default."armeabi-v7a" = {
-      name = "system-image-10-default-armeabi-v7a";
-      path = "system-images/android-10/default/armeabi-v7a";
-      revision = "10-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armv7-10_r04.zip;
-        sha1 = "54680383118eb5c95a11e1cc2a14aa572c86ee69";
-      
-      };
-  };
-  
-
-    "14".default."armeabi-v7a" = {
-      name = "system-image-14-default-armeabi-v7a";
-      path = "system-images/android-14/default/armeabi-v7a";
-      revision = "14-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/sysimg_armv7a-14_r02.zip;
-        sha1 = "d8991b0c06b18d7d6ed4169d67460ee1add6661b";
-      
-      };
-  };
-  
-
-    "15".default."armeabi-v7a" = {
-      name = "system-image-15-default-armeabi-v7a";
-      path = "system-images/android-15/default/armeabi-v7a";
-      revision = "15-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-15_r04.zip;
-        sha1 = "363223bd62f5afc0b2bd760b54ce9d26b31eacf1";
-      
-      };
-  };
-  
-
-    "16".default."armeabi-v7a" = {
-      name = "system-image-16-default-armeabi-v7a";
-      path = "system-images/android-16/default/armeabi-v7a";
-      revision = "16-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/sysimg_armv7a-16_r04.zip;
-        sha1 = "39c093ea755098f0ee79f607be7df9e54ba4943f";
-      
-      };
-  };
-  
-
-    "17".default."armeabi-v7a" = {
-      name = "system-image-17-default-armeabi-v7a";
-      path = "system-images/android-17/default/armeabi-v7a";
-      revision = "17-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-17_r05.zip;
-        sha1 = "7460e8110f4a87f9644f1bdb5511a66872d50fd9";
-      
-      };
-  };
-  
-
-    "18".default."armeabi-v7a" = {
-      name = "system-image-18-default-armeabi-v7a";
-      path = "system-images/android-18/default/armeabi-v7a";
-      revision = "18-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-18_r04.zip;
-        sha1 = "0bf34ecf4ddd53f6b1b7fe7dfa12f2887c17e642";
-      
-      };
-  };
-  
-
-    "19".default."armeabi-v7a" = {
-      name = "system-image-19-default-armeabi-v7a";
-      path = "system-images/android-19/default/armeabi-v7a";
-      revision = "19-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-19_r05.zip;
-        sha1 = "d1a5fd4f2e1c013c3d3d9bfe7e9db908c3ed56fa";
-      
-      };
-  };
-  
-
-    "21".default."armeabi-v7a" = {
-      name = "system-image-21-default-armeabi-v7a";
-      path = "system-images/android-21/default/armeabi-v7a";
-      revision = "21-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-21_r04.zip;
-        sha1 = "8c606f81306564b65e41303d2603e4c42ded0d10";
-      
-      };
-  };
-  
-
-    "22".default."armeabi-v7a" = {
-      name = "system-image-22-default-armeabi-v7a";
-      path = "system-images/android-22/default/armeabi-v7a";
-      revision = "22-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-22_r02.zip;
-        sha1 = "2114ec015dbf3a16cbcb4f63e8a84a1b206a07a1";
-      
-      };
-  };
-  
-
-    "23".default."armeabi-v7a" = {
-      name = "system-image-23-default-armeabi-v7a";
-      path = "system-images/android-23/default/armeabi-v7a";
-      revision = "23-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-23_r06.zip;
-        sha1 = "7cf2ad756e54a3acfd81064b63cb0cb9dff2798d";
-      
-      };
-  };
-  
-
-    "24".default."armeabi-v7a" = {
-      name = "system-image-24-default-armeabi-v7a";
-      path = "system-images/android-24/default/armeabi-v7a";
-      revision = "24-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-24_r07.zip;
-        sha1 = "3454546b4eed2d6c3dd06d47757d6da9f4176033";
-      
-      };
-  };
-  
-
-    "24".default."arm64-v8a" = {
-      name = "system-image-24-default-arm64-v8a";
-      path = "system-images/android-24/default/arm64-v8a";
-      revision = "24-default-arm64-v8a";
-      displayName = "ARM 64 v8a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/arm64-v8a-24_r07.zip;
-        sha1 = "e8ab2e49e4efe4b064232b33b5eeaded61437d7f";
-      
-      };
-  };
-  
-
-    "16".default."mips" = {
-      name = "system-image-16-default-mips";
-      path = "system-images/android-16/default/mips";
-      revision = "16-default-mips";
-      displayName = "MIPS System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/sysimg_mips-16_r04.zip;
-        sha1 = "67943c54fb3943943ffeb05fdd39c0b753681f6e";
-      
-      };
-  };
-  
-
-    "17".default."mips" = {
-      name = "system-image-17-default-mips";
-      path = "system-images/android-17/default/mips";
-      revision = "17-default-mips";
-      displayName = "MIPS System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/sysimg_mips-17_r01.zip;
-        sha1 = "f0c6e153bd584c29e51b5c9723cfbf30f996a05d";
-      
-      };
-  };
-  
-
-    "10".default."x86" = {
-      name = "system-image-10-default-x86";
-      path = "system-images/android-10/default/x86";
-      revision = "10-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-10_r04.zip;
-        sha1 = "655ffc5cc89dd45a3aca154b254009016e473aeb";
-      
-      };
-  };
-  
-
-    "15".default."x86" = {
-      name = "system-image-15-default-x86";
-      path = "system-images/android-15/default/x86";
-      revision = "15-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-15_r04.zip;
-        sha1 = "e45c728b64881c0e86529a8f7ea9c103a3cd14c1";
-      
-      };
-  };
-  
-
-    "16".default."x86" = {
-      name = "system-image-16-default-x86";
-      path = "system-images/android-16/default/x86";
-      revision = "16-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-16_r06.zip;
-        sha1 = "bf1bf8c5591346118d2235da1ad20e7be8a3e9cd";
-      
-      };
-  };
-  
-
-    "17".default."x86" = {
-      name = "system-image-17-default-x86";
-      path = "system-images/android-17/default/x86";
-      revision = "17-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-17_r04.zip;
-        sha1 = "03c6d022ab2dcbbcf655d78ba5ccb0431cadcaec";
-      
-      };
-  };
-  
-
-    "18".default."x86" = {
-      name = "system-image-18-default-x86";
-      path = "system-images/android-18/default/x86";
-      revision = "18-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-18_r03.zip;
-        sha1 = "03a0cb23465c3de15215934a1dbc9715b56e9458";
-      
-      };
-  };
-  
-
-    "19".default."x86" = {
-      name = "system-image-19-default-x86";
-      path = "system-images/android-19/default/x86";
-      revision = "19-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-19_r06.zip;
-        sha1 = "2ac82153aae97f7eae4c5a0761224fe04321d03d";
-      
-      };
-  };
-  
-
-    "21".default."x86" = {
-      name = "system-image-21-default-x86";
-      path = "system-images/android-21/default/x86";
-      revision = "21-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-21_r05.zip;
-        sha1 = "00f0eb0a1003efe3316347f762e20a85d8749cff";
-      
-      };
-  };
-  
-
-    "22".default."x86" = {
-      name = "system-image-22-default-x86";
-      path = "system-images/android-22/default/x86";
-      revision = "22-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-22_r06.zip;
-        sha1 = "e33e2a6cc3f1cc56b2019dbef3917d2eeb26f54e";
-      
-      };
-  };
-  
-
-    "23".default."x86" = {
-      name = "system-image-23-default-x86";
-      path = "system-images/android-23/default/x86";
-      revision = "23-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-23_r10.zip;
-        sha1 = "f6c3e3dd7bd951454795aa75c3a145fd05ac25bb";
-      
-      };
-  };
-  
-
-    "24".default."x86" = {
-      name = "system-image-24-default-x86";
-      path = "system-images/android-24/default/x86";
-      revision = "24-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-24_r08.zip;
-        sha1 = "c1cae7634b0216c0b5990f2c144eb8ca948e3511";
-      
-      };
-  };
-  
-
-    "25".default."x86" = {
-      name = "system-image-25-default-x86";
-      path = "system-images/android-25/default/x86";
-      revision = "25-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-25_r01.zip;
-        sha1 = "78ce7eb1387d598685633b9f7cbb300c3d3aeb5f";
-      
-      };
-  };
-  
-
-    "26".default."x86" = {
-      name = "system-image-26-default-x86";
-      path = "system-images/android-26/default/x86";
-      revision = "26-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-26_r01.zip;
-        sha1 = "e613d6e0da668e30daf547f3c6627a6352846f90";
-      
-      };
-  };
-  
-
-    "27".default."x86" = {
-      name = "system-image-27-default-x86";
-      path = "system-images/android-27/default/x86";
-      revision = "27-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-27_r01.zip;
-        sha1 = "4ec990fac7b62958decd12e18a4cd389dfe7c582";
-      
-      };
-  };
-  
-
-    "28".default."x86" = {
-      name = "system-image-28-default-x86";
-      path = "system-images/android-28/default/x86";
-      revision = "28-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-28_r04.zip;
-        sha1 = "ce03c42d80c0fc6dc47f6455dbee7aa275d02780";
-      
-      };
-  };
-  
-
-    "21".default."x86_64" = {
-      name = "system-image-21-default-x86_64";
-      path = "system-images/android-21/default/x86_64";
-      revision = "21-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-21_r05.zip;
-        sha1 = "9078a095825a69e5e215713f0866c83cef65a342";
-      
-      };
-  };
-  
-
-    "22".default."x86_64" = {
-      name = "system-image-22-default-x86_64";
-      path = "system-images/android-22/default/x86_64";
-      revision = "22-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-22_r06.zip;
-        sha1 = "5db3b27f78cd9c4c5092b1cad5a5dd479fb5b2e4";
-      
-      };
-  };
-  
-
-    "23".default."x86_64" = {
-      name = "system-image-23-default-x86_64";
-      path = "system-images/android-23/default/x86_64";
-      revision = "23-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-23_r10.zip;
-        sha1 = "7cbc291483ca07dc67b71268c5f08a5755f50f51";
-      
-      };
-  };
-  
-
-    "24".default."x86_64" = {
-      name = "system-image-24-default-x86_64";
-      path = "system-images/android-24/default/x86_64";
-      revision = "24-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-24_r08.zip;
-        sha1 = "f6559e1949a5879f31a9662f4f0e50ad60181684";
-      
-      };
-  };
-  
-
-    "25".default."x86_64" = {
-      name = "system-image-25-default-x86_64";
-      path = "system-images/android-25/default/x86_64";
-      revision = "25-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-25_r01.zip;
-        sha1 = "7093d7b39216020226ff430a3b7b81c94d31ad37";
-      
-      };
-  };
-  
-
-    "26".default."x86_64" = {
-      name = "system-image-26-default-x86_64";
-      path = "system-images/android-26/default/x86_64";
-      revision = "26-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-26_r01.zip;
-        sha1 = "432f149c048bffce7f9de526ec65b336daf7a0a3";
-      
-      };
-  };
-  
-
-    "27".default."x86_64" = {
-      name = "system-image-27-default-x86_64";
-      path = "system-images/android-27/default/x86_64";
-      revision = "27-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-27_r01.zip;
-        sha1 = "2878261011a59ca3de29dc5b457a495fdb268d60";
-      
-      };
-  };
-  
-
-    "28".default."x86_64" = {
-      name = "system-image-28-default-x86_64";
-      path = "system-images/android-28/default/x86_64";
-      revision = "28-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-28_r04.zip;
-        sha1 = "d47a85c8f4e9fd57df97814ad8884eeb0f3a0ef0";
-      
-      };
-  };
-  
-}
-  
\ No newline at end of file
+  "10".default."armeabi-v7a" = {
+    name = "system-image-10-default-armeabi-v7a";
+    path = "system-images/android-10/default/armeabi-v7a";
+    revision = "10-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-10_r05.zip;
+      sha1 = "8537616a7add47cce24c60f18bc2429e3dc90ae3";
+    };
+  };
+  "14".default."armeabi-v7a" = {
+    name = "system-image-14-default-armeabi-v7a";
+    path = "system-images/android-14/default/armeabi-v7a";
+    revision = "14-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/sysimg_armv7a-14_r02.zip;
+      sha1 = "d8991b0c06b18d7d6ed4169d67460ee1add6661b";
+    };
+  };
+  "15".default."armeabi-v7a" = {
+    name = "system-image-15-default-armeabi-v7a";
+    path = "system-images/android-15/default/armeabi-v7a";
+    revision = "15-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-15_r05.zip;
+      sha1 = "03d7ed95a9d3b107e3f2e5b166d017ea12529e70";
+    };
+  };
+  "16".default."armeabi-v7a" = {
+    name = "system-image-16-default-armeabi-v7a";
+    path = "system-images/android-16/default/armeabi-v7a";
+    revision = "16-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-16_r06.zip;
+      sha1 = "69b944b0d5a18c8563fa80d7d229af64890f724e";
+    };
+  };
+  "17".default."armeabi-v7a" = {
+    name = "system-image-17-default-armeabi-v7a";
+    path = "system-images/android-17/default/armeabi-v7a";
+    revision = "17-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-17_r06.zip;
+      sha1 = "a18a3fd0958ec4ef52507f58e414fc5c7dfd59d6";
+    };
+  };
+  "18".default."armeabi-v7a" = {
+    name = "system-image-18-default-armeabi-v7a";
+    path = "system-images/android-18/default/armeabi-v7a";
+    revision = "18-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-18_r05.zip;
+      sha1 = "580b583720f7de671040d5917c8c9db0c7aa03fd";
+    };
+  };
+  "19".default."armeabi-v7a" = {
+    name = "system-image-19-default-armeabi-v7a";
+    path = "system-images/android-19/default/armeabi-v7a";
+    revision = "19-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-19_r05.zip;
+      sha1 = "d1a5fd4f2e1c013c3d3d9bfe7e9db908c3ed56fa";
+    };
+  };
+  "21".default."armeabi-v7a" = {
+    name = "system-image-21-default-armeabi-v7a";
+    path = "system-images/android-21/default/armeabi-v7a";
+    revision = "21-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-21_r04.zip;
+      sha1 = "8c606f81306564b65e41303d2603e4c42ded0d10";
+    };
+  };
+  "22".default."armeabi-v7a" = {
+    name = "system-image-22-default-armeabi-v7a";
+    path = "system-images/android-22/default/armeabi-v7a";
+    revision = "22-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-22_r02.zip;
+      sha1 = "2114ec015dbf3a16cbcb4f63e8a84a1b206a07a1";
+    };
+  };
+  "23".default."armeabi-v7a" = {
+    name = "system-image-23-default-armeabi-v7a";
+    path = "system-images/android-23/default/armeabi-v7a";
+    revision = "23-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-23_r06.zip;
+      sha1 = "7cf2ad756e54a3acfd81064b63cb0cb9dff2798d";
+    };
+  };
+  "24".default."armeabi-v7a" = {
+    name = "system-image-24-default-armeabi-v7a";
+    path = "system-images/android-24/default/armeabi-v7a";
+    revision = "24-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-24_r07.zip;
+      sha1 = "3454546b4eed2d6c3dd06d47757d6da9f4176033";
+    };
+  };
+  "24".default."arm64-v8a" = {
+    name = "system-image-24-default-arm64-v8a";
+    path = "system-images/android-24/default/arm64-v8a";
+    revision = "24-default-arm64-v8a";
+    displayName = "ARM 64 v8a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/arm64-v8a-24_r07.zip;
+      sha1 = "e8ab2e49e4efe4b064232b33b5eeaded61437d7f";
+    };
+  };
+  "16".default."mips" = {
+    name = "system-image-16-default-mips";
+    path = "system-images/android-16/default/mips";
+    revision = "16-default-mips";
+    displayName = "MIPS System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/sysimg_mips-16_r04.zip;
+      sha1 = "67943c54fb3943943ffeb05fdd39c0b753681f6e";
+    };
+  };
+  "17".default."mips" = {
+    name = "system-image-17-default-mips";
+    path = "system-images/android-17/default/mips";
+    revision = "17-default-mips";
+    displayName = "MIPS System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/sysimg_mips-17_r01.zip;
+      sha1 = "f0c6e153bd584c29e51b5c9723cfbf30f996a05d";
+    };
+  };
+  "10".default."x86" = {
+    name = "system-image-10-default-x86";
+    path = "system-images/android-10/default/x86";
+    revision = "10-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-10_r05.zip;
+      sha1 = "a166d5ccbb165e1dd5464fbfeec30a61f77790d8";
+    };
+  };
+  "15".default."x86" = {
+    name = "system-image-15-default-x86";
+    path = "system-images/android-15/default/x86";
+    revision = "15-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-15_r05.zip;
+      sha1 = "c387e0efed2cdc610e5944eea67b7b692d03760c";
+    };
+  };
+  "16".default."x86" = {
+    name = "system-image-16-default-x86";
+    path = "system-images/android-16/default/x86";
+    revision = "16-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-16_r06.zip;
+      sha1 = "bf1bf8c5591346118d2235da1ad20e7be8a3e9cd";
+    };
+  };
+  "17".default."x86" = {
+    name = "system-image-17-default-x86";
+    path = "system-images/android-17/default/x86";
+    revision = "17-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-17_r04.zip;
+      sha1 = "03c6d022ab2dcbbcf655d78ba5ccb0431cadcaec";
+    };
+  };
+  "18".default."x86" = {
+    name = "system-image-18-default-x86";
+    path = "system-images/android-18/default/x86";
+    revision = "18-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-18_r04.zip;
+      sha1 = "7a4ced4d9b0ab48047825491b4072dc2eb9b610e";
+    };
+  };
+  "19".default."x86" = {
+    name = "system-image-19-default-x86";
+    path = "system-images/android-19/default/x86";
+    revision = "19-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-19_r06.zip;
+      sha1 = "2ac82153aae97f7eae4c5a0761224fe04321d03d";
+    };
+  };
+  "21".default."x86" = {
+    name = "system-image-21-default-x86";
+    path = "system-images/android-21/default/x86";
+    revision = "21-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-21_r05.zip;
+      sha1 = "00f0eb0a1003efe3316347f762e20a85d8749cff";
+    };
+  };
+  "22".default."x86" = {
+    name = "system-image-22-default-x86";
+    path = "system-images/android-22/default/x86";
+    revision = "22-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-22_r06.zip;
+      sha1 = "e33e2a6cc3f1cc56b2019dbef3917d2eeb26f54e";
+    };
+  };
+  "23".default."x86" = {
+    name = "system-image-23-default-x86";
+    path = "system-images/android-23/default/x86";
+    revision = "23-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-23_r10.zip;
+      sha1 = "f6c3e3dd7bd951454795aa75c3a145fd05ac25bb";
+    };
+  };
+  "24".default."x86" = {
+    name = "system-image-24-default-x86";
+    path = "system-images/android-24/default/x86";
+    revision = "24-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-24_r08.zip;
+      sha1 = "c1cae7634b0216c0b5990f2c144eb8ca948e3511";
+    };
+  };
+  "25".default."x86" = {
+    name = "system-image-25-default-x86";
+    path = "system-images/android-25/default/x86";
+    revision = "25-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-25_r01.zip;
+      sha1 = "78ce7eb1387d598685633b9f7cbb300c3d3aeb5f";
+    };
+  };
+  "26".default."x86" = {
+    name = "system-image-26-default-x86";
+    path = "system-images/android-26/default/x86";
+    revision = "26-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-26_r01.zip;
+      sha1 = "e613d6e0da668e30daf547f3c6627a6352846f90";
+    };
+  };
+  "27".default."x86" = {
+    name = "system-image-27-default-x86";
+    path = "system-images/android-27/default/x86";
+    revision = "27-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-27_r01.zip;
+      sha1 = "4ec990fac7b62958decd12e18a4cd389dfe7c582";
+    };
+  };
+  "28".default."x86" = {
+    name = "system-image-28-default-x86";
+    path = "system-images/android-28/default/x86";
+    revision = "28-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-28_r04.zip;
+      sha1 = "ce03c42d80c0fc6dc47f6455dbee7aa275d02780";
+    };
+  };
+  "29".default."x86" = {
+    name = "system-image-29-default-x86";
+    path = "system-images/android-29/default/x86";
+    revision = "29-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-29_r07-windows.zip;
+      sha1 = "e0e6504734f601c28350528d39a4b17b3e0f82dc";
+    };
+  };
+  "29".default."x86" = {
+    name = "system-image-29-default-x86";
+    path = "system-images/android-29/default/x86";
+    revision = "29-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-29_r07-darwin.zip;
+      sha1 = "e0e6504734f601c28350528d39a4b17b3e0f82dc";
+      url = https://dl.google.com/android/repository/sys-img/android/x86-29_r07-linux.zip;
+      sha1 = "e0e6504734f601c28350528d39a4b17b3e0f82dc";
+    };
+  };
+  "21".default."x86_64" = {
+    name = "system-image-21-default-x86_64";
+    path = "system-images/android-21/default/x86_64";
+    revision = "21-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-21_r05.zip;
+      sha1 = "9078a095825a69e5e215713f0866c83cef65a342";
+    };
+  };
+  "22".default."x86_64" = {
+    name = "system-image-22-default-x86_64";
+    path = "system-images/android-22/default/x86_64";
+    revision = "22-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-22_r06.zip;
+      sha1 = "5db3b27f78cd9c4c5092b1cad5a5dd479fb5b2e4";
+    };
+  };
+  "23".default."x86_64" = {
+    name = "system-image-23-default-x86_64";
+    path = "system-images/android-23/default/x86_64";
+    revision = "23-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-23_r10.zip;
+      sha1 = "7cbc291483ca07dc67b71268c5f08a5755f50f51";
+    };
+  };
+  "24".default."x86_64" = {
+    name = "system-image-24-default-x86_64";
+    path = "system-images/android-24/default/x86_64";
+    revision = "24-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-24_r08.zip;
+      sha1 = "f6559e1949a5879f31a9662f4f0e50ad60181684";
+    };
+  };
+  "25".default."x86_64" = {
+    name = "system-image-25-default-x86_64";
+    path = "system-images/android-25/default/x86_64";
+    revision = "25-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-25_r01.zip;
+      sha1 = "7093d7b39216020226ff430a3b7b81c94d31ad37";
+    };
+  };
+  "26".default."x86_64" = {
+    name = "system-image-26-default-x86_64";
+    path = "system-images/android-26/default/x86_64";
+    revision = "26-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-26_r01.zip;
+      sha1 = "432f149c048bffce7f9de526ec65b336daf7a0a3";
+    };
+  };
+  "27".default."x86_64" = {
+    name = "system-image-27-default-x86_64";
+    path = "system-images/android-27/default/x86_64";
+    revision = "27-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-27_r01.zip;
+      sha1 = "2878261011a59ca3de29dc5b457a495fdb268d60";
+    };
+  };
+  "28".default."x86_64" = {
+    name = "system-image-28-default-x86_64";
+    path = "system-images/android-28/default/x86_64";
+    revision = "28-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-28_r04.zip;
+      sha1 = "d47a85c8f4e9fd57df97814ad8884eeb0f3a0ef0";
+    };
+  };
+  "29".default."x86_64" = {
+    name = "system-image-29-default-x86_64";
+    path = "system-images/android-29/default/x86_64";
+    revision = "29-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-29_r07-windows.zip;
+      sha1 = "c8e307b885a68f71b4889a70bffea729fc4ecbfa";
+    };
+  };
+  "29".default."x86_64" = {
+    name = "system-image-29-default-x86_64";
+    path = "system-images/android-29/default/x86_64";
+    revision = "29-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-29_r07-darwin.zip;
+      sha1 = "c8e307b885a68f71b4889a70bffea729fc4ecbfa";
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-29_r07-linux.zip;
+      sha1 = "c8e307b885a68f71b4889a70bffea729fc4ecbfa";
+    };
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-google_apis.nix b/pkgs/development/mobile/androidenv/generated/system-images-google_apis.nix
index 3b0303b86b4..302d0b9063c 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-google_apis.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-google_apis.nix
@@ -1,502 +1,394 @@
-
 {fetchurl}:
 
 {
-  
-
-    "10".google_apis."armeabi-v7a" = {
-      name = "system-image-10-google_apis-armeabi-v7a";
-      path = "system-images/android-10/google_apis/armeabi-v7a";
-      revision = "10-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-10_r05.zip;
-        sha1 = "cb60221d4ff6686ae96560970d48d9aa60e80b3f";
-      
-      };
-  };
-  
-
-    "10".google_apis."x86" = {
-      name = "system-image-10-google_apis-x86";
-      path = "system-images/android-10/google_apis/x86";
-      revision = "10-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-10_r05.zip;
-        sha1 = "b8e8a4ab26890c4a395fb796bf9cb7ceb51c880e";
-      
-      };
-  };
-  
-
-    "15".google_apis."armeabi-v7a" = {
-      name = "system-image-15-google_apis-armeabi-v7a";
-      path = "system-images/android-15/google_apis/armeabi-v7a";
-      revision = "15-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-15_r05.zip;
-        sha1 = "1ec4e6f9014fcbe694511280f5b497aaf7dd750f";
-      
-      };
-  };
-  
-
-    "15".google_apis."x86" = {
-      name = "system-image-15-google_apis-x86";
-      path = "system-images/android-15/google_apis/x86";
-      revision = "15-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-15_r05.zip;
-        sha1 = "f2b98baaf847ff5b82b82fdc6c396b229067307b";
-      
-      };
-  };
-  
-
-    "16".google_apis."x86" = {
-      name = "system-image-16-google_apis-x86";
-      path = "system-images/android-16/google_apis/x86";
-      revision = "16-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-16_r05.zip;
-        sha1 = "7edc5c0836fa32f8d453788c002ca0ee1bc5a0a2";
-      
-      };
-  };
-  
-
-    "17".google_apis."armeabi-v7a" = {
-      name = "system-image-17-google_apis-armeabi-v7a";
-      path = "system-images/android-17/google_apis/armeabi-v7a";
-      revision = "17-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-17_r05.zip;
-        sha1 = "c990f2a81c24a61f9f1da5d5d205f2924ce548ae";
-      
-      };
-  };
-  
-
-    "17".google_apis."x86" = {
-      name = "system-image-17-google_apis-x86";
-      path = "system-images/android-17/google_apis/x86";
-      revision = "17-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-17_r06.zip;
-        sha1 = "7864c34faf0402b8923d8c6e609a5339f74cc8d6";
-      
-      };
-  };
-  
-
-    "18".google_apis."armeabi-v7a" = {
-      name = "system-image-18-google_apis-armeabi-v7a";
-      path = "system-images/android-18/google_apis/armeabi-v7a";
-      revision = "18-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-18_r05.zip;
-        sha1 = "c4e69a96d4584f7e311e358fe4ad0e5d1bf1605b";
-      
-      };
-  };
-  
-
-    "18".google_apis."x86" = {
-      name = "system-image-18-google_apis-x86";
-      path = "system-images/android-18/google_apis/x86";
-      revision = "18-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-18_r05.zip;
-        sha1 = "2b34741693eba9419cb6bf1a467596783234d37a";
-      
-      };
-  };
-  
-
-    "19".google_apis."x86" = {
-      name = "system-image-19-google_apis-x86";
-      path = "system-images/android-19/google_apis/x86";
-      revision = "19-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-19_r37.zip;
-        sha1 = "f02473420a166b3df7821d8ae5a623524058b4b8";
-      
-      };
-  };
-  
-
-    "19".google_apis."armeabi-v7a" = {
-      name = "system-image-19-google_apis-armeabi-v7a";
-      path = "system-images/android-19/google_apis/armeabi-v7a";
-      revision = "19-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-19_r37.zip;
-        sha1 = "b388072493ed010fe2ddf607c8c4239f54ce1a0b";
-      
-      };
-  };
-  
-
-    "21".google_apis."x86" = {
-      name = "system-image-21-google_apis-x86";
-      path = "system-images/android-21/google_apis/x86";
-      revision = "21-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-21_r29.zip;
-        sha1 = "1f5ac49e0ae603b0bfeda0c94cd7e0b850b9b50e";
-      
-      };
-  };
-  
-
-    "21".google_apis."x86_64" = {
-      name = "system-image-21-google_apis-x86_64";
-      path = "system-images/android-21/google_apis/x86_64";
-      revision = "21-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-21_r29.zip;
-        sha1 = "74ac387aec286fcee01259dcccd4762cbdb4b517";
-      
-      };
-  };
-  
-
-    "21".google_apis."armeabi-v7a" = {
-      name = "system-image-21-google_apis-armeabi-v7a";
-      path = "system-images/android-21/google_apis/armeabi-v7a";
-      revision = "21-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-21_r29.zip;
-        sha1 = "1d0c428ac7f5eb49c7389ad0beb09f07cb989b45";
-      
-      };
-  };
-  
-
-    "22".google_apis."x86" = {
-      name = "system-image-22-google_apis-x86";
-      path = "system-images/android-22/google_apis/x86";
-      revision = "22-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-22_r23.zip;
-        sha1 = "4ceda9ffd69d5b827a8cc2f56ccac62e72982b33";
-      
-      };
-  };
-  
-
-    "22".google_apis."armeabi-v7a" = {
-      name = "system-image-22-google_apis-armeabi-v7a";
-      path = "system-images/android-22/google_apis/armeabi-v7a";
-      revision = "22-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-22_r23.zip;
-        sha1 = "0a11bdffa6132303baf87e4a531987a74d5f0792";
-      
-      };
-  };
-  
-
-    "22".google_apis."x86_64" = {
-      name = "system-image-22-google_apis-x86_64";
-      path = "system-images/android-22/google_apis/x86_64";
-      revision = "22-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-22_r23.zip;
-        sha1 = "1dfee1c382574c18e3aa2bc2047793169f3ab125";
-      
-      };
-  };
-  
-
-    "23".google_apis."x86" = {
-      name = "system-image-23-google_apis-x86";
-      path = "system-images/android-23/google_apis/x86";
-      revision = "23-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-23_r30.zip;
-        sha1 = "1b8fd61e7e7c76d8c05a41b19370edfb015ed240";
-      
-      };
-  };
-  
-
-    "23".google_apis."x86_64" = {
-      name = "system-image-23-google_apis-x86_64";
-      path = "system-images/android-23/google_apis/x86_64";
-      revision = "23-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-23_r30.zip;
-        sha1 = "69a17c23c4e05e81a2820fe49884807fcebba546";
-      
-      };
-  };
-  
-
-    "23".google_apis."armeabi-v7a" = {
-      name = "system-image-23-google_apis-armeabi-v7a";
-      path = "system-images/android-23/google_apis/armeabi-v7a";
-      revision = "23-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-23_r30.zip;
-        sha1 = "c3966e3a25623a915902d879f90f6d9253dbb619";
-      
-      };
-  };
-  
-
-    "24".google_apis."x86" = {
-      name = "system-image-24-google_apis-x86";
-      path = "system-images/android-24/google_apis/x86";
-      revision = "24-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-24_r24.zip;
-        sha1 = "7a1adb4aa13946830763644d014fc9c6cc1f921d";
-      
-      };
-  };
-  
-
-    "24".google_apis."x86_64" = {
-      name = "system-image-24-google_apis-x86_64";
-      path = "system-images/android-24/google_apis/x86_64";
-      revision = "24-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-24_r24.zip;
-        sha1 = "53b26e8868c7cd27dda31c71ee2bcf999d6b9ce2";
-      
-      };
-  };
-  
-
-    "24".google_apis."armeabi-v7a" = {
-      name = "system-image-24-google_apis-armeabi-v7a";
-      path = "system-images/android-24/google_apis/armeabi-v7a";
-      revision = "24-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-24_r24.zip;
-        sha1 = "85068d55673bbf9417db8d70107ceed0952b5a28";
-      
-      };
-  };
-  
-
-    "24".google_apis."arm64-v8a" = {
-      name = "system-image-24-google_apis-arm64-v8a";
-      path = "system-images/android-24/google_apis/arm64-v8a";
-      revision = "24-google_apis-arm64-v8a";
-      displayName = "Google APIs ARM 64 v8a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-24_r24.zip;
-        sha1 = "93ab33d90fcdbb30ca2e927cd3eea447e933dfd9";
-      
-      };
-  };
-  
-
-    "25".google_apis."x86" = {
-      name = "system-image-25-google_apis-x86";
-      path = "system-images/android-25/google_apis/x86";
-      revision = "25-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-25_r15.zip;
-        sha1 = "5948473077341265a0b21a53a7e0afc2f980187c";
-      
-      };
-  };
-  
-
-    "25".google_apis."x86_64" = {
-      name = "system-image-25-google_apis-x86_64";
-      path = "system-images/android-25/google_apis/x86_64";
-      revision = "25-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-25_r15.zip;
-        sha1 = "5a81fc218a7fe82cc6af01f7fae54a8000900443";
-      
-      };
-  };
-  
-
-    "25".google_apis."armeabi-v7a" = {
-      name = "system-image-25-google_apis-armeabi-v7a";
-      path = "system-images/android-25/google_apis/armeabi-v7a";
-      revision = "25-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-25_r15.zip;
-        sha1 = "813e25f9a5f6d775670ed6c5e67a39bffa1411bf";
-      
-      };
-  };
-  
-
-    "25".google_apis."arm64-v8a" = {
-      name = "system-image-25-google_apis-arm64-v8a";
-      path = "system-images/android-25/google_apis/arm64-v8a";
-      revision = "25-google_apis-arm64-v8a";
-      displayName = "Google APIs ARM 64 v8a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-25_r15.zip;
-        sha1 = "c3049e32f031140757f71acb5b8f0179e6f27303";
-      
-      };
-  };
-  
-
-    "26".google_apis."x86" = {
-      name = "system-image-26-google_apis-x86";
-      path = "system-images/android-26/google_apis/x86";
-      revision = "26-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-26_r12.zip;
-        sha1 = "167c83bcfd87127c7376ce986b34701f74fe87ff";
-      
-      };
-  };
-  
-
-    "26".google_apis."x86_64" = {
-      name = "system-image-26-google_apis-x86_64";
-      path = "system-images/android-26/google_apis/x86_64";
-      revision = "26-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-26_r12.zip;
-        sha1 = "fcd46121c3486e2a759d0707c015e0b12bbab9db";
-      
-      };
-  };
-  
-
-    "27".google_apis."x86" = {
-      name = "system-image-27-google_apis-x86";
-      path = "system-images/android-27/google_apis/x86";
-      revision = "27-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-27_r08.zip;
-        sha1 = "623ee2638713b7dfde8044c91280c2afad5a1ade";
-      
-      };
-  };
-  
-
-    "28".google_apis."x86" = {
-      name = "system-image-28-google_apis-x86";
-      path = "system-images/android-28/google_apis/x86";
-      revision = "28-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-28_r07.zip;
-        sha1 = "fe5d58355545ae82b0e6a55adc1d41573ac7dec1";
-      
-      };
-  };
-  
-
-    "28".google_apis."x86_64" = {
-      name = "system-image-28-google_apis-x86_64";
-      path = "system-images/android-28/google_apis/x86_64";
-      revision = "28-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-28_r07.zip;
-        sha1 = "068468683a56725326f741f75b6913ee1e7955ff";
-      
-      };
-  };
-  
-}
-  
\ No newline at end of file
+  "10".google_apis."armeabi-v7a" = {
+    name = "system-image-10-google_apis-armeabi-v7a";
+    path = "system-images/android-10/google_apis/armeabi-v7a";
+    revision = "10-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-10_r06.zip;
+      sha1 = "970abf3a2a9937a43576afd9bb56e4a8191947f8";
+    };
+  };
+  "10".google_apis."x86" = {
+    name = "system-image-10-google_apis-x86";
+    path = "system-images/android-10/google_apis/x86";
+    revision = "10-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-10_r06.zip;
+      sha1 = "070a9552e3d358d8e72e8b2042e539e2b7a1b035";
+    };
+  };
+  "15".google_apis."x86" = {
+    name = "system-image-15-google_apis-x86";
+    path = "system-images/android-15/google_apis/x86";
+    revision = "15-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-15_r06.zip;
+      sha1 = "a7deb32c12396b6c4fd60ad14a62e19f8bdcae20";
+    };
+  };
+  "15".google_apis."armeabi-v7a" = {
+    name = "system-image-15-google_apis-armeabi-v7a";
+    path = "system-images/android-15/google_apis/armeabi-v7a";
+    revision = "15-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-15_r06.zip;
+      sha1 = "6deb76cf34760a6037cb18d89772c9e986d07497";
+    };
+  };
+  "16".google_apis."armeabi-v7a" = {
+    name = "system-image-16-google_apis-armeabi-v7a";
+    path = "system-images/android-16/google_apis/armeabi-v7a";
+    revision = "16-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-16_r06.zip;
+      sha1 = "5a5ff097680c6dae473c8719296ce6d7b70edb2d";
+    };
+  };
+  "16".google_apis."x86" = {
+    name = "system-image-16-google_apis-x86";
+    path = "system-images/android-16/google_apis/x86";
+    revision = "16-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-16_r06.zip;
+      sha1 = "b57adef2f43dd176b8c02c980c16a796021b2071";
+    };
+  };
+  "17".google_apis."armeabi-v7a" = {
+    name = "system-image-17-google_apis-armeabi-v7a";
+    path = "system-images/android-17/google_apis/armeabi-v7a";
+    revision = "17-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-17_r06.zip;
+      sha1 = "a59f26cb5707da97e869a27d87b83477204ac594";
+    };
+  };
+  "17".google_apis."x86" = {
+    name = "system-image-17-google_apis-x86";
+    path = "system-images/android-17/google_apis/x86";
+    revision = "17-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-17_r06.zip;
+      sha1 = "7864c34faf0402b8923d8c6e609a5339f74cc8d6";
+    };
+  };
+  "18".google_apis."armeabi-v7a" = {
+    name = "system-image-18-google_apis-armeabi-v7a";
+    path = "system-images/android-18/google_apis/armeabi-v7a";
+    revision = "18-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-18_r06.zip;
+      sha1 = "7faaccabbcc5f08e410436d3f63eea42521ea974";
+    };
+  };
+  "18".google_apis."x86" = {
+    name = "system-image-18-google_apis-x86";
+    path = "system-images/android-18/google_apis/x86";
+    revision = "18-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-18_r06.zip;
+      sha1 = "dd674d719cad61602702be4b3d98edccfbfea53e";
+    };
+  };
+  "19".google_apis."x86" = {
+    name = "system-image-19-google_apis-x86";
+    path = "system-images/android-19/google_apis/x86";
+    revision = "19-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-19_r38.zip;
+      sha1 = "928e4ec82876c61ef53451425d10ccb840cdd0f2";
+    };
+  };
+  "19".google_apis."armeabi-v7a" = {
+    name = "system-image-19-google_apis-armeabi-v7a";
+    path = "system-images/android-19/google_apis/armeabi-v7a";
+    revision = "19-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-19_r38.zip;
+      sha1 = "434edd2ddc39d1ca083a5fa9721c0db8ab804737";
+    };
+  };
+  "21".google_apis."x86" = {
+    name = "system-image-21-google_apis-x86";
+    path = "system-images/android-21/google_apis/x86";
+    revision = "21-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-21_r30.zip;
+      sha1 = "37548caae9e2897fb1d2b15f7fcf624c714cb610";
+    };
+  };
+  "21".google_apis."x86_64" = {
+    name = "system-image-21-google_apis-x86_64";
+    path = "system-images/android-21/google_apis/x86_64";
+    revision = "21-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-21_r30.zip;
+      sha1 = "82d34fdaae2916bd4d48a4f144db51e4e5719aa4";
+    };
+  };
+  "21".google_apis."armeabi-v7a" = {
+    name = "system-image-21-google_apis-armeabi-v7a";
+    path = "system-images/android-21/google_apis/armeabi-v7a";
+    revision = "21-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-21_r30.zip;
+      sha1 = "bbdbbb3c4387752a8f28718a3190d901c0378058";
+    };
+  };
+  "22".google_apis."x86" = {
+    name = "system-image-22-google_apis-x86";
+    path = "system-images/android-22/google_apis/x86";
+    revision = "22-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-22_r24.zip;
+      sha1 = "e4cd95b1c0837fc12d6544742e82d8ef344c8758";
+    };
+  };
+  "22".google_apis."armeabi-v7a" = {
+    name = "system-image-22-google_apis-armeabi-v7a";
+    path = "system-images/android-22/google_apis/armeabi-v7a";
+    revision = "22-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-22_r24.zip;
+      sha1 = "d2b7ca5f8259c6e4b3cfa5a0d77e4a088899cfb0";
+    };
+  };
+  "22".google_apis."x86_64" = {
+    name = "system-image-22-google_apis-x86_64";
+    path = "system-images/android-22/google_apis/x86_64";
+    revision = "22-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-22_r24.zip;
+      sha1 = "cde738f9353606af69ad7b4e625c957a4d603f27";
+    };
+  };
+  "23".google_apis."x86" = {
+    name = "system-image-23-google_apis-x86";
+    path = "system-images/android-23/google_apis/x86";
+    revision = "23-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-23_r31.zip;
+      sha1 = "877cf79f5198fa53351eab08ba9ce162dc84f7ba";
+    };
+  };
+  "23".google_apis."x86_64" = {
+    name = "system-image-23-google_apis-x86_64";
+    path = "system-images/android-23/google_apis/x86_64";
+    revision = "23-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-23_r31.zip;
+      sha1 = "342c39df061804ee0d5bc671147e90dead3d6665";
+    };
+  };
+  "23".google_apis."armeabi-v7a" = {
+    name = "system-image-23-google_apis-armeabi-v7a";
+    path = "system-images/android-23/google_apis/armeabi-v7a";
+    revision = "23-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-23_r31.zip;
+      sha1 = "da0a07800b4eec53fcdb2e5c3b69a9a5d7a6b8a6";
+    };
+  };
+  "24".google_apis."x86" = {
+    name = "system-image-24-google_apis-x86";
+    path = "system-images/android-24/google_apis/x86";
+    revision = "24-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-24_r25.zip;
+      sha1 = "53dba25eed8359aba394a1be1c7ccb741a459ec0";
+    };
+  };
+  "24".google_apis."x86_64" = {
+    name = "system-image-24-google_apis-x86_64";
+    path = "system-images/android-24/google_apis/x86_64";
+    revision = "24-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-24_r25.zip;
+      sha1 = "d757dd13ad9b0ba4dd872660e31b6506f60dcf32";
+    };
+  };
+  "24".google_apis."armeabi-v7a" = {
+    name = "system-image-24-google_apis-armeabi-v7a";
+    path = "system-images/android-24/google_apis/armeabi-v7a";
+    revision = "24-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-24_r25.zip;
+      sha1 = "9a0ec5e9a239a7a6889364e44e9fa4fcd0052c6b";
+    };
+  };
+  "24".google_apis."arm64-v8a" = {
+    name = "system-image-24-google_apis-arm64-v8a";
+    path = "system-images/android-24/google_apis/arm64-v8a";
+    revision = "24-google_apis-arm64-v8a";
+    displayName = "Google APIs ARM 64 v8a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-24_r25.zip;
+      sha1 = "5ff407d439e3c595ce9221f445a31dcc35df5a86";
+    };
+  };
+  "25".google_apis."x86" = {
+    name = "system-image-25-google_apis-x86";
+    path = "system-images/android-25/google_apis/x86";
+    revision = "25-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-25_r16.zip;
+      sha1 = "562e3335c6334b8d1947bb9efb90f8d82f2d3e4d";
+    };
+  };
+  "25".google_apis."x86_64" = {
+    name = "system-image-25-google_apis-x86_64";
+    path = "system-images/android-25/google_apis/x86_64";
+    revision = "25-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-25_r16.zip;
+      sha1 = "e08b94903631d58964467b0b310c93642d85df6c";
+    };
+  };
+  "25".google_apis."armeabi-v7a" = {
+    name = "system-image-25-google_apis-armeabi-v7a";
+    path = "system-images/android-25/google_apis/armeabi-v7a";
+    revision = "25-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-25_r16.zip;
+      sha1 = "4c49e0edb845b0bf1f231cb0e8598b1a9f9aa9c8";
+    };
+  };
+  "25".google_apis."arm64-v8a" = {
+    name = "system-image-25-google_apis-arm64-v8a";
+    path = "system-images/android-25/google_apis/arm64-v8a";
+    revision = "25-google_apis-arm64-v8a";
+    displayName = "Google APIs ARM 64 v8a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-25_r16.zip;
+      sha1 = "33ffbd335d9a6dc8d9843469d0963091566b3167";
+    };
+  };
+  "26".google_apis."x86" = {
+    name = "system-image-26-google_apis-x86";
+    path = "system-images/android-26/google_apis/x86";
+    revision = "26-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-26_r14.zip;
+      sha1 = "935da6794d5f64f7ae20a1f352929cb7e3b20cba";
+    };
+  };
+  "26".google_apis."x86_64" = {
+    name = "system-image-26-google_apis-x86_64";
+    path = "system-images/android-26/google_apis/x86_64";
+    revision = "26-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-26_r14.zip;
+      sha1 = "965631f0554ca9027ac465ba147baa6a6a22fcce";
+    };
+  };
+  "27".google_apis."x86" = {
+    name = "system-image-27-google_apis-x86";
+    path = "system-images/android-27/google_apis/x86";
+    revision = "27-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-27_r09.zip;
+      sha1 = "ab009fc1308ded01539af4f8233b252d411145bc";
+    };
+  };
+  "28".google_apis."x86" = {
+    name = "system-image-28-google_apis-x86";
+    path = "system-images/android-28/google_apis/x86";
+    revision = "28-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-28_r09.zip;
+      sha1 = "7c84ba5cbc009132ce38df52830c17b9bffc54bb";
+    };
+  };
+  "28".google_apis."x86" = {
+    name = "system-image-28-google_apis-x86";
+    path = "system-images/android-28/google_apis/x86";
+    revision = "28-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-28_r10.zip;
+      sha1 = "075e2253f1e93b49c134142a9717180dc7636685";
+    };
+  };
+  "28".google_apis."x86_64" = {
+    name = "system-image-28-google_apis-x86_64";
+    path = "system-images/android-28/google_apis/x86_64";
+    revision = "28-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-28_r09.zip;
+      sha1 = "eeb066346d29194e5b9387a0c0dd0f9e2a570b70";
+    };
+  };
+  "29".google_apis."x86" = {
+    name = "system-image-29-google_apis-x86";
+    path = "system-images/android-29/google_apis/x86";
+    revision = "29-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-29_r09.zip;
+      sha1 = "33d71d17138ea322dec2dea6d8198aebf4767ab3";
+    };
+  };
+  "29".google_apis."x86_64" = {
+    name = "system-image-29-google_apis-x86_64";
+    path = "system-images/android-29/google_apis/x86_64";
+    revision = "29-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-29_r09.zip;
+      sha1 = "0aa76b20a7ad30f2e41bc21b897b848d82533d26";
+    };
+  };
+  "R".google_apis."x86" = {
+    name = "system-image-R-google_apis-x86";
+    path = "system-images/android-R/google_apis/x86";
+    revision = "R-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-R_r01.zip;
+      sha1 = "4e260bef94760eecba3224b68c1a4fed0fb89485";
+    };
+  };
+  "R".google_apis."x86_64" = {
+    name = "system-image-R-google_apis-x86_64";
+    path = "system-images/android-R/google_apis/x86_64";
+    revision = "R-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-R_r01.zip;
+      sha1 = "ae12e1c3e1b36043a299359850e9315f47262f81";
+    };
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-google_apis_playstore.nix b/pkgs/development/mobile/androidenv/generated/system-images-google_apis_playstore.nix
index a8bea61ff54..6c4a654423d 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-google_apis_playstore.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-google_apis_playstore.nix
@@ -1,97 +1,162 @@
-
 {fetchurl}:
 
 {
-  
-
-    "24".google_apis_playstore."x86" = {
-      name = "system-image-24-google_apis_playstore-x86";
-      path = "system-images/android-24/google_apis_playstore/x86";
-      revision = "24-google_apis_playstore-x86";
-      displayName = "Google Play Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-24_r19.zip;
-        sha1 = "b52e9593ffdde65c1a0970256a32e8967c89cc22";
-      
-      };
+  "24".google_apis_playstore."x86" = {
+    name = "system-image-24-google_apis_playstore-x86";
+    path = "system-images/android-24/google_apis_playstore/x86";
+    revision = "24-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-24_r19.zip;
+      sha1 = "b52e9593ffdde65c1a0970256a32e8967c89cc22";
+    };
   };
-  
-
-    "25".google_apis_playstore."x86" = {
-      name = "system-image-25-google_apis_playstore-x86";
-      path = "system-images/android-25/google_apis_playstore/x86";
-      revision = "25-google_apis_playstore-x86";
-      displayName = "Google Play Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-25_r09.zip;
-        sha1 = "6f6668954f7fd52f896fe7528aa122028c9b026c";
-      
-      };
+  "25".google_apis_playstore."x86" = {
+    name = "system-image-25-google_apis_playstore-x86";
+    path = "system-images/android-25/google_apis_playstore/x86";
+    revision = "25-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-25_r09.zip;
+      sha1 = "6f6668954f7fd52f896fe7528aa122028c9b026c";
+    };
   };
-  
-
-    "26".google_apis_playstore."x86" = {
-      name = "system-image-26-google_apis_playstore-x86";
-      path = "system-images/android-26/google_apis_playstore/x86";
-      revision = "26-google_apis_playstore-x86";
-      displayName = "Google Play Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-26_r07.zip;
-        sha1 = "2c8bee7b97a309f099941532e63c42a7d4a06e19";
-      
-      };
+  "26".google_apis_playstore."x86" = {
+    name = "system-image-26-google_apis_playstore-x86";
+    path = "system-images/android-26/google_apis_playstore/x86";
+    revision = "26-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-26_r07.zip;
+      sha1 = "2c8bee7b97a309f099941532e63c42a7d4a06e19";
+    };
   };
-  
-
-    "27".google_apis_playstore."x86" = {
-      name = "system-image-27-google_apis_playstore-x86";
-      path = "system-images/android-27/google_apis_playstore/x86";
-      revision = "27-google_apis_playstore-x86";
-      displayName = "Google Play Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-27_r03.zip;
-        sha1 = "eb5a944ceb691ca0648d0a6f0d93893a47223b5d";
-      
-      };
+  "27".google_apis_playstore."x86" = {
+    name = "system-image-27-google_apis_playstore-x86";
+    path = "system-images/android-27/google_apis_playstore/x86";
+    revision = "27-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-27_r03.zip;
+      sha1 = "eb5a944ceb691ca0648d0a6f0d93893a47223b5d";
+    };
   };
-  
-
-    "28".google_apis_playstore."x86" = {
-      name = "system-image-28-google_apis_playstore-x86";
-      path = "system-images/android-28/google_apis_playstore/x86";
-      revision = "28-google_apis_playstore-x86";
-      displayName = "Google Play Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-28_r05.zip;
-        sha1 = "4c570d259e93b0b27f97bad1aca2ac47f1e9b51a";
-      
-      };
+  "28".google_apis_playstore."x86" = {
+    name = "system-image-28-google_apis_playstore-x86";
+    path = "system-images/android-28/google_apis_playstore/x86";
+    revision = "28-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-28_r08.zip;
+      sha1 = "5381f9d52a3bf1967c9c92a25b20012cd68764c8";
+    };
   };
-  
-
-    "28".google_apis_playstore."x86_64" = {
-      name = "system-image-28-google_apis_playstore-x86_64";
-      path = "system-images/android-28/google_apis_playstore/x86_64";
-      revision = "28-google_apis_playstore-x86_64";
-      displayName = "Google Play Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-28_r05.zip;
-        sha1 = "5f6b238e4c7de41fd2a1c66841093bcf517255a1";
-      
-      };
+  "28".google_apis_playstore."x86" = {
+    name = "system-image-28-google_apis_playstore-x86";
+    path = "system-images/android-28/google_apis_playstore/x86";
+    revision = "28-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-28_r09.zip;
+      sha1 = "97d9d4f4a2afa8b0f5d52e90748e19c10406ca93";
+    };
+  };
+  "28".google_apis_playstore."x86_64" = {
+    name = "system-image-28-google_apis_playstore-x86_64";
+    path = "system-images/android-28/google_apis_playstore/x86_64";
+    revision = "28-google_apis_playstore-x86_64";
+    displayName = "Google Play Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-28_r08.zip;
+      sha1 = "a767da996fdea7a1f5632a9206fa5c009d6e580c";
+    };
+  };
+  "29".google_apis_playstore."x86" = {
+    name = "system-image-29-google_apis_playstore-x86";
+    path = "system-images/android-29/google_apis_playstore/x86";
+    revision = "29-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-29_r08-windows.zip;
+      sha1 = "1c45e690e9ee6a44f40549e9fb68d3fd52ba4970";
+    };
+  };
+  "29".google_apis_playstore."x86" = {
+    name = "system-image-29-google_apis_playstore-x86";
+    path = "system-images/android-29/google_apis_playstore/x86";
+    revision = "29-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-29_r08-darwin.zip;
+      sha1 = "1c45e690e9ee6a44f40549e9fb68d3fd52ba4970";
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-29_r08-linux.zip;
+      sha1 = "1c45e690e9ee6a44f40549e9fb68d3fd52ba4970";
+    };
+  };
+  "29".google_apis_playstore."x86_64" = {
+    name = "system-image-29-google_apis_playstore-x86_64";
+    path = "system-images/android-29/google_apis_playstore/x86_64";
+    revision = "29-google_apis_playstore-x86_64";
+    displayName = "Google Play Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-29_r08-windows.zip;
+      sha1 = "94835980b4a6eaeeb41936d7fb1381698e48433a";
+    };
+  };
+  "29".google_apis_playstore."x86_64" = {
+    name = "system-image-29-google_apis_playstore-x86_64";
+    path = "system-images/android-29/google_apis_playstore/x86_64";
+    revision = "29-google_apis_playstore-x86_64";
+    displayName = "Google Play Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-29_r08-darwin.zip;
+      sha1 = "94835980b4a6eaeeb41936d7fb1381698e48433a";
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-29_r08-linux.zip;
+      sha1 = "94835980b4a6eaeeb41936d7fb1381698e48433a";
+    };
+  };
+  "R".google_apis_playstore."x86" = {
+    name = "system-image-R-google_apis_playstore-x86";
+    path = "system-images/android-R/google_apis_playstore/x86";
+    revision = "R-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-R_r01-windows.zip;
+      sha1 = "1bcb7d2ba381028fc1fc24905f3009a3a5a826f2";
+    };
+  };
+  "R".google_apis_playstore."x86" = {
+    name = "system-image-R-google_apis_playstore-x86";
+    path = "system-images/android-R/google_apis_playstore/x86";
+    revision = "R-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-R_r01-darwin.zip;
+      sha1 = "1bcb7d2ba381028fc1fc24905f3009a3a5a826f2";
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-R_r01-linux.zip;
+      sha1 = "1bcb7d2ba381028fc1fc24905f3009a3a5a826f2";
+    };
+  };
+  "R".google_apis_playstore."x86_64" = {
+    name = "system-image-R-google_apis_playstore-x86_64";
+    path = "system-images/android-R/google_apis_playstore/x86_64";
+    revision = "R-google_apis_playstore-x86_64";
+    displayName = "Google Play Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-R_r01-windows.zip;
+      sha1 = "aef2a953f20ca40ab94a4e1d633d2c84a27dc1e1";
+    };
+  };
+  "R".google_apis_playstore."x86_64" = {
+    name = "system-image-R-google_apis_playstore-x86_64";
+    path = "system-images/android-R/google_apis_playstore/x86_64";
+    revision = "R-google_apis_playstore-x86_64";
+    displayName = "Google Play Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-R_r01-darwin.zip;
+      sha1 = "aef2a953f20ca40ab94a4e1d633d2c84a27dc1e1";
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-R_r01-linux.zip;
+      sha1 = "aef2a953f20ca40ab94a4e1d633d2c84a27dc1e1";
+    };
   };
-  
-}
-  
\ No newline at end of file
+}
\ No newline at end of file