diff options
Diffstat (limited to 'pkgs/development/mobile')
24 files changed, 2864 insertions, 241 deletions
diff --git a/pkgs/development/mobile/adbfs-rootless/default.nix b/pkgs/development/mobile/adbfs-rootless/default.nix index 85bf2fb44906c..674988dccb17e 100644 --- a/pkgs/development/mobile/adbfs-rootless/default.nix +++ b/pkgs/development/mobile/adbfs-rootless/default.nix @@ -1,42 +1,43 @@ -{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, fuse, adb }: +{ lib +, stdenv +, fetchFromGitHub +, pkg-config +, fuse +, android-tools +}: stdenv.mkDerivation rec { pname = "adbfs-rootless"; - version = "2016-10-02"; + version = "unstable-2023-03-21"; src = fetchFromGitHub { owner = "spion"; - repo = "adbfs-rootless"; - rev = "b58963430e40c9246710a16cec58e7ffc88baa48"; - sha256 = "1kjibl86k6pf7vciwaaxwv5m4q28zdpd2g7yhp71av32jq6j3wm8"; + repo = pname; + rev = "fd56381af4dc9ae2f09b904c295686871a46ed0f"; + sha256 = "atiVjRfqvhTlm8Q+3iTNNPQiNkLIaHDLg5HZDJvpl2Q="; }; - patches = [ - (fetchpatch { - # https://github.com/spion/adbfs-rootless/issues/14 - url = "https://github.com/kronenpj/adbfs-rootless/commit/35f87ce0a7aeddaaad118daed3022e01453b838d.patch"; - sha256 = "1iigla74n3hphnyx9ffli9wqk7v71ylvsxama868czlg7851jqj9"; - }) - ]; - nativeBuildInputs = [ pkg-config ]; + buildInputs = [ fuse ]; postPatch = '' # very ugly way of replacing the adb calls - sed -e 's|"adb |"${adb}/bin/adb |g' \ - -i adbfs.cpp + substituteInPlace adbfs.cpp \ + --replace '"adb ' '"${android-tools}/bin/adb ' ''; installPhase = '' + runHook preInstall install -D adbfs $out/bin/adbfs + runHook postInstall ''; meta = with lib; { description = "Mount Android phones on Linux with adb, no root required"; inherit (src.meta) homepage; license = licenses.bsd3; - maintainers = with maintainers; [ Profpatsch ]; - platforms = platforms.linux; + maintainers = with maintainers; [ aleksana ]; + platforms = platforms.unix; }; } diff --git a/pkgs/development/mobile/androidenv/cmdline-tools.nix b/pkgs/development/mobile/androidenv/cmdline-tools.nix index b3ca1c171b659..11ad37453f2a8 100644 --- a/pkgs/development/mobile/androidenv/cmdline-tools.nix +++ b/pkgs/development/mobile/androidenv/cmdline-tools.nix @@ -1,4 +1,4 @@ -{deployAndroidPackage, lib, package, autoPatchelfHook, makeWrapper, os, pkgs, pkgsi686Linux, stdenv, cmdLineToolsVersion, postInstall}: +{deployAndroidPackage, lib, package, autoPatchelfHook, makeWrapper, os, pkgs, pkgsi686Linux, stdenv, postInstall}: deployAndroidPackage { name = "androidsdk"; @@ -16,7 +16,7 @@ deployAndroidPackage { export ANDROID_SDK_ROOT="$out/libexec/android-sdk" # Wrap all scripts that require JAVA_HOME - find $ANDROID_SDK_ROOT/cmdline-tools/${cmdLineToolsVersion}/bin -maxdepth 1 -type f -executable | while read program; do + find $ANDROID_SDK_ROOT/${package.path}/bin -maxdepth 1 -type f -executable | while read program; do if grep -q "JAVA_HOME" $program; then wrapProgram $program --prefix PATH : ${pkgs.jdk11}/bin \ --prefix ANDROID_SDK_ROOT : $ANDROID_SDK_ROOT @@ -24,12 +24,12 @@ deployAndroidPackage { done # Wrap sdkmanager script - wrapProgram $ANDROID_SDK_ROOT/cmdline-tools/${cmdLineToolsVersion}/bin/sdkmanager \ + wrapProgram $ANDROID_SDK_ROOT/${package.path}/bin/sdkmanager \ --prefix PATH : ${lib.makeBinPath [ pkgs.jdk11 ]} \ --add-flags "--sdk_root=$ANDROID_SDK_ROOT" # Patch all script shebangs - patchShebangs $ANDROID_SDK_ROOT/cmdline-tools/${cmdLineToolsVersion}/bin + patchShebangs $ANDROID_SDK_ROOT/${package.path}/bin cd $ANDROID_SDK_ROOT ${postInstall} diff --git a/pkgs/development/mobile/androidenv/compose-android-packages.nix b/pkgs/development/mobile/androidenv/compose-android-packages.nix index 8c24b10093be0..8414217002d90 100644 --- a/pkgs/development/mobile/androidenv/compose-android-packages.nix +++ b/pkgs/development/mobile/androidenv/compose-android-packages.nix @@ -2,12 +2,12 @@ , licenseAccepted ? false }: -{ cmdLineToolsVersion ? "8.0" +{ cmdLineToolsVersion ? "11.0" , toolsVersion ? "26.1.1" -, platformToolsVersion ? "33.0.3" -, buildToolsVersions ? [ "33.0.1" ] +, platformToolsVersion ? "34.0.4" +, buildToolsVersions ? [ "34.0.0" ] , includeEmulator ? false -, emulatorVersion ? "31.3.14" +, emulatorVersion ? "32.1.14" , platformVersions ? [] , includeSources ? false , includeSystemImages ? false @@ -15,7 +15,7 @@ , abiVersions ? [ "armeabi-v7a" "arm64-v8a" ] , cmakeVersions ? [ ] , includeNDK ? false -, ndkVersion ? "25.1.8937393" +, ndkVersion ? "25.2.9519653" , ndkVersions ? [ndkVersion] , useGoogleAPIs ? false , useGoogleTVAddOns ? false @@ -116,6 +116,7 @@ rec { deployAndroidPackages = callPackage ./deploy-androidpackages.nix { inherit stdenv lib mkLicenses; }; + deployAndroidPackage = ({package, os ? null, buildInputs ? [], patchInstructions ? "", meta ? {}, ...}@args: let extraParams = removeAttrs args [ "package" "os" "buildInputs" "patchInstructions" ]; @@ -127,15 +128,25 @@ rec { } // extraParams )); + # put a much nicer error message that includes the available options. + check-version = packages: package: version: + if lib.hasAttrByPath [ package version ] packages then + packages.${package}.${version} + else + throw '' + The version ${version} is missing in package ${package}. + The only available versions are ${builtins.concatStringsSep ", " (builtins.attrNames packages.${package})}. + ''; + platform-tools = callPackage ./platform-tools.nix { inherit deployAndroidPackage; os = if stdenv.system == "aarch64-darwin" then "macosx" else os; # "macosx" is a universal binary here - package = packages.platform-tools.${platformToolsVersion}; + package = check-version packages "platform-tools" platformToolsVersion; }; tools = callPackage ./tools.nix { inherit deployAndroidPackage os; - package = packages.tools.${toolsVersion}; + package = check-version packages "tools" toolsVersion; postInstall = '' ${linkPlugin { name = "platform-tools"; plugin = platform-tools; }} @@ -152,7 +163,7 @@ rec { build-tools = map (version: callPackage ./build-tools.nix { inherit deployAndroidPackage os; - package = packages.build-tools.${version}; + package = check-version packages "build-tools" version; postInstall = '' ${linkPlugin { name = "tools"; plugin = tools; check = toolsVersion != null; }} @@ -162,7 +173,7 @@ rec { emulator = callPackage ./emulator.nix { inherit deployAndroidPackage os; - package = packages.emulator.${emulatorVersion}; + package = check-version packages "emulator" emulatorVersion; postInstall = '' ${linkSystemImages { images = system-images; check = includeSystemImages; }} @@ -172,14 +183,14 @@ rec { platforms = map (version: deployAndroidPackage { inherit os; - package = packages.platforms.${version}; + package = check-version packages "platforms" version; } ) platformVersions; sources = map (version: deployAndroidPackage { inherit os; - package = packages.sources.${version}; + package = check-version packages "sources" version; } ) platformVersions; @@ -223,7 +234,7 @@ rec { cmake = map (version: callPackage ./cmake.nix { inherit deployAndroidPackage os; - package = packages.cmake.${version}; + package = check-version packages "cmake" version; } ) cmakeVersions; @@ -243,14 +254,14 @@ rec { google-apis = map (version: deployAndroidPackage { inherit os; - package = addons.addons.${version}.google_apis; + package = (check-version addons "addons" version).google_apis; } ) (builtins.filter (platformVersion: platformVersion < "26") platformVersions); # API level 26 and higher include Google APIs by default google-tv-addons = map (version: deployAndroidPackage { inherit os; - package = addons.addons.${version}.google_tv_addon; + package = (check-version addons "addons" version).google_tv_addon; } ) platformVersions; @@ -303,6 +314,8 @@ rec { '') plugins} ''; # */ + cmdline-tools-package = check-version packages "cmdline-tools" cmdLineToolsVersion; + # This derivation deploys the tools package and symlinks all the desired # plugins that we want to use. If the license isn't accepted, prints all the licenses # requested and throws. @@ -318,9 +331,9 @@ rec { by an environment variable for a single invocation of the nix tools. $ export NIXPKGS_ACCEPT_ANDROID_SDK_LICENSE=1 '' else callPackage ./cmdline-tools.nix { - inherit deployAndroidPackage os cmdLineToolsVersion; + inherit deployAndroidPackage os; - package = packages.cmdline-tools.${cmdLineToolsVersion}; + package = cmdline-tools-package; postInstall = '' # Symlink all requested plugins @@ -364,7 +377,7 @@ rec { ln -s $i $out/bin done - find $ANDROID_SDK_ROOT/cmdline-tools/${cmdLineToolsVersion}/bin -type f -executable | while read i; do + find $ANDROID_SDK_ROOT/${cmdline-tools-package.path}/bin -type f -executable | while read i; do ln -s $i $out/bin done diff --git a/pkgs/development/mobile/androidenv/deploy-androidpackages.nix b/pkgs/development/mobile/androidenv/deploy-androidpackages.nix index aaedae1eb4bf1..36d5842d9f689 100644 --- a/pkgs/development/mobile/androidenv/deploy-androidpackages.nix +++ b/pkgs/development/mobile/androidenv/deploy-androidpackages.nix @@ -60,7 +60,7 @@ let in stdenv.mkDerivation ({ inherit buildInputs; - pname = lib.concatMapStringsSep "-" (package: package.name) sortedPackages; + pname = "android-sdk-${lib.concatMapStringsSep "-" (package: package.name) sortedPackages}"; version = lib.concatMapStringsSep "-" (package: package.revision) sortedPackages; src = map (package: if os != null && builtins.hasAttr os package.archives then package.archives.${os} else package.archives.all diff --git a/pkgs/development/mobile/androidenv/examples/shell-with-emulator.nix b/pkgs/development/mobile/androidenv/examples/shell-with-emulator.nix index ebfe97b856ad8..4cee79824a6be 100644 --- a/pkgs/development/mobile/androidenv/examples/shell-with-emulator.nix +++ b/pkgs/development/mobile/androidenv/examples/shell-with-emulator.nix @@ -26,7 +26,7 @@ let # Declaration of versions for everything. This is useful since these # versions may be used in multiple places in this Nix expression. android = { - platforms = [ "33" ]; + platforms = [ "34" ]; systemImageTypes = [ "google_apis" ]; abis = [ "arm64-v8a" "x86_64" ]; }; @@ -115,10 +115,10 @@ pkgs.mkShell rec { echo "installed_packages_section: ''${installed_packages_section}" packages=( - "build-tools;33.0.1" "cmdline-tools;8.0" \ - "emulator" "patcher;v4" "platform-tools" "platforms;android-33" \ - "system-images;android-33;google_apis;arm64-v8a" \ - "system-images;android-33;google_apis;x86_64" + "build-tools;34.0.0" "cmdline-tools;11.0" \ + "emulator" "patcher;v4" "platform-tools" "platforms;android-34" \ + "system-images;android-34;google_apis;arm64-v8a" \ + "system-images;android-34;google_apis;x86_64" ) for package in "''${packages[@]}"; do @@ -135,7 +135,7 @@ pkgs.mkShell rec { nativeBuildInputs = [ androidSdk androidEmulator jdk ]; } '' avdmanager delete avd -n testAVD || true - echo "" | avdmanager create avd --force --name testAVD --package 'system-images;android-33;google_apis;x86_64' + echo "" | avdmanager create avd --force --name testAVD --package 'system-images;android-34;google_apis;x86_64' result=$(avdmanager list avd) if [[ ! $result =~ "Name: testAVD" ]]; then diff --git a/pkgs/development/mobile/androidenv/examples/shell.nix b/pkgs/development/mobile/androidenv/examples/shell.nix index 775f69bce4c51..67e6421dbba3e 100644 --- a/pkgs/development/mobile/androidenv/examples/shell.nix +++ b/pkgs/development/mobile/androidenv/examples/shell.nix @@ -25,18 +25,18 @@ let # versions may be used in multiple places in this Nix expression. android = { versions = { - cmdLineToolsVersion = "8.0"; - platformTools = "33.0.3"; - buildTools = "30.0.3"; + cmdLineToolsVersion = "11.0"; + platformTools = "34.0.4"; + buildTools = "34.0.0"; ndk = [ "25.1.8937393" # LTS NDK - "24.0.8215888" + "26.0.10404224-rc1" ]; - cmake = "3.22.1"; - emulator = "31.3.14"; + cmake = "3.6.4111459"; + emulator = "33.1.17"; }; - platforms = ["23" "24" "25" "26" "27" "28" "29" "30" "31" "32" "33"]; + platforms = [ "23" "24" "25" "26" "27" "28" "29" "30" "31" "32" "33" "34" ]; abis = ["armeabi-v7a" "arm64-v8a"]; extras = ["extras;google;gcm"]; }; @@ -165,19 +165,20 @@ pkgs.mkShell rec { installed_packages_section=$(echo "''${output%%Available Packages*}" | awk 'NR>4 {print $1}') packages=( - "build-tools;30.0.3" "platform-tools" \ + "build-tools;34.0.0" "platform-tools" \ "platforms;android-23" "platforms;android-24" "platforms;android-25" "platforms;android-26" \ "platforms;android-27" "platforms;android-28" "platforms;android-29" "platforms;android-30" \ - "platforms;android-31" "platforms;android-32" "platforms;android-33" \ + "platforms;android-31" "platforms;android-32" "platforms;android-33" "platforms;android-34" \ "sources;android-23" "sources;android-24" "sources;android-25" "sources;android-26" \ "sources;android-27" "sources;android-28" "sources;android-29" "sources;android-30" \ - "sources;android-31" "sources;android-32" "sources;android-33" \ + "sources;android-31" "sources;android-32" "sources;android-33" "sources;android-34" \ "system-images;android-28;google_apis_playstore;arm64-v8a" \ "system-images;android-29;google_apis_playstore;arm64-v8a" \ "system-images;android-30;google_apis_playstore;arm64-v8a" \ "system-images;android-31;google_apis_playstore;arm64-v8a" \ "system-images;android-32;google_apis_playstore;arm64-v8a" \ - "system-images;android-33;google_apis_playstore;arm64-v8a" + "system-images;android-33;google_apis_playstore;arm64-v8a" \ + "system-images;android-34;google_apis_playstore;arm64-v8a" ) for package in "''${packages[@]}"; do diff --git a/pkgs/development/mobile/androidenv/mkrepo.rb b/pkgs/development/mobile/androidenv/mkrepo.rb index fa813301558fc..4263935177e7e 100644 --- a/pkgs/development/mobile/androidenv/mkrepo.rb +++ b/pkgs/development/mobile/androidenv/mkrepo.rb @@ -177,8 +177,8 @@ def empty? value !value || value.empty? end -# Fixes up returned hashes by sorting keys. -# Will also convert archives (e.g. {'linux' => {'sha1' => ...}, 'macosx' => ...} to +# Fixes up returned hashes by converting archives like +# (e.g. {'linux' => {'sha1' => ...}, 'macosx' => ...} to # [{'os' => 'linux', 'sha1' => ...}, {'os' => 'macosx', ...}, ...]. def fixup value Hash[value.map do |k, v| @@ -191,7 +191,35 @@ def fixup value else [k, v] end - end.sort {|(k1, v1), (k2, v2)| k1 <=> k2 }] + end] +end + +# Today since Unix Epoch, January 1, 1970. +def today + Time.now.utc.to_i / 24 / 60 / 60 +end + +# The expiration strategy. Expire if the last available day was before the `oldest_valid_day`. +def expire_records record, oldest_valid_day + if record.is_a?(Hash) + if record.has_key?('last-available-day') && + record['last-available-day'] < oldest_valid_day + return nil + end + update = {} + # This should only happen in the first run of this scrip after adding the `expire_record` function. + if record.has_key?('displayName') && + !record.has_key?('last-available-day') + update['last-available-day'] = today + end + record.each {|key, value| + v = expire_records value, oldest_valid_day + update[key] = v if v + } + update + else + record + end end # Normalize the specified license text. @@ -253,6 +281,7 @@ def parse_package_xml doc target['dependencies'] ||= dependencies if dependencies target['archives'] ||= {} merge target['archives'], archives + target['last-available-day'] = today end [licenses, packages] @@ -294,6 +323,7 @@ def parse_image_xml doc target['dependencies'] ||= dependencies if dependencies target['archives'] ||= {} merge target['archives'], archives + target['last-available-day'] = today end [licenses, images] @@ -351,19 +381,36 @@ def parse_addon_xml doc target['dependencies'] ||= dependencies if dependencies target['archives'] ||= {} merge target['archives'], archives + target['last-available-day'] = today end [licenses, addons, extras] end +# Make the clean diff by always sorting the result before puting it in the stdout. +def sort_recursively value + if value.is_a?(Hash) + Hash[ + value.map do |k, v| + [k, sort_recursively(v)] + end.sort_by {|(k, v)| k } + ] + elsif value.is_a?(Array) + value.map do |v| sort_recursively(v) end + else + value + end +end + def merge_recursively a, b a.merge!(b) {|key, a_item, b_item| if a_item.is_a?(Hash) && b_item.is_a?(Hash) merge_recursively(a_item, b_item) - else - a[key] = b_item + elsif b_item != nil + b_item end } + a end def merge dest, src @@ -376,31 +423,55 @@ opts = Slop.parse do |o| o.array '-a', '--addons', 'addon repo XMLs to parse' end -result = { - licenses: {}, - packages: {}, - images: {}, - addons: {}, - extras: {} -} +result = {} +result['licenses'] = {} +result['packages'] = {} +result['images'] = {} +result['addons'] = {} +result['extras'] = {} opts[:packages].each do |filename| licenses, packages = parse_package_xml(Nokogiri::XML(File.open(filename)) { |conf| conf.noblanks }) - merge result[:licenses], licenses - merge result[:packages], packages + merge result['licenses'], licenses + merge result['packages'], packages end opts[:images].each do |filename| licenses, images = parse_image_xml(Nokogiri::XML(File.open(filename)) { |conf| conf.noblanks }) - merge result[:licenses], licenses - merge result[:images], images + merge result['licenses'], licenses + merge result['images'], images end opts[:addons].each do |filename| licenses, addons, extras = parse_addon_xml(Nokogiri::XML(File.open(filename)) { |conf| conf.noblanks }) - merge result[:licenses], licenses - merge result[:addons], addons - merge result[:extras], extras + merge result['licenses'], licenses + merge result['addons'], addons + merge result['extras'], extras +end + +# As we keep the old packages in the repo JSON file, we should have +# a strategy to remove them at some point! +# So with this variable we claim it's okay to remove them from the +# JSON after two years that they are not available. +two_years_ago = today - 2 * 365 + +input = {} +begin + input_json = (STDIN.tty?) ? "{}" : $stdin.read + if input_json != nil && !input_json.empty? + input = expire_records(JSON.parse(input_json), two_years_ago) + end +rescue JSON::ParserError => e + $stderr.write(e.message) + return end -puts JSON.pretty_generate(fixup(result)) + +fixup_result = fixup(result) + +# Regular installation of Android SDK would keep the previously installed packages even if they are not +# in the uptodate XML files, so here we try to support this logic by keeping un-available packages, +# therefore the old packages will work as long as the links are working on the Google servers. +output = merge input, fixup_result + +puts JSON.pretty_generate(sort_recursively(output)) diff --git a/pkgs/development/mobile/androidenv/mkrepo.sh b/pkgs/development/mobile/androidenv/mkrepo.sh index fd7e22457f020..f1b6ec73798cd 100755 --- a/pkgs/development/mobile/androidenv/mkrepo.sh +++ b/pkgs/development/mobile/androidenv/mkrepo.sh @@ -1,12 +1,12 @@ #!/usr/bin/env nix-shell -#!nix-shell -i bash -p "ruby.withPackages (pkgs: with pkgs; [ slop nokogiri ])" +#!nix-shell -i bash -p "ruby.withPackages (pkgs: with pkgs; [ slop nokogiri moreutils ])" set -e pushd "$(dirname "$0")" &>/dev/null || exit 1 echo "Writing repo.json" >&2 -ruby mkrepo.rb \ +cat ./repo.json | ruby mkrepo.rb \ --packages ./xml/repository2-1.xml \ --images ./xml/android-sys-img2-1.xml \ --images ./xml/android-tv-sys-img2-1.xml \ @@ -14,6 +14,7 @@ ruby mkrepo.rb \ --images ./xml/android-wear-sys-img2-1.xml \ --images ./xml/google_apis-sys-img2-1.xml \ --images ./xml/google_apis_playstore-sys-img2-1.xml \ - --addons ./xml/addon2-1.xml > repo.json + --addons ./xml/addon2-1.xml \ + | sponge repo.json popd &>/dev/null diff --git a/pkgs/development/mobile/androidenv/platform-tools.nix b/pkgs/development/mobile/androidenv/platform-tools.nix index eed3b896bfca3..4ed98e7a7d7ff 100644 --- a/pkgs/development/mobile/androidenv/platform-tools.nix +++ b/pkgs/development/mobile/androidenv/platform-tools.nix @@ -3,7 +3,7 @@ deployAndroidPackage { inherit package os; nativeBuildInputs = lib.optionals (os == "linux") [ autoPatchelfHook ]; - buildInputs = lib.optionals (os == "linux") [ pkgs.glibc pkgs.zlib pkgs.ncurses5 ]; + buildInputs = lib.optionals (os == "linux") [ pkgs.glibc pkgs.stdenv.cc.cc.lib pkgs.zlib pkgs.ncurses5 ]; patchInstructions = lib.optionalString (os == "linux") '' addAutoPatchelfSearchPath $packageBaseDir/lib64 diff --git a/pkgs/development/mobile/androidenv/repo.json b/pkgs/development/mobile/androidenv/repo.json index 0a4a733a49e0f..ecb649bba9724 100644 --- a/pkgs/development/mobile/androidenv/repo.json +++ b/pkgs/development/mobile/androidenv/repo.json @@ -11,6 +11,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-10", @@ -63,6 +64,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-11", @@ -108,6 +110,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-12", @@ -158,6 +161,7 @@ } ], "displayName": "Google TV Addon", + "last-available-day": 19579, "license": "android-googletv-license", "name": "google_tv_addon", "path": "add-ons/addon-google_tv_addon-google-12", @@ -194,6 +198,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-13", @@ -244,6 +249,7 @@ } ], "displayName": "Google TV Addon", + "last-available-day": 19579, "license": "android-googletv-license", "name": "google_tv_addon", "path": "add-ons/addon-google_tv_addon-google-13", @@ -280,6 +286,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-14", @@ -332,6 +339,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-15", @@ -391,6 +399,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-16", @@ -450,6 +459,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-17", @@ -509,6 +519,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-18", @@ -568,6 +579,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-19", @@ -627,6 +639,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-21", @@ -686,6 +699,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-22", @@ -745,6 +759,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-23", @@ -804,6 +819,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-24", @@ -863,6 +879,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-25", @@ -922,6 +939,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-3", @@ -967,6 +985,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-4", @@ -1012,6 +1031,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-5", @@ -1057,6 +1077,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-6", @@ -1102,6 +1123,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-7", @@ -1147,6 +1169,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-8", @@ -1192,6 +1215,7 @@ } ], "displayName": "Google APIs", + "last-available-day": 19579, "license": "android-sdk-license", "name": "google_apis", "path": "add-ons/addon-google_apis-google-9", @@ -1238,6 +1262,7 @@ } ], "displayName": "Android Support Repository", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-android-m2repository", "path": "extras/android/m2repository", @@ -1261,12 +1286,13 @@ "archives": [ { "os": "windows", - "sha1": "7be9c46e3bbf4ab107fa614e426f925584ce310b", - "size": 166975, - "url": "https://dl.google.com/android/repository/gvm-windows_v1_8_0.zip" + "sha1": "1a4ef9875cb0adfe5500632ad7140027cfb080d9", + "size": 168741, + "url": "https://dl.google.com/android/repository/gvm-windows_v2_0_0.zip" } ], - "displayName": "Android Emulator Hypervisor Driver for AMD Processors (installer)", + "displayName": "Android Emulator Hypervisor Driver for AMD Processors (installer: Deprecated)", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-Android_Emulator_Hypervisor_Driver", "path": "extras/google/Android_Emulator_Hypervisor_Driver", @@ -1296,6 +1322,7 @@ } ], "displayName": "Google AdMob Ads SDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-admob_ads_sdk", "path": "extras/google/admob_ads_sdk", @@ -1323,6 +1350,7 @@ } ], "displayName": "Google Analytics App Tracking SDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-analytics_sdk_v2", "path": "extras/google/analytics_sdk_v2", @@ -1350,6 +1378,7 @@ } ], "displayName": "Google Cloud Messaging for Android Library", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-gcm", "path": "extras/google/gcm", @@ -1384,6 +1413,7 @@ } }, "displayName": "Google Play services", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-google_play_services", "path": "extras/google/google_play_services", @@ -1411,6 +1441,7 @@ } ], "displayName": "Google Play services for Froyo", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-google_play_services_froyo", "path": "extras/google/google_play_services_froyo", @@ -1438,6 +1469,7 @@ } ], "displayName": "Google Play Instant Development SDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-instantapps", "path": "extras/google/instantapps", @@ -1474,6 +1506,7 @@ } }, "displayName": "Google Repository", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-m2repository", "path": "extras/google/m2repository", @@ -1501,6 +1534,7 @@ } ], "displayName": "Google Play APK Expansion library", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-market_apk_expansion", "path": "extras/google/market_apk_expansion", @@ -1528,6 +1562,7 @@ } ], "displayName": "Google Play Licensing Library", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-market_licensing", "path": "extras/google/market_licensing", @@ -1556,6 +1591,7 @@ } ], "displayName": "Android Auto API Simulators", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-simulators", "path": "extras/google/simulators", @@ -1583,6 +1619,7 @@ } ], "displayName": "Google USB Driver", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-usb_driver", "path": "extras/google/usb_driver", @@ -1610,6 +1647,7 @@ } ], "displayName": "Google Web Driver", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-google-webdriver", "path": "extras/google/webdriver", @@ -1637,6 +1675,7 @@ } ], "displayName": "Solver for ConstraintLayout 1.0.0", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0", "path": "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0", @@ -1664,6 +1703,7 @@ } ], "displayName": "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha4", + "last-available-day": 19579, "license": "android-sdk-license", "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", @@ -1691,6 +1731,7 @@ } ], "displayName": "Solver for ConstraintLayout 1.0.0-alpha8", + "last-available-day": 19579, "license": "android-sdk-license", "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", @@ -1718,6 +1759,7 @@ } ], "displayName": "Solver for ConstraintLayout 1.0.0-beta1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-beta1", "path": "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-beta1", @@ -1745,6 +1787,7 @@ } ], "displayName": "Solver for ConstraintLayout 1.0.0-beta2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-beta2", "path": "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-beta2", @@ -1772,6 +1815,7 @@ } ], "displayName": "Solver for ConstraintLayout 1.0.0-beta3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-beta3", "path": "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-beta3", @@ -1799,6 +1843,7 @@ } ], "displayName": "Solver for ConstraintLayout 1.0.0-beta4", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-beta4", "path": "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-beta4", @@ -1826,6 +1871,7 @@ } ], "displayName": "Solver for ConstraintLayout 1.0.0-beta5", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-beta5", "path": "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-beta5", @@ -1853,6 +1899,7 @@ } ], "displayName": "Solver for ConstraintLayout 1.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.1", "path": "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.1", @@ -1880,6 +1927,7 @@ } ], "displayName": "Solver for ConstraintLayout 1.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.2", "path": "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.2", @@ -1914,6 +1962,7 @@ } }, "displayName": "ConstraintLayout for Android 1.0.0", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0", "path": "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0", @@ -1948,6 +1997,7 @@ } }, "displayName": "com.android.support.constraint:constraint-layout:1.0.0-alpha4", + "last-available-day": 19579, "license": "android-sdk-license", "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", @@ -1982,6 +2032,7 @@ } }, "displayName": "ConstraintLayout for Android 1.0.0-alpha8", + "last-available-day": 19579, "license": "android-sdk-license", "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", @@ -2016,6 +2067,7 @@ } }, "displayName": "ConstraintLayout for Android 1.0.0-beta1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-beta1", "path": "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-beta1", @@ -2050,6 +2102,7 @@ } }, "displayName": "ConstraintLayout for Android 1.0.0-beta2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-beta2", "path": "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-beta2", @@ -2084,6 +2137,7 @@ } }, "displayName": "ConstraintLayout for Android 1.0.0-beta3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-beta3", "path": "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-beta3", @@ -2118,6 +2172,7 @@ } }, "displayName": "ConstraintLayout for Android 1.0.0-beta4", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-beta4", "path": "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-beta4", @@ -2152,6 +2207,7 @@ } }, "displayName": "ConstraintLayout for Android 1.0.0-beta5", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-beta5", "path": "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-beta5", @@ -2186,6 +2242,7 @@ } }, "displayName": "ConstraintLayout for Android 1.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.1", "path": "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.1", @@ -2220,6 +2277,7 @@ } }, "displayName": "ConstraintLayout for Android 1.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.2", "path": "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.2", @@ -2258,6 +2316,7 @@ } }, "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-10-default-armeabi-v7a", "path": "system-images/android-10/default/armeabi-v7a", @@ -2295,6 +2354,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-10-default-x86", "path": "system-images/android-10/default/x86", @@ -2334,6 +2394,7 @@ } }, "displayName": "Google APIs ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-10-google_apis-armeabi-v7a", "path": "system-images/android-10/google_apis/armeabi-v7a", @@ -2374,6 +2435,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-10-google_apis-x86", "path": "system-images/android-10/google_apis/x86", @@ -2411,6 +2473,7 @@ } ], "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-14-default-armeabi-v7a", "path": "system-images/android-14/default/armeabi-v7a", @@ -2452,6 +2515,7 @@ } }, "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-15-default-armeabi-v7a", "path": "system-images/android-15/default/armeabi-v7a", @@ -2489,6 +2553,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-15-default-x86", "path": "system-images/android-15/default/x86", @@ -2528,6 +2593,7 @@ } }, "displayName": "Google APIs ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-15-google_apis-armeabi-v7a", "path": "system-images/android-15/google_apis/armeabi-v7a", @@ -2568,6 +2634,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-15-google_apis-x86", "path": "system-images/android-15/google_apis/x86", @@ -2612,6 +2679,7 @@ } }, "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-16-default-armeabi-v7a", "path": "system-images/android-16/default/armeabi-v7a", @@ -2642,6 +2710,7 @@ } ], "displayName": "MIPS System Image", + "last-available-day": 19579, "license": "mips-android-sysimage-license", "name": "system-image-16-default-mips", "path": "system-images/android-16/default/mips", @@ -2679,6 +2748,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-16-default-x86", "path": "system-images/android-16/default/x86", @@ -2718,6 +2788,7 @@ } }, "displayName": "Google APIs ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-16-google_apis-armeabi-v7a", "path": "system-images/android-16/google_apis/armeabi-v7a", @@ -2758,6 +2829,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-16-google_apis-x86", "path": "system-images/android-16/google_apis/x86", @@ -2802,6 +2874,7 @@ } }, "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-17-default-armeabi-v7a", "path": "system-images/android-17/default/armeabi-v7a", @@ -2832,6 +2905,7 @@ } ], "displayName": "MIPS System Image", + "last-available-day": 19579, "license": "mips-android-sysimage-license", "name": "system-image-17-default-mips", "path": "system-images/android-17/default/mips", @@ -2869,6 +2943,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-17-default-x86", "path": "system-images/android-17/default/x86", @@ -2911,6 +2986,7 @@ } }, "displayName": "Google APIs ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-17-google_apis-armeabi-v7a", "path": "system-images/android-17/google_apis/armeabi-v7a", @@ -2951,6 +3027,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-17-google_apis-x86", "path": "system-images/android-17/google_apis/x86", @@ -2995,6 +3072,7 @@ } }, "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-18-default-armeabi-v7a", "path": "system-images/android-18/default/armeabi-v7a", @@ -3032,6 +3110,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-18-default-x86", "path": "system-images/android-18/default/x86", @@ -3071,6 +3150,7 @@ } }, "displayName": "Google APIs ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-18-google_apis-armeabi-v7a", "path": "system-images/android-18/google_apis/armeabi-v7a", @@ -3111,6 +3191,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-18-google_apis-x86", "path": "system-images/android-18/google_apis/x86", @@ -3155,6 +3236,7 @@ } }, "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-19-default-armeabi-v7a", "path": "system-images/android-19/default/armeabi-v7a", @@ -3192,6 +3274,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-19-default-x86", "path": "system-images/android-19/default/x86", @@ -3231,6 +3314,7 @@ } }, "displayName": "Google APIs ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-19-google_apis-armeabi-v7a", "path": "system-images/android-19/google_apis/armeabi-v7a", @@ -3271,6 +3355,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-19-google_apis-x86", "path": "system-images/android-19/google_apis/x86", @@ -3308,6 +3393,7 @@ } ], "displayName": "Android TV ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-21-android-tv-armeabi-v7a", "path": "system-images/android-21/android-tv/armeabi-v7a", @@ -3337,6 +3423,7 @@ } ], "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-21-android-tv-x86", "path": "system-images/android-21/android-tv/x86", @@ -3368,6 +3455,7 @@ } ], "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-21-default-arm64-v8a", "path": "system-images/android-21/default/arm64-v8a", @@ -3405,6 +3493,7 @@ } }, "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-21-default-armeabi-v7a", "path": "system-images/android-21/default/armeabi-v7a", @@ -3442,6 +3531,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-21-default-x86", "path": "system-images/android-21/default/x86", @@ -3478,7 +3568,8 @@ } } }, - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-21-default-x86_64", "path": "system-images/android-21/default/x86_64", @@ -3511,6 +3602,7 @@ } ], "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-21-google_apis-arm64-v8a", "path": "system-images/android-21/google_apis/arm64-v8a", @@ -3551,6 +3643,7 @@ } }, "displayName": "Google APIs ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-21-google_apis-armeabi-v7a", "path": "system-images/android-21/google_apis/armeabi-v7a", @@ -3591,6 +3684,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-21-google_apis-x86", "path": "system-images/android-21/google_apis/x86", @@ -3630,7 +3724,8 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-21-google_apis-x86_64", "path": "system-images/android-21/google_apis/x86_64", @@ -3668,6 +3763,7 @@ } ], "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-22-android-tv-x86", "path": "system-images/android-22/android-tv/x86", @@ -3699,6 +3795,7 @@ } ], "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-22-default-arm64-v8a", "path": "system-images/android-22/default/arm64-v8a", @@ -3736,6 +3833,7 @@ } }, "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-22-default-armeabi-v7a", "path": "system-images/android-22/default/armeabi-v7a", @@ -3773,6 +3871,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-22-default-x86", "path": "system-images/android-22/default/x86", @@ -3809,7 +3908,8 @@ } } }, - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-22-default-x86_64", "path": "system-images/android-22/default/x86_64", @@ -3842,6 +3942,7 @@ } ], "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-22-google_apis-arm64-v8a", "path": "system-images/android-22/google_apis/arm64-v8a", @@ -3882,6 +3983,7 @@ } }, "displayName": "Google APIs ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-22-google_apis-armeabi-v7a", "path": "system-images/android-22/google_apis/armeabi-v7a", @@ -3922,6 +4024,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-22-google_apis-x86", "path": "system-images/android-22/google_apis/x86", @@ -3961,7 +4064,8 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-22-google_apis-x86_64", "path": "system-images/android-22/google_apis/x86_64", @@ -3999,6 +4103,7 @@ } ], "displayName": "Android TV ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-23-android-tv-armeabi-v7a", "path": "system-images/android-23/android-tv/armeabi-v7a", @@ -4035,6 +4140,7 @@ } }, "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-23-android-tv-x86", "path": "system-images/android-23/android-tv/x86", @@ -4066,6 +4172,7 @@ } ], "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-23-default-arm64-v8a", "path": "system-images/android-23/default/arm64-v8a", @@ -4103,6 +4210,7 @@ } }, "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-23-default-armeabi-v7a", "path": "system-images/android-23/default/armeabi-v7a", @@ -4140,6 +4248,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-23-default-x86", "path": "system-images/android-23/default/x86", @@ -4176,7 +4285,8 @@ } } }, - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-23-default-x86_64", "path": "system-images/android-23/default/x86_64", @@ -4209,6 +4319,7 @@ } ], "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-23-google_apis-arm64-v8a", "path": "system-images/android-23/google_apis/arm64-v8a", @@ -4249,6 +4360,7 @@ } }, "displayName": "Google APIs ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-23-google_apis-armeabi-v7a", "path": "system-images/android-23/google_apis/armeabi-v7a", @@ -4289,6 +4401,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-23-google_apis-x86", "path": "system-images/android-23/google_apis/x86", @@ -4328,7 +4441,8 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-23-google_apis-x86_64", "path": "system-images/android-23/google_apis/x86_64", @@ -4373,6 +4487,7 @@ } }, "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-24-android-tv-x86", "path": "system-images/android-24/android-tv/x86", @@ -4404,6 +4519,7 @@ } ], "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-24-default-arm64-v8a", "path": "system-images/android-24/default/arm64-v8a", @@ -4441,6 +4557,7 @@ } }, "displayName": "ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-24-default-armeabi-v7a", "path": "system-images/android-24/default/armeabi-v7a", @@ -4478,6 +4595,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-24-default-x86", "path": "system-images/android-24/default/x86", @@ -4514,7 +4632,8 @@ } } }, - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-24-default-x86_64", "path": "system-images/android-24/default/x86_64", @@ -4554,6 +4673,7 @@ } }, "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-24-google_apis-arm64-v8a", "path": "system-images/android-24/google_apis/arm64-v8a", @@ -4594,6 +4714,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-24-google_apis-x86", "path": "system-images/android-24/google_apis/x86", @@ -4633,7 +4754,8 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-24-google_apis-x86_64", "path": "system-images/android-24/google_apis/x86_64", @@ -4676,6 +4798,7 @@ } }, "displayName": "Google Play Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-24-google_apis_playstore-x86", "path": "system-images/android-24/google_apis_playstore/x86", @@ -4720,6 +4843,7 @@ } }, "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-android-tv-x86", "path": "system-images/android-25/android-tv/x86", @@ -4758,6 +4882,7 @@ } }, "displayName": "Android Wear ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-android-wear-armeabi-v7a", "path": "system-images/android-25/android-wear/armeabi-v7a", @@ -4794,6 +4919,7 @@ } }, "displayName": "Android Wear Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-android-wear-x86", "path": "system-images/android-25/android-wear/x86", @@ -4825,6 +4951,7 @@ } ], "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-default-arm64-v8a", "path": "system-images/android-25/default/arm64-v8a", @@ -4862,6 +4989,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-default-x86", "path": "system-images/android-25/default/x86", @@ -4898,7 +5026,8 @@ } } }, - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-default-x86_64", "path": "system-images/android-25/default/x86_64", @@ -4931,6 +5060,7 @@ } ], "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-google_apis-arm64-v8a", "path": "system-images/android-25/google_apis/arm64-v8a", @@ -4971,6 +5101,7 @@ } }, "displayName": "Google APIs ARM EABI v7a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-google_apis-armeabi-v7a", "path": "system-images/android-25/google_apis/armeabi-v7a", @@ -5011,6 +5142,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-google_apis-x86", "path": "system-images/android-25/google_apis/x86", @@ -5050,7 +5182,8 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-google_apis-x86_64", "path": "system-images/android-25/google_apis/x86_64", @@ -5093,6 +5226,7 @@ } }, "displayName": "Google Play Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-25-google_apis_playstore-x86", "path": "system-images/android-25/google_apis_playstore/x86", @@ -5147,6 +5281,7 @@ } }, "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-26-android-tv-x86", "path": "system-images/android-26/android-tv/x86", @@ -5185,6 +5320,7 @@ } }, "displayName": "Android Wear Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-26-android-wear-x86", "path": "system-images/android-26/android-wear/x86", @@ -5210,9 +5346,9 @@ "archives": [ { "os": "all", - "sha1": "c3199baf49790fc65f90f7ce734435d5778f6a30", - "size": 328910124, - "url": "https://dl.google.com/android/repository/sys-img/android/arm64-v8a-26_r01.zip" + "sha1": "12353141d08dd302fbebc03872f0e1ca7357c55f", + "size": 330014927, + "url": "https://dl.google.com/android/repository/sys-img/android/arm64-v8a-26_r02.zip" } ], "dependencies": { @@ -5228,12 +5364,13 @@ } }, "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-26-default-arm64-v8a", "path": "system-images/android-26/default/arm64-v8a", "revision": "26-default-arm64-v8a", "revision-details": { - "major:0": "1" + "major:0": "2" }, "type-details": { "abi:2": "arm64-v8a", @@ -5264,6 +5401,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-26-default-x86", "path": "system-images/android-26/default/x86", @@ -5299,7 +5437,8 @@ } } }, - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-26-default-x86_64", "path": "system-images/android-26/default/x86_64", @@ -5325,9 +5464,9 @@ "archives": [ { "os": "all", - "sha1": "75fe6f36cf0854270876543641da53887961a63b", - "size": 732225522, - "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-26_r01.zip" + "sha1": "307bb9e03b215ebcab5d2a9edd47839009c57c8f", + "size": 733341370, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-26_r02.zip" } ], "dependencies": { @@ -5343,12 +5482,13 @@ } }, "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-26-google_apis-arm64-v8a", "path": "system-images/android-26/google_apis/arm64-v8a", "revision": "26-google_apis-arm64-v8a", "revision-details": { - "major:0": "1" + "major:0": "2" }, "type-details": { "abi:3": "arm64-v8a", @@ -5393,6 +5533,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-26-google_apis-x86", "path": "system-images/android-26/google_apis/x86", @@ -5442,7 +5583,8 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-26-google_apis-x86_64", "path": "system-images/android-26/google_apis/x86_64", @@ -5495,6 +5637,7 @@ } }, "displayName": "Google Play Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-26-google_apis_playstore-x86", "path": "system-images/android-26/google_apis_playstore/x86", @@ -5539,6 +5682,7 @@ } }, "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-27-android-tv-x86", "path": "system-images/android-27/android-tv/x86", @@ -5564,9 +5708,9 @@ "archives": [ { "os": "all", - "sha1": "cb01199edae33ce375c6d8e08aea08911ff0d583", - "size": 331796092, - "url": "https://dl.google.com/android/repository/sys-img/android/arm64-v8a-27_r01.zip" + "sha1": "e014473ac510cc9d8e9b412826332923277fa827", + "size": 332173536, + "url": "https://dl.google.com/android/repository/sys-img/android/arm64-v8a-27_r02.zip" } ], "dependencies": { @@ -5582,12 +5726,13 @@ } }, "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-27-default-arm64-v8a", "path": "system-images/android-27/default/arm64-v8a", "revision": "27-default-arm64-v8a", "revision-details": { - "major:0": "1" + "major:0": "2" }, "type-details": { "abi:2": "arm64-v8a", @@ -5618,6 +5763,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-27-default-x86", "path": "system-images/android-27/default/x86", @@ -5653,7 +5799,8 @@ } } }, - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-27-default-x86_64", "path": "system-images/android-27/default/x86_64", @@ -5679,9 +5826,9 @@ "archives": [ { "os": "all", - "sha1": "a7ae177097205090fee9801349575cea0dd9f606", - "size": 730343967, - "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-27_r01.zip" + "sha1": "e4c06bbee837cd8266774fc4ddd1c70338ab6848", + "size": 730720117, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-27_r02.zip" } ], "dependencies": { @@ -5697,12 +5844,13 @@ } }, "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-27-google_apis-arm64-v8a", "path": "system-images/android-27/google_apis/arm64-v8a", "revision": "27-google_apis-arm64-v8a", "revision-details": { - "major:0": "1" + "major:0": "2" }, "type-details": { "abi:3": "arm64-v8a", @@ -5747,6 +5895,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-27-google_apis-x86", "path": "system-images/android-27/google_apis/x86", @@ -5799,6 +5948,7 @@ } }, "displayName": "Google Play Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-27-google_apis_playstore-x86", "path": "system-images/android-27/google_apis_playstore/x86", @@ -5843,6 +5993,7 @@ } }, "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-28-android-tv-x86", "path": "system-images/android-28/android-tv/x86", @@ -5881,6 +6032,7 @@ } }, "displayName": "Wear OS Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-28-android-wear-x86", "path": "system-images/android-28/android-wear/x86", @@ -5906,9 +6058,9 @@ "archives": [ { "os": "all", - "sha1": "4de0491612ca12097be7deb76af835ebabadefca", - "size": 425671679, - "url": "https://dl.google.com/android/repository/sys-img/android/arm64-v8a-28_r01.zip" + "sha1": "e209114dd0dfc2f4e0d328f5fd7367fec39ee1bd", + "size": 426760297, + "url": "https://dl.google.com/android/repository/sys-img/android/arm64-v8a-28_r02.zip" } ], "dependencies": { @@ -5924,12 +6076,13 @@ } }, "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-28-default-arm64-v8a", "path": "system-images/android-28/default/arm64-v8a", "revision": "28-default-arm64-v8a", "revision-details": { - "major:0": "1" + "major:0": "2" }, "type-details": { "abi:2": "arm64-v8a", @@ -5953,6 +6106,7 @@ } ], "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-28-default-x86", "path": "system-images/android-28/default/x86", @@ -5981,7 +6135,8 @@ "url": "https://dl.google.com/android/repository/sys-img/android/x86_64-28_r04.zip" } ], - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-28-default-x86_64", "path": "system-images/android-28/default/x86_64", @@ -6007,9 +6162,9 @@ "archives": [ { "os": "all", - "sha1": "3360092d11284a9f2d7146847932a426c438b372", - "size": 856031756, - "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-28_r01.zip" + "sha1": "28f59164bdb4cb18f1a1060f1880450e06cf4d10", + "size": 857120029, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-28_r02.zip" } ], "dependencies": { @@ -6025,12 +6180,13 @@ } }, "displayName": "Google APIs ARM 64 v8a System Image", - "license": "android-sdk-arm-dbt-license", + "last-available-day": 19579, + "license": "android-sdk-license", "name": "system-image-28-google_apis-arm64-v8a", "path": "system-images/android-28/google_apis/arm64-v8a", "revision": "28-google_apis-arm64-v8a", "revision-details": { - "major:0": "1" + "major:0": "2" }, "type-details": { "abi:3": "arm64-v8a", @@ -6075,6 +6231,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-28-google_apis-x86", "path": "system-images/android-28/google_apis/x86", @@ -6124,7 +6281,8 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-28-google_apis-x86_64", "path": "system-images/android-28/google_apis/x86_64", @@ -6154,9 +6312,9 @@ "archives": [ { "os": "all", - "sha1": "8901ad796ada9d40272c429427ba628de6919281", - "size": 835797733, - "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-28_r01.zip" + "sha1": "205a4720befd41be99fcdfb2550fa1680e9a2e18", + "size": 836861962, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-28_r02.zip" } ], "dependencies": { @@ -6172,12 +6330,13 @@ } }, "displayName": "Google ARM64-V8a Play ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-28-google_apis_playstore-arm64-v8a", "path": "system-images/android-28/google_apis_playstore/arm64-v8a", "revision": "28-google_apis_playstore-arm64-v8a", "revision-details": { - "major:0": "1" + "major:0": "2" }, "type-details": { "abi:3": "arm64-v8a", @@ -6222,6 +6381,7 @@ } }, "displayName": "Google Play Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-28-google_apis_playstore-x86", "path": "system-images/android-28/google_apis_playstore/x86", @@ -6271,7 +6431,8 @@ } } }, - "displayName": "Google Play Intel x86 Atom_64 System Image", + "displayName": "Google Play Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-28-google_apis_playstore-x86_64", "path": "system-images/android-28/google_apis_playstore/x86_64", @@ -6326,6 +6487,7 @@ } }, "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-29-android-tv-x86", "path": "system-images/android-29/android-tv/x86", @@ -6357,6 +6519,7 @@ } ], "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-29-default-arm64-v8a", "path": "system-images/android-29/default/arm64-v8a", @@ -6410,6 +6573,7 @@ } }, "displayName": "Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-29-default-x86", "path": "system-images/android-29/default/x86", @@ -6462,7 +6626,8 @@ } } }, - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-29-default-x86_64", "path": "system-images/android-29/default/x86_64", @@ -6506,6 +6671,7 @@ } }, "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-29-google_apis-arm64-v8a", "path": "system-images/android-29/google_apis/arm64-v8a", @@ -6551,6 +6717,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-29-google_apis-x86", "path": "system-images/android-29/google_apis/x86", @@ -6595,7 +6762,8 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-29-google_apis-x86_64", "path": "system-images/android-29/google_apis/x86_64", @@ -6649,6 +6817,7 @@ } }, "displayName": "Google Play ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-29-google_apis_playstore-arm64-v8a", "path": "system-images/android-29/google_apis_playstore/arm64-v8a", @@ -6711,6 +6880,7 @@ } }, "displayName": "Google Play Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-29-google_apis_playstore-x86", "path": "system-images/android-29/google_apis_playstore/x86", @@ -6772,7 +6942,8 @@ } } }, - "displayName": "Google Play Intel x86 Atom_64 System Image", + "displayName": "Google Play Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-29-google_apis_playstore-x86_64", "path": "system-images/android-29/google_apis_playstore/x86_64", @@ -6827,6 +6998,7 @@ } }, "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-30-android-tv-x86", "path": "system-images/android-30/android-tv/x86", @@ -6865,6 +7037,7 @@ } }, "displayName": "Wear OS 3 ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-30-android-wear-arm64-v8a", "path": "system-images/android-30/android-wear/arm64-v8a", @@ -6901,6 +7074,7 @@ } }, "displayName": "Wear OS 3 Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-30-android-wear-x86", "path": "system-images/android-30/android-wear/x86", @@ -6926,18 +7100,19 @@ "archives": [ { "os": "all", - "sha1": "2462af138023fbbd1114421818890884d4ebceab", - "size": 548363604, - "url": "https://dl.google.com/android/repository/sys-img/android/arm64-v8a-30_r01.zip" + "sha1": "e96298145a5e0bfd6da4816f51b06c520d8dba72", + "size": 548363615, + "url": "https://dl.google.com/android/repository/sys-img/android/arm64-v8a-30_r02.zip" } ], "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-30-default-arm64-v8a", "path": "system-images/android-30/default/arm64-v8a", "revision": "30-default-arm64-v8a", "revision-details": { - "major:0": "1" + "major:0": "2" }, "type-details": { "abi:2": "arm64-v8a", @@ -6955,9 +7130,9 @@ "archives": [ { "os": "all", - "sha1": "e08119b65d2c188ef69f127028eb4c8cc632cd8f", - "size": 676379913, - "url": "https://dl.google.com/android/repository/sys-img/android/x86_64-30_r10.zip" + "sha1": "5e4de3946d46f88856c35efcc4d797b381456347", + "size": 676379777, + "url": "https://dl.google.com/android/repository/sys-img/android/x86_64-30_r11.zip" } ], "dependencies": { @@ -6972,13 +7147,14 @@ } } }, - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-30-default-x86_64", "path": "system-images/android-30/default/x86_64", "revision": "30-default-x86_64", "revision-details": { - "major:0": "10" + "major:0": "11" }, "type-details": { "abi:2": "x86_64", @@ -6998,9 +7174,9 @@ "archives": [ { "os": "all", - "sha1": "14393e29f2b1021d4bfece3a1cb29af745e95dac", - "size": 1244095258, - "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-30_r11.zip" + "sha1": "348aa8836d855745dd89295356330ad0b5622cb3", + "size": 1244297361, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-30_r12.zip" } ], "dependencies": { @@ -7016,12 +7192,13 @@ } }, "displayName": "Google APIs ARM 64 v8a System Image", - "license": "android-sdk-arm-dbt-license", + "last-available-day": 19579, + "license": "android-sdk-license", "name": "system-image-30-google_apis-arm64-v8a", "path": "system-images/android-30/google_apis/arm64-v8a", "revision": "30-google_apis-arm64-v8a", "revision-details": { - "major:0": "11" + "major:0": "12" }, "type-details": { "abi:3": "arm64-v8a", @@ -7066,6 +7243,7 @@ } }, "displayName": "Google APIs Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-30-google_apis-x86", "path": "system-images/android-30/google_apis/x86", @@ -7093,9 +7271,9 @@ "archives": [ { "os": "all", - "sha1": "8ec579d5fe31804dd80132f1678655bfc015609b", - "size": 1438274971, - "url": "https://dl.google.com/android/repository/sys-img/google_apis/x86_64-30_r11.zip" + "sha1": "efb07cd6268d93d7e2be88883bc9249a00b378b3", + "size": 1438275289, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/x86_64-30_r12.zip" } ], "dependencies": { @@ -7115,13 +7293,14 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", - "license": "android-sdk-license", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, + "license": "android-sdk-arm-dbt-license", "name": "system-image-30-google_apis-x86_64", "path": "system-images/android-30/google_apis/x86_64", "revision": "30-google_apis-x86_64", "revision-details": { - "major:0": "11" + "major:0": "12" }, "type-details": { "abi:3": "x86_64", @@ -7169,6 +7348,7 @@ } }, "displayName": "Google Play ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-30-google_apis_playstore-arm64-v8a", "path": "system-images/android-30/google_apis_playstore/arm64-v8a", @@ -7231,6 +7411,7 @@ } }, "displayName": "Google Play Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-30-google_apis_playstore-x86", "path": "system-images/android-30/google_apis_playstore/x86", @@ -7292,7 +7473,8 @@ } } }, - "displayName": "Google Play Intel x86 Atom_64 System Image", + "displayName": "Google Play Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-30-google_apis_playstore-x86_64", "path": "system-images/android-30/google_apis_playstore/x86_64", @@ -7347,6 +7529,7 @@ } }, "displayName": "Android TV ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-31-android-tv-arm64-v8a", "path": "system-images/android-31/android-tv/arm64-v8a", @@ -7393,6 +7576,7 @@ } }, "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-31-android-tv-x86", "path": "system-images/android-31/android-tv/x86", @@ -7436,6 +7620,7 @@ } }, "displayName": "ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-31-default-arm64-v8a", "path": "system-images/android-31/default/arm64-v8a", @@ -7459,9 +7644,9 @@ "archives": [ { "os": "all", - "sha1": "1200d6983af477fd6439f11cc5cabf9866bc4a16", - "size": 657244568, - "url": "https://dl.google.com/android/repository/sys-img/android/x86_64-31_r03.zip" + "sha1": "58bff3cb182c79bbfe3980fe77b87b51b9f7ad71", + "size": 657246510, + "url": "https://dl.google.com/android/repository/sys-img/android/x86_64-31_r05.zip" } ], "dependencies": { @@ -7476,13 +7661,14 @@ } } }, - "displayName": "Intel x86 Atom_64 System Image", + "displayName": "Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-31-default-x86_64", "path": "system-images/android-31/default/x86_64", "revision": "31-default-x86_64", "revision-details": { - "major:0": "4" + "major:0": "5" }, "type-details": { "abi:2": "x86_64", @@ -7525,6 +7711,7 @@ } }, "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-31-google_apis-arm64-v8a", "path": "system-images/android-31/google_apis/arm64-v8a", @@ -7552,9 +7739,9 @@ "archives": [ { "os": "all", - "sha1": "05a74ff8509fb76cbfd14b2e3307addad5c4d0df", - "size": 1458104208, - "url": "https://dl.google.com/android/repository/sys-img/google_apis/x86_64-31_r11.zip" + "sha1": "9aedd3e85cad7a479146f6858f4a94840c2a3f29", + "size": 1470822277, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/x86_64-31_r14.zip" } ], "dependencies": { @@ -7574,13 +7761,14 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-31-google_apis-x86_64", "path": "system-images/android-31/google_apis/x86_64", "revision": "31-google_apis-x86_64", "revision-details": { - "major:0": "11" + "major:0": "14" }, "type-details": { "abi:3": "x86_64", @@ -7633,6 +7821,7 @@ } }, "displayName": "Google Play ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-31-google_apis_playstore-arm64-v8a", "path": "system-images/android-31/google_apis_playstore/arm64-v8a", @@ -7682,7 +7871,8 @@ } } }, - "displayName": "Google Play Intel x86 Atom_64 System Image", + "displayName": "Google Play Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-31-google_apis_playstore-x86_64", "path": "system-images/android-31/google_apis_playstore/x86_64", @@ -7710,13 +7900,64 @@ }, "32": { "google_apis": { + "arm64-v8a": { + "archives": [ + { + "os": "all", + "sha1": "f64546f7cfcd751d89c8b7799d444676b217c623", + "size": 1536995320, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-32_r06.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "30", + "micro:2": "3", + "minor:1": "7" + } + } + }, + "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, + "license": "android-sdk-arm-dbt-license", + "name": "system-image-32-google_apis-arm64-v8a", + "path": "system-images/android-32/google_apis/arm64-v8a", + "revision": "32-google_apis-arm64-v8a", + "revision-details": { + "major:0": "6" + }, + "type-details": { + "abi:3": "arm64-v8a", + "api-level:0": "32", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:1": { + "display:1": "Google APIs", + "id:0": "google_apis" + }, + "vendor:2": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + }, "x86_64": { "archives": [ { "os": "all", - "sha1": "9727f570164b062e820d6e62edabc96d125027f6", - "size": 1471221547, - "url": "https://dl.google.com/android/repository/sys-img/google_apis/x86_64-32_r03.zip" + "sha1": "4b7fb40deefc6e7b5721774ce8f46310c2b434ca", + "size": 1511072885, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/x86_64-32_r07.zip" } ], "dependencies": { @@ -7736,13 +7977,14 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-32-google_apis-x86_64", "path": "system-images/android-32/google_apis/x86_64", "revision": "32-google_apis-x86_64", "revision-details": { - "major:0": "3" + "major:0": "7" }, "type-details": { "abi:3": "x86_64", @@ -7795,6 +8037,7 @@ } }, "displayName": "Google Play ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-32-google_apis_playstore-arm64-v8a", "path": "system-images/android-32/google_apis_playstore/arm64-v8a", @@ -7856,7 +8099,8 @@ } } }, - "displayName": "Google Play Intel x86 Atom_64 System Image", + "displayName": "Google Play Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-32-google_apis_playstore-x86_64", "path": "system-images/android-32/google_apis_playstore/x86_64", @@ -7911,6 +8155,7 @@ } }, "displayName": "Android TV ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-33-android-tv-arm64-v8a", "path": "system-images/android-33/android-tv/arm64-v8a", @@ -7957,6 +8202,7 @@ } }, "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-33-android-tv-x86", "path": "system-images/android-33/android-tv/x86", @@ -7977,14 +8223,90 @@ } } }, + "android-wear": { + "arm64-v8a": { + "archives": [ + { + "os": "all", + "sha1": "d1d540281261cf23895004a18705b62a53928fe6", + "size": 976844607, + "url": "https://dl.google.com/android/repository/sys-img/android-wear/arm64-v8a-33_r02.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "Wear OS 4 - Preview ARM 64 v8a System Image", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "system-image-33-android-wear-arm64-v8a", + "path": "system-images/android-33/android-wear/arm64-v8a", + "revision": "33-android-wear-arm64-v8a", + "revision-details": { + "major:0": "2" + }, + "type-details": { + "abi:2": "arm64-v8a", + "api-level:0": "33", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:1": { + "display:1": "Wear OS 4 - Preview", + "id:0": "android-wear" + } + } + }, + "x86_64": { + "archives": [ + { + "os": "all", + "sha1": "91f88f49e9484a86f18600fbfdfd281619b5ce79", + "size": 1013350511, + "url": "https://dl.google.com/android/repository/sys-img/android-wear/x86_64-33_r02.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "Wear OS 4 - Preview Intel x86_64 Atom System Image", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "system-image-33-android-wear-x86_64", + "path": "system-images/android-33/android-wear/x86_64", + "revision": "33-android-wear-x86_64", + "revision-details": { + "major:0": "2" + }, + "type-details": { + "abi:2": "x86_64", + "api-level:0": "33", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:1": { + "display:1": "Wear OS 4 - Preview", + "id:0": "android-wear" + } + } + } + }, "google_apis": { "arm64-v8a": { "archives": [ { "os": "all", - "sha1": "8e7733de150ad1a912d63f90a11a1de705b5ddcf", - "size": 1619645676, - "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-33_r08.zip" + "sha1": "5efee22c6b46ca0b0614d2881e1f8170fbf5649d", + "size": 1629988084, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-33_r13.zip" } ], "dependencies": { @@ -8005,12 +8327,13 @@ } }, "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-33-google_apis-arm64-v8a", "path": "system-images/android-33/google_apis/arm64-v8a", "revision": "33-google_apis-arm64-v8a", "revision-details": { - "major:0": "8" + "major:0": "13" }, "type-details": { "abi:3": "arm64-v8a", @@ -8032,9 +8355,9 @@ "archives": [ { "os": "all", - "sha1": "6f5210b87ca249aa6ea2a25bb6d5598c19fa9372", - "size": 1510438727, - "url": "https://dl.google.com/android/repository/sys-img/google_apis/x86_64-33_r08.zip" + "sha1": "50bc7f4082ea5dcb2e51fd65ddf243f934bcb40a", + "size": 1545116967, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/x86_64-33_r13.zip" } ], "dependencies": { @@ -8054,13 +8377,14 @@ } } }, - "displayName": "Google APIs Intel x86 Atom_64 System Image", - "license": "android-sdk-license", + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, + "license": "android-sdk-arm-dbt-license", "name": "system-image-33-google_apis-x86_64", "path": "system-images/android-33/google_apis/x86_64", "revision": "33-google_apis-x86_64", "revision-details": { - "major:0": "8" + "major:0": "13" }, "type-details": { "abi:3": "x86_64", @@ -8084,15 +8408,15 @@ "archives": [ { "os": "macosx", - "sha1": "831cfe87d12eb5dd9d107ca2dfb203d52ca7b217", - "size": 1582091204, - "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-33_r07-darwin.zip" + "sha1": "51169278b759ce1f347a235497729bf5b558ecb2", + "size": 1475820733, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-33_r01-darwin_ext05.zip" }, { "os": "linux", - "sha1": "831cfe87d12eb5dd9d107ca2dfb203d52ca7b217", - "size": 1582091204, - "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-33_r07-linux.zip" + "sha1": "51169278b759ce1f347a235497729bf5b558ecb2", + "size": 1475820733, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-33_r01-linux_ext05.zip" } ], "dependencies": { @@ -8113,6 +8437,7 @@ } }, "displayName": "Google Play ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-33-google_apis_playstore-arm64-v8a", "path": "system-images/android-33/google_apis_playstore/arm64-v8a", @@ -8140,9 +8465,9 @@ "archives": [ { "os": "all", - "sha1": "b7491eecf45556bd96f7b7a80c020b18a8a7df0d", - "size": 1481773028, - "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-33_r07.zip" + "sha1": "e80584a2c9f8ba863a3fa961efc6d8866650f2eb", + "size": 1479931636, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-33_r01_ext05.zip" } ], "dependencies": { @@ -8162,7 +8487,8 @@ } } }, - "displayName": "Google Play Intel x86 Atom_64 System Image", + "displayName": "Google Play Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-license", "name": "system-image-33-google_apis_playstore-x86_64", "path": "system-images/android-33/google_apis_playstore/x86_64", @@ -8188,21 +8514,333 @@ } } }, + "34": { + "android-tv": { + "arm64-v8a": { + "archives": [ + { + "os": "all", + "sha1": "d8ec0e59b3ba2c5d43cfc403bc1baffff40007ac", + "size": 880769986, + "url": "https://dl.google.com/android/repository/sys-img/android-tv/arm64-v8a-34_r01.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "28", + "micro:2": "6", + "minor:1": "1" + } + } + }, + "displayName": "Android TV ARM 64 v8a System Image", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "system-image-34-android-tv-arm64-v8a", + "path": "system-images/android-34/android-tv/arm64-v8a", + "revision": "34-android-tv-arm64-v8a", + "revision-details": { + "major:0": "1" + }, + "type-details": { + "abi:2": "arm64-v8a", + "api-level:0": "34", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:1": { + "display:1": "Android TV", + "id:0": "android-tv" + } + } + }, + "x86": { + "archives": [ + { + "os": "all", + "sha1": "33257a883decee2c120893f739d3a1806afdc3ca", + "size": 868584259, + "url": "https://dl.google.com/android/repository/sys-img/android-tv/x86-34_r01.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "28", + "micro:2": "6", + "minor:1": "1" + } + } + }, + "displayName": "Android TV Intel x86 Atom System Image", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "system-image-34-android-tv-x86", + "path": "system-images/android-34/android-tv/x86", + "revision": "34-android-tv-x86", + "revision-details": { + "major:0": "1" + }, + "type-details": { + "abi:2": "x86", + "api-level:0": "34", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:1": { + "display:1": "Android TV", + "id:0": "android-tv" + } + } + } + }, + "google_apis": { + "arm64-v8a": { + "archives": [ + { + "os": "all", + "sha1": "e910dfb0002f52753933399ea93957023d2d2e60", + "size": 1592115349, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-34_r07.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "32", + "micro:2": "8", + "minor:1": "1" + } + } + }, + "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19579, + "license": "android-sdk-arm-dbt-license", + "name": "system-image-34-google_apis-arm64-v8a", + "path": "system-images/android-34/google_apis/arm64-v8a", + "revision": "34-google_apis-arm64-v8a", + "revision-details": { + "major:0": "7" + }, + "type-details": { + "abi:3": "arm64-v8a", + "api-level:0": "34", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:1": { + "display:1": "Google APIs", + "id:0": "google_apis" + }, + "vendor:2": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + }, + "x86_64": { + "archives": [ + { + "os": "all", + "sha1": "ad1a351d22ea0cfb3fe30201da3d410c24d9fd9d", + "size": 1545718157, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/x86_64-34_r07.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "32", + "micro:2": "8", + "minor:1": "1" + } + } + }, + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "system-image-34-google_apis-x86_64", + "path": "system-images/android-34/google_apis/x86_64", + "revision": "34-google_apis-x86_64", + "revision-details": { + "major:0": "7" + }, + "type-details": { + "abi:3": "x86_64", + "api-level:0": "34", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:1": { + "display:1": "Google APIs", + "id:0": "google_apis" + }, + "vendor:2": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + } + }, + "google_apis_playstore": { + "arm64-v8a": { + "archives": [ + { + "os": "macosx", + "sha1": "43aa221d54537389d69ac49111b352362af490b8", + "size": 1553043568, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-34_r07-darwin.zip" + }, + { + "os": "linux", + "sha1": "43aa221d54537389d69ac49111b352362af490b8", + "size": 1553043568, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-34_r07-linux.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "32", + "micro:2": "8", + "minor:1": "1" + } + } + }, + "displayName": "Google Play ARM 64 v8a System Image", + "last-available-day": 19579, + "license": "android-sdk-arm-dbt-license", + "name": "system-image-34-google_apis_playstore-arm64-v8a", + "path": "system-images/android-34/google_apis_playstore/arm64-v8a", + "revision": "34-google_apis_playstore-arm64-v8a", + "revision-details": { + "major:0": "7" + }, + "type-details": { + "abi:3": "arm64-v8a", + "api-level:0": "34", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:1": { + "display:1": "Google Play", + "id:0": "google_apis_playstore" + }, + "vendor:2": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + }, + "x86_64": { + "archives": [ + { + "os": "all", + "sha1": "29d3e349cc906f3eec80c8238898ebaed6e62233", + "size": 1514892655, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-34_r07.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "32", + "micro:2": "8", + "minor:1": "1" + } + } + }, + "displayName": "Google Play Intel x86_64 Atom System Image", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "system-image-34-google_apis_playstore-x86_64", + "path": "system-images/android-34/google_apis_playstore/x86_64", + "revision": "34-google_apis_playstore-x86_64", + "revision-details": { + "major:0": "7" + }, + "type-details": { + "abi:3": "x86_64", + "api-level:0": "34", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:1": { + "display:1": "Google Play", + "id:0": "google_apis_playstore" + }, + "vendor:2": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + } + } + }, "TiramisuPrivacySandbox": { "google_apis_playstore": { "arm64-v8a": { "archives": [ { "os": "macosx", - "sha1": "069cdb5926cef729c8f14897cdc70e47acfe6736", - "size": 1489462208, - "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-TiramisuPrivacySandbox_r08-darwin.zip" + "sha1": "d4cb5f1b985cb9f6ee093a00a910c5afc1bb0912", + "size": 1592946784, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-TiramisuPrivacySandbox_r09-darwin.zip" }, { "os": "linux", - "sha1": "069cdb5926cef729c8f14897cdc70e47acfe6736", - "size": 1489462208, - "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-TiramisuPrivacySandbox_r08-linux.zip" + "sha1": "d4cb5f1b985cb9f6ee093a00a910c5afc1bb0912", + "size": 1592946784, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-TiramisuPrivacySandbox_r09-linux.zip" } ], "dependencies": { @@ -8223,12 +8861,13 @@ } }, "displayName": "Google Play ARM 64 v8a System Image", + "last-available-day": 19579, "license": "android-sdk-arm-dbt-license", "name": "system-image-TiramisuPrivacySandbox-google_apis_playstore-arm64-v8a", "path": "system-images/android-TiramisuPrivacySandbox/google_apis_playstore/arm64-v8a", "revision": "TiramisuPrivacySandbox-google_apis_playstore-arm64-v8a", "revision-details": { - "major:0": "8" + "major:0": "9" }, "type-details": { "abi:4": "arm64-v8a", @@ -8251,9 +8890,9 @@ "archives": [ { "os": "all", - "sha1": "7ae1658d066353e9f079afe694bdc17c446c0c88", - "size": 1493513570, - "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-TiramisuPrivacySandbox_r08.zip" + "sha1": "4893f6e62413e97e2bad5f183319d65d3947a375", + "size": 1492912127, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-TiramisuPrivacySandbox_r09.zip" } ], "dependencies": { @@ -8273,13 +8912,14 @@ } } }, - "displayName": "Google Play Intel x86 Atom_64 System Image", + "displayName": "Google Play Intel x86_64 Atom System Image", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "system-image-TiramisuPrivacySandbox-google_apis_playstore-x86_64", "path": "system-images/android-TiramisuPrivacySandbox/google_apis_playstore/x86_64", "revision": "TiramisuPrivacySandbox-google_apis_playstore-x86_64", "revision-details": { - "major:0": "8" + "major:0": "9" }, "type-details": { "abi:4": "x86_64", @@ -8299,6 +8939,340 @@ } } } + }, + "UpsideDownCake": { + "google_apis": { + "arm64-v8a": { + "archives": [ + { + "os": "all", + "sha1": "2335c0cf2c76cb1883a6d6ee38e6fff99989596f", + "size": 1549237055, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-UpsideDownCake_r04.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "32", + "micro:2": "8", + "minor:1": "1" + } + } + }, + "displayName": "Google APIs ARM 64 v8a System Image", + "last-available-day": 19489, + "license": "android-sdk-arm-dbt-license", + "name": "system-image-UpsideDownCake-google_apis-arm64-v8a", + "path": "system-images/android-UpsideDownCake/google_apis/arm64-v8a", + "revision": "UpsideDownCake-google_apis-arm64-v8a", + "revision-details": { + "major:0": "4" + }, + "type-details": { + "abi:4": "arm64-v8a", + "api-level:0": "33", + "codename:1": "UpsideDownCake", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:2": { + "display:1": "Google APIs", + "id:0": "google_apis" + }, + "vendor:3": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + }, + "x86_64": { + "archives": [ + { + "os": "all", + "sha1": "15a514144f57865a84abbd6df8e6897c80bb8b88", + "size": 1491492723, + "url": "https://dl.google.com/android/repository/sys-img/google_apis/x86_64-UpsideDownCake_r04.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "32", + "micro:2": "8", + "minor:1": "1" + } + } + }, + "displayName": "Google APIs Intel x86_64 Atom System Image", + "last-available-day": 19489, + "license": "android-sdk-preview-license", + "name": "system-image-UpsideDownCake-google_apis-x86_64", + "path": "system-images/android-UpsideDownCake/google_apis/x86_64", + "revision": "UpsideDownCake-google_apis-x86_64", + "revision-details": { + "major:0": "4" + }, + "type-details": { + "abi:4": "x86_64", + "api-level:0": "33", + "codename:1": "UpsideDownCake", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:2": { + "display:1": "Google APIs", + "id:0": "google_apis" + }, + "vendor:3": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + } + }, + "google_apis_playstore": { + "arm64-v8a": { + "archives": [ + { + "os": "macosx", + "sha1": "b9f7a7d25450e2385a8334af688ab862fc723dba", + "size": 1513459071, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-UpsideDownCake_r04-darwin.zip" + }, + { + "os": "linux", + "sha1": "b9f7a7d25450e2385a8334af688ab862fc723dba", + "size": 1513459071, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-UpsideDownCake_r04-linux.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "32", + "micro:2": "8", + "minor:1": "1" + } + } + }, + "displayName": "Google Play ARM 64 v8a System Image", + "last-available-day": 19489, + "license": "android-sdk-arm-dbt-license", + "name": "system-image-UpsideDownCake-google_apis_playstore-arm64-v8a", + "path": "system-images/android-UpsideDownCake/google_apis_playstore/arm64-v8a", + "revision": "UpsideDownCake-google_apis_playstore-arm64-v8a", + "revision-details": { + "major:0": "4" + }, + "type-details": { + "abi:4": "arm64-v8a", + "api-level:0": "33", + "codename:1": "UpsideDownCake", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:2": { + "display:1": "Google Play", + "id:0": "google_apis_playstore" + }, + "vendor:3": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + }, + "x86_64": { + "archives": [ + { + "os": "all", + "sha1": "4647cbb1877cca1394b1a4fff52c644e6220d07a", + "size": 1464098477, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-UpsideDownCake_r04.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "32", + "micro:2": "8", + "minor:1": "1" + } + } + }, + "displayName": "Google Play Intel x86_64 Atom System Image", + "last-available-day": 19489, + "license": "android-sdk-preview-license", + "name": "system-image-UpsideDownCake-google_apis_playstore-x86_64", + "path": "system-images/android-UpsideDownCake/google_apis_playstore/x86_64", + "revision": "UpsideDownCake-google_apis_playstore-x86_64", + "revision-details": { + "major:0": "4" + }, + "type-details": { + "abi:4": "x86_64", + "api-level:0": "33", + "codename:1": "UpsideDownCake", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:2": { + "display:1": "Google Play", + "id:0": "google_apis_playstore" + }, + "vendor:3": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + } + } + }, + "UpsideDownCakePrivacySandbox": { + "google_apis_playstore": { + "arm64-v8a": { + "archives": [ + { + "os": "macosx", + "sha1": "a312b771639410ede98d101e21f0d113201d2cc4", + "size": 1513441966, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-UpsideDownCakePrivacySandbox_r01-darwin.zip" + }, + { + "os": "linux", + "sha1": "a312b771639410ede98d101e21f0d113201d2cc4", + "size": 1513441966, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/arm64-v8a-UpsideDownCakePrivacySandbox_r01-linux.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "32", + "micro:2": "8", + "minor:1": "1" + } + } + }, + "displayName": "Google Play ARM 64 v8a System Image", + "last-available-day": 19579, + "license": "android-sdk-arm-dbt-license", + "name": "system-image-UpsideDownCakePrivacySandbox-google_apis_playstore-arm64-v8a", + "path": "system-images/android-UpsideDownCakePrivacySandbox/google_apis_playstore/arm64-v8a", + "revision": "UpsideDownCakePrivacySandbox-google_apis_playstore-arm64-v8a", + "revision-details": { + "major:0": "1" + }, + "type-details": { + "abi:4": "arm64-v8a", + "api-level:0": "33", + "codename:1": "UpsideDownCakePrivacySandbox", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:2": { + "display:1": "Google Play", + "id:0": "google_apis_playstore" + }, + "vendor:3": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + }, + "x86_64": { + "archives": [ + { + "os": "all", + "sha1": "687378b8490f67bbb9b081fdf50c3c86f7f6a6bb", + "size": 1464123578, + "url": "https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-UpsideDownCakePrivacySandbox_r01.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + }, + "dependency:1": { + "element-attributes": { + "path": "emulator" + }, + "min-revision:0": { + "major:0": "32", + "micro:2": "8", + "minor:1": "1" + } + } + }, + "displayName": "Google Play Intel x86_64 Atom System Image", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "system-image-UpsideDownCakePrivacySandbox-google_apis_playstore-x86_64", + "path": "system-images/android-UpsideDownCakePrivacySandbox/google_apis_playstore/x86_64", + "revision": "UpsideDownCakePrivacySandbox-google_apis_playstore-x86_64", + "revision-details": { + "major:0": "1" + }, + "type-details": { + "abi:4": "x86_64", + "api-level:0": "33", + "codename:1": "UpsideDownCakePrivacySandbox", + "element-attributes": { + "xsi:type": "ns12:sysImgDetailsType" + }, + "tag:2": { + "display:1": "Google Play", + "id:0": "google_apis_playstore" + }, + "vendor:3": { + "display:1": "Google Inc.", + "id:0": "google" + } + } + } + } } }, "licenses": { @@ -8358,6 +9332,7 @@ } }, "displayName": "Android SDK Build-Tools 17", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8403,6 +9378,7 @@ } }, "displayName": "Android SDK Build-Tools 18.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8448,6 +9424,7 @@ } }, "displayName": "Android SDK Build-Tools 18.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8493,6 +9470,7 @@ } }, "displayName": "Android SDK Build-Tools 18.1.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8538,6 +9516,7 @@ } }, "displayName": "Android SDK Build-Tools 19", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8583,6 +9562,7 @@ } }, "displayName": "Android SDK Build-Tools 19.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8628,6 +9608,7 @@ } }, "displayName": "Android SDK Build-Tools 19.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8673,6 +9654,7 @@ } }, "displayName": "Android SDK Build-Tools 19.0.3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8718,6 +9700,7 @@ } }, "displayName": "Android SDK Build-Tools 19.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/19.1.0", @@ -8762,6 +9745,7 @@ } }, "displayName": "Android SDK Build-Tools 20", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/20.0.0", @@ -8806,6 +9790,7 @@ } }, "displayName": "Android SDK Build-Tools 21", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8851,6 +9836,7 @@ } }, "displayName": "Android SDK Build-Tools 21.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8896,6 +9882,7 @@ } }, "displayName": "Android SDK Build-Tools 21.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8941,6 +9928,7 @@ } }, "displayName": "Android SDK Build-Tools 21.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -8986,6 +9974,7 @@ } }, "displayName": "Android SDK Build-Tools 21.1.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -9031,6 +10020,7 @@ } }, "displayName": "Android SDK Build-Tools 21.1.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/21.1.2", @@ -9075,6 +10065,7 @@ } }, "displayName": "Android SDK Build-Tools 22", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -9120,6 +10111,7 @@ } }, "displayName": "Android SDK Build-Tools 22.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/22.0.1", @@ -9164,6 +10156,7 @@ } }, "displayName": "Android SDK Build-Tools 23", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "obsolete": "true", @@ -9209,6 +10202,7 @@ } }, "displayName": "Android SDK Build-Tools 23.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/23.0.1", @@ -9253,6 +10247,7 @@ } }, "displayName": "Android SDK Build-Tools 23.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/23.0.2", @@ -9297,6 +10292,7 @@ } }, "displayName": "Android SDK Build-Tools 23.0.3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/23.0.3", @@ -9341,6 +10337,7 @@ } }, "displayName": "Android SDK Build-Tools 24", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/24.0.0", @@ -9385,6 +10382,7 @@ } }, "displayName": "Android SDK Build-Tools 24.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/24.0.1", @@ -9429,6 +10427,7 @@ } }, "displayName": "Android SDK Build-Tools 24.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/24.0.2", @@ -9473,6 +10472,7 @@ } }, "displayName": "Android SDK Build-Tools 24.0.3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/24.0.3", @@ -9517,6 +10517,7 @@ } }, "displayName": "Android SDK Build-Tools 25", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/25.0.0", @@ -9561,6 +10562,7 @@ } }, "displayName": "Android SDK Build-Tools 25.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/25.0.1", @@ -9605,6 +10607,7 @@ } }, "displayName": "Android SDK Build-Tools 25.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/25.0.2", @@ -9649,6 +10652,7 @@ } }, "displayName": "Android SDK Build-Tools 25.0.3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/25.0.3", @@ -9693,6 +10697,7 @@ } }, "displayName": "Android SDK Build-Tools 26", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/26.0.0", @@ -9737,6 +10742,7 @@ } }, "displayName": "Android SDK Build-Tools 26.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/26.0.1", @@ -9781,6 +10787,7 @@ } }, "displayName": "Android SDK Build-Tools 26.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/26.0.2", @@ -9825,6 +10832,7 @@ } }, "displayName": "Android SDK Build-Tools 26.0.3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/26.0.3", @@ -9869,6 +10877,7 @@ } }, "displayName": "Android SDK Build-Tools 27", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/27.0.0", @@ -9913,6 +10922,7 @@ } }, "displayName": "Android SDK Build-Tools 27.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/27.0.1", @@ -9957,6 +10967,7 @@ } }, "displayName": "Android SDK Build-Tools 27.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/27.0.2", @@ -10001,6 +11012,7 @@ } }, "displayName": "Android SDK Build-Tools 27.0.3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/27.0.3", @@ -10045,6 +11057,7 @@ } }, "displayName": "Android SDK Build-Tools 28", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/28.0.0", @@ -10089,6 +11102,7 @@ } }, "displayName": "Android SDK Build-Tools 28-rc1", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "build-tools", "obsolete": "true", @@ -10135,6 +11149,7 @@ } }, "displayName": "Android SDK Build-Tools 28-rc2", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "build-tools", "obsolete": "true", @@ -10181,6 +11196,7 @@ } }, "displayName": "Android SDK Build-Tools 28.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/28.0.1", @@ -10225,6 +11241,7 @@ } }, "displayName": "Android SDK Build-Tools 28.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/28.0.2", @@ -10269,6 +11286,7 @@ } }, "displayName": "Android SDK Build-Tools 28.0.3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/28.0.3", @@ -10313,6 +11331,7 @@ } }, "displayName": "Android SDK Build-Tools 29", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/29.0.0", @@ -10357,6 +11376,7 @@ } }, "displayName": "Android SDK Build-Tools 29-rc1", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "build-tools", "obsolete": "true", @@ -10403,6 +11423,7 @@ } }, "displayName": "Android SDK Build-Tools 29-rc2", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "build-tools", "obsolete": "true", @@ -10449,6 +11470,7 @@ } }, "displayName": "Android SDK Build-Tools 29-rc3", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "build-tools", "obsolete": "true", @@ -10495,6 +11517,7 @@ } }, "displayName": "Android SDK Build-Tools 29.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/29.0.1", @@ -10539,6 +11562,7 @@ } }, "displayName": "Android SDK Build-Tools 29.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/29.0.2", @@ -10583,6 +11607,7 @@ } }, "displayName": "Android SDK Build-Tools 29.0.3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/29.0.3", @@ -10627,6 +11652,7 @@ } }, "displayName": "Android SDK Build-Tools 30", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/30.0.0", @@ -10671,6 +11697,7 @@ } }, "displayName": "Android SDK Build-Tools 30.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/30.0.1", @@ -10715,6 +11742,7 @@ } }, "displayName": "Android SDK Build-Tools 30.0.2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/30.0.2", @@ -10759,6 +11787,7 @@ } }, "displayName": "Android SDK Build-Tools 30.0.3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/30.0.3", @@ -10796,6 +11825,7 @@ } ], "displayName": "Android SDK Build-Tools 31", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/31.0.0", @@ -10833,6 +11863,7 @@ } ], "displayName": "Android SDK Build-Tools 32", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/32.0.0", @@ -10870,6 +11901,7 @@ } ], "displayName": "Android SDK Build-Tools 32.1-rc1", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "build-tools", "path": "build-tools/32.1.0-rc1", @@ -10908,6 +11940,7 @@ } ], "displayName": "Android SDK Build-Tools 33", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/33.0.0", @@ -10945,6 +11978,7 @@ } ], "displayName": "Android SDK Build-Tools 33.0.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "build-tools", "path": "build-tools/33.0.1", @@ -10959,6 +11993,238 @@ "xsi:type": "ns5:genericDetailsType" } } + }, + "33.0.2": { + "archives": [ + { + "os": "linux", + "sha1": "9def17c815f46ac09024ebb674466d39d039255c", + "size": 56003588, + "url": "https://dl.google.com/android/repository/build-tools_r33.0.2-linux.zip" + }, + { + "os": "macosx", + "sha1": "482fd9244332cb3e7435f229a22552459b68b3ff", + "size": 60013768, + "url": "https://dl.google.com/android/repository/build-tools_r33.0.2-macosx.zip" + }, + { + "os": "windows", + "sha1": "1f33813c884a039f242b386e9127d3a96915066f", + "size": 55630250, + "url": "https://dl.google.com/android/repository/build-tools_r33.0.2-windows.zip" + } + ], + "displayName": "Android SDK Build-Tools 33.0.2", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "build-tools", + "path": "build-tools/33.0.2", + "revision": "33.0.2", + "revision-details": { + "major:0": "33", + "micro:2": "2", + "minor:1": "0" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "34.0.0": { + "archives": [ + { + "os": "linux", + "sha1": "d6d58e0c6925a9e4d9a541e84cd1f405c2f9d2a9", + "size": 61224257, + "url": "https://dl.google.com/android/repository/build-tools_r34-linux.zip" + }, + { + "os": "macosx", + "sha1": "00e1301387028f33753e38274401694e1a27c62f", + "size": 76559180, + "url": "https://dl.google.com/android/repository/build-tools_r34-macosx.zip" + }, + { + "os": "windows", + "sha1": "62cfde1b6fcc3ad12a4d2ba1b537e752768bfd47", + "size": 58253258, + "url": "https://dl.google.com/android/repository/build-tools_r34-windows.zip" + } + ], + "displayName": "Android SDK Build-Tools 34", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "build-tools", + "path": "build-tools/34.0.0", + "revision": "34.0.0", + "revision-details": { + "major:0": "34", + "micro:2": "0", + "minor:1": "0" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "34.0.0-rc1": { + "archives": [ + { + "os": "linux", + "sha1": "fec0a16d0c2fab6576fd58f6aa2e69a561ab1128", + "size": 60468599, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc1-linux.zip" + }, + { + "os": "macosx", + "sha1": "1e3847d449ce6124ffbf528db601f3dfab25e77e", + "size": 62640488, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc1-macosx.zip" + }, + { + "os": "windows", + "sha1": "73dca92f84827749882bd0ac501c4befdf3ab878", + "size": 57791540, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc1-windows.zip" + } + ], + "displayName": "Android SDK Build-Tools 34-rc1", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "build-tools", + "path": "build-tools/34.0.0-rc1", + "revision": "34.0.0-rc1", + "revision-details": { + "major:0": "34", + "micro:2": "0", + "minor:1": "0", + "preview:3": "1" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "34.0.0-rc2": { + "archives": [ + { + "os": "linux", + "sha1": "bce35f1524d2ea5f6326809dc7accff0ee2fe370", + "size": 60835777, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc2-linux.zip" + }, + { + "os": "macosx", + "sha1": "c47d9c9d040567b1b62eefc1a6306b5acebe3a76", + "size": 63005203, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc2-macosx.zip" + }, + { + "os": "windows", + "sha1": "60c51d073ac760fdec647b9fecf086d1a35f7841", + "size": 58246192, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc2-windows.zip" + } + ], + "displayName": "Android SDK Build-Tools 34-rc2", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "build-tools", + "path": "build-tools/34.0.0-rc2", + "revision": "34.0.0-rc2", + "revision-details": { + "major:0": "34", + "micro:2": "0", + "minor:1": "0", + "preview:3": "2" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "34.0.0-rc3": { + "archives": [ + { + "os": "linux", + "sha1": "0bcb893e8b009f1da3d538be47c6ae5907884bf6", + "size": 61165322, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc3-linux.zip" + }, + { + "os": "macosx", + "sha1": "97db9e5009971021ca18bb62043764b68f756ede", + "size": 76497941, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc3-macosx.zip" + }, + { + "os": "windows", + "sha1": "78fa4ca752017c3217786af16c513f44a5042433", + "size": 58326432, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc3-windows.zip" + } + ], + "displayName": "Android SDK Build-Tools 34-rc3", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "build-tools", + "path": "build-tools/34.0.0-rc3", + "revision": "34.0.0-rc3", + "revision-details": { + "major:0": "34", + "micro:2": "0", + "minor:1": "0", + "preview:3": "3" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "34.0.0-rc4": { + "archives": [ + { + "os": "linux", + "sha1": "61f7cfa64786bffbf6c6c9a3d74d025a07239928", + "size": 61206867, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc4-linux.zip" + }, + { + "os": "macosx", + "sha1": "522431b33cd7fa1407914a8fa66a27bfe1755cbb", + "size": 76553187, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc4-macosx.zip" + }, + { + "os": "windows", + "sha1": "699f1cb99a8de88b1746ce12302d6c2ddce81186", + "size": 58219308, + "url": "https://dl.google.com/android/repository/build-tools_r34-rc4-windows.zip" + } + ], + "displayName": "Android SDK Build-Tools 34-rc4", + "last-available-day": 19489, + "license": "android-sdk-preview-license", + "name": "build-tools", + "path": "build-tools/34.0.0-rc4", + "revision": "34.0.0-rc4", + "revision-details": { + "major:0": "34", + "micro:2": "0", + "minor:1": "0", + "preview:3": "4" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } } }, "cmake": { @@ -10984,6 +12250,7 @@ } ], "displayName": "CMake 3.10.2.4988404", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmake", "path": "cmake/3.10.2.4988404", @@ -11021,6 +12288,7 @@ } ], "displayName": "CMake 3.18.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmake", "path": "cmake/3.18.1", @@ -11058,6 +12326,7 @@ } ], "displayName": "CMake 3.22.1", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmake", "path": "cmake/3.22.1", @@ -11095,6 +12364,7 @@ } ], "displayName": "CMake 3.6.4111459", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmake", "path": "cmake/3.6.4111459", @@ -11134,6 +12404,7 @@ } ], "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmdline-tools", "path": "cmdline-tools/1.0", @@ -11148,6 +12419,232 @@ } } }, + "10.0": { + "archives": [ + { + "os": "linux", + "sha1": "a787f0c35d3970f2ad634f7d91a2e7bc49e2c7f5", + "size": 138733165, + "url": "https://dl.google.com/android/repository/commandlinetools-linux-9862592_latest.zip" + }, + { + "os": "macosx", + "sha1": "2a0c97c8d9b11f9a64be0a7058bcdbf1aaab9910", + "size": 138733149, + "url": "https://dl.google.com/android/repository/commandlinetools-mac-9862592_latest.zip" + }, + { + "os": "windows", + "sha1": "5a03c5ce16f4c99ffe7bded82798b01b07a79bc0", + "size": 138709020, + "url": "https://dl.google.com/android/repository/commandlinetools-win-9862592_latest.zip" + } + ], + "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "cmdline-tools", + "path": "cmdline-tools/10.0", + "revision": "10.0", + "revision-details": { + "major:0": "10", + "minor:1": "0" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "10.0-rc04": { + "archives": [ + { + "os": "linux", + "sha1": "fe41906d2ce82df4cde74fe258e0ccdb283de60a", + "size": 138718717, + "url": "https://dl.google.com/android/repository/commandlinetools-linux-9645777_latest.zip" + }, + { + "os": "macosx", + "sha1": "021540982a843ae2c9b4e0a5c2034b29681b4f70", + "size": 138718701, + "url": "https://dl.google.com/android/repository/commandlinetools-mac-9645777_latest.zip" + }, + { + "os": "windows", + "sha1": "9c3877a2926c1e73af981964b0f4381a6d68fb21", + "size": 138694572, + "url": "https://dl.google.com/android/repository/commandlinetools-win-9645777_latest.zip" + } + ], + "displayName": "Android SDK Command-line Tools", + "last-available-day": 19489, + "license": "android-sdk-preview-license", + "name": "cmdline-tools", + "path": "cmdline-tools/10.0-beta04", + "revision": "10.0-rc04", + "revision-details": { + "major:0": "10", + "minor:1": "0", + "preview:2": "04" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "11.0": { + "archives": [ + { + "os": "linux", + "sha1": "87b485c7283cba69e41c10f05bf832d2fd691552", + "size": 148832188, + "url": "https://dl.google.com/android/repository/commandlinetools-linux-10406996_latest.zip" + }, + { + "os": "macosx", + "sha1": "4b831e6a978ce9170fc49a8010e2ece4be790c73", + "size": 148832172, + "url": "https://dl.google.com/android/repository/commandlinetools-mac-10406996_latest.zip" + }, + { + "os": "windows", + "sha1": "9b0082db87cf1738866f80160f497b8a53e149a3", + "size": 148808043, + "url": "https://dl.google.com/android/repository/commandlinetools-win-10406996_latest.zip" + } + ], + "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "cmdline-tools", + "path": "cmdline-tools/11.0", + "revision": "11.0", + "revision-details": { + "major:0": "11", + "minor:1": "0" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "11.0-rc01": { + "archives": [ + { + "os": "linux", + "sha1": "26048ffc9a0b0b6ef0fe491e3796486d2387f043", + "size": 148831286, + "url": "https://dl.google.com/android/repository/commandlinetools-linux-10320515_latest.zip" + }, + { + "os": "macosx", + "sha1": "8cf501a4efbcc3be6bc15a48ad17fcda8bf03116", + "size": 148831270, + "url": "https://dl.google.com/android/repository/commandlinetools-mac-10320515_latest.zip" + }, + { + "os": "windows", + "sha1": "fe8694f50bf5b132c0c92f4a695f51aac71c8f27", + "size": 148807141, + "url": "https://dl.google.com/android/repository/commandlinetools-win-10320515_latest.zip" + } + ], + "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "cmdline-tools", + "path": "cmdline-tools/11.0-rc01", + "revision": "11.0-rc01", + "revision-details": { + "major:0": "11", + "minor:1": "0", + "preview:2": "01" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "11.0-rc07": { + "archives": [ + { + "os": "linux", + "sha1": "c43e4fb8567c4625e8daf4cee0a5490f826a5442", + "size": 147822296, + "url": "https://dl.google.com/android/repository/commandlinetools-linux-9644228_latest.zip" + }, + { + "os": "macosx", + "sha1": "2c97234849128cb75b0691cf652ab098707c610c", + "size": 147822280, + "url": "https://dl.google.com/android/repository/commandlinetools-mac-9644228_latest.zip" + }, + { + "os": "windows", + "sha1": "2bfc8fad022acce100a5b0583def1ca5bc56eff1", + "size": 147798151, + "url": "https://dl.google.com/android/repository/commandlinetools-win-9644228_latest.zip" + } + ], + "displayName": "Android SDK Command-line Tools", + "last-available-day": 19489, + "license": "android-sdk-preview-license", + "name": "cmdline-tools", + "path": "cmdline-tools/11.0-alpha07", + "revision": "11.0-rc07", + "revision-details": { + "major:0": "11", + "minor:1": "0", + "preview:2": "07" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "12.0-rc15": { + "archives": [ + { + "os": "linux", + "sha1": "9f67d98e686616bf92122b03051f02f695b11415", + "size": 153543827, + "url": "https://dl.google.com/android/repository/commandlinetools-linux-10572941_latest.zip" + }, + { + "os": "macosx", + "sha1": "feac1c4ad5e78e506cb55216181f3c5b58219e90", + "size": 153543811, + "url": "https://dl.google.com/android/repository/commandlinetools-mac-10572941_latest.zip" + }, + { + "os": "windows", + "sha1": "4956c615fa087f5a716ffde76684085366c5a5bf", + "size": 153519682, + "url": "https://dl.google.com/android/repository/commandlinetools-win-10572941_latest.zip" + } + ], + "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "cmdline-tools", + "path": "cmdline-tools/12.0-alpha15", + "revision": "12.0-rc15", + "revision-details": { + "major:0": "12", + "minor:1": "0", + "preview:2": "15" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, "2.0": { "archives": [ { @@ -11170,6 +12667,7 @@ } ], "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmdline-tools", "obsolete": "true", @@ -11207,6 +12705,7 @@ } ], "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmdline-tools", "path": "cmdline-tools/2.1", @@ -11243,6 +12742,7 @@ } ], "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmdline-tools", "path": "cmdline-tools/3.0", @@ -11279,6 +12779,7 @@ } ], "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmdline-tools", "path": "cmdline-tools/4.0", @@ -11315,6 +12816,7 @@ } ], "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmdline-tools", "path": "cmdline-tools/5.0", @@ -11351,6 +12853,7 @@ } ], "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmdline-tools", "path": "cmdline-tools/6.0", @@ -11387,6 +12890,7 @@ } ], "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmdline-tools", "path": "cmdline-tools/7.0", @@ -11423,6 +12927,7 @@ } ], "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, "license": "android-sdk-license", "name": "cmdline-tools", "path": "cmdline-tools/8.0", @@ -11436,6 +12941,43 @@ "xsi:type": "ns5:genericDetailsType" } } + }, + "9.0": { + "archives": [ + { + "os": "linux", + "sha1": "7f92d6e0783a6d73ade5396fe4cfcb58544ef14b", + "size": 133507477, + "url": "https://dl.google.com/android/repository/commandlinetools-linux-9477386_latest.zip" + }, + { + "os": "macosx", + "sha1": "587441bc37d957857c1f654726eb7e04ee9ca3e0", + "size": 133507463, + "url": "https://dl.google.com/android/repository/commandlinetools-mac-9477386_latest.zip" + }, + { + "os": "windows", + "sha1": "f8cd24223fee3b4cff857c9435caa72be0d08b70", + "size": 133486337, + "url": "https://dl.google.com/android/repository/commandlinetools-win-9477386_latest.zip" + } + ], + "displayName": "Android SDK Command-line Tools", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "cmdline-tools", + "path": "cmdline-tools/9.0", + "revision": "9.0", + "revision-details": { + "major:0": "9", + "minor:1": "0" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } } }, "emulator": { @@ -11468,6 +13010,7 @@ } }, "displayName": "Android Emulator", + "last-available-day": 19469, "license": "android-sdk-license", "name": "emulator", "path": "emulator", @@ -11512,6 +13055,7 @@ } }, "displayName": "Android Emulator", + "last-available-day": 19469, "license": "android-sdk-license", "name": "emulator", "path": "emulator", @@ -11527,6 +13071,141 @@ } } }, + "32.1.10": { + "archives": [ + { + "os": "macosx", + "sha1": "518eaa8575a2e5ae7bbb19847e0c25b7968a9e91", + "size": 309316195, + "url": "https://dl.google.com/android/repository/emulator-darwin_x64-9475343.zip" + }, + { + "os": "linux", + "sha1": "71ef457eeeee6b55382abf4a5aaab5de7426e383", + "size": 270160041, + "url": "https://dl.google.com/android/repository/emulator-linux_x64-9475343.zip" + }, + { + "os": "windows", + "sha1": "a53b8e1026325b48cb722d91deeb128947971b8f", + "size": 333004087, + "url": "https://dl.google.com/android/repository/emulator-windows_x64-9475343.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "Android Emulator", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "emulator", + "path": "emulator", + "revision": "32.1.10", + "revision-details": { + "major:0": "32", + "micro:2": "10", + "minor:1": "1" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "32.1.12": { + "archives": [ + { + "os": "linux", + "sha1": "556fb884d6e72b597bf5c1fa959f59744994fb68", + "size": 270165820, + "url": "https://dl.google.com/android/repository/emulator-linux_x64-9751036.zip" + }, + { + "os": "windows", + "sha1": "0ee17dd9b4410d38dc2f6a6227e899d6910b2c55", + "size": 332999329, + "url": "https://dl.google.com/android/repository/emulator-windows_x64-9751036.zip" + }, + { + "os": "macosx", + "sha1": "d37d6e301f36d8f0797ca96a3fd6b8ee5f8d46ae", + "size": 307219070, + "url": "https://dl.google.com/android/repository/emulator-darwin_x64-9751036.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "Android Emulator", + "last-available-day": 19489, + "license": "android-sdk-license", + "name": "emulator", + "path": "emulator", + "revision": "32.1.12", + "revision-details": { + "major:0": "32", + "micro:2": "12", + "minor:1": "1" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "32.1.14": { + "archives": [ + { + "os": "linux", + "sha1": "04bab7711660fc9891fd5dec347a9f533a87af1a", + "size": 270178945, + "url": "https://dl.google.com/android/repository/emulator-linux_x64-10330179.zip" + }, + { + "os": "windows", + "sha1": "f039bd816f82cda85ee4a2e14497bd00a1998867", + "size": 333010879, + "url": "https://dl.google.com/android/repository/emulator-windows_x64-10330179.zip" + }, + { + "os": "macosx", + "sha1": "3db11e3541bfced7dbaadc976a13045fd7e1bbcc", + "size": 309337702, + "url": "https://dl.google.com/android/repository/emulator-darwin_x64-10330179.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "Android Emulator", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "emulator", + "path": "emulator", + "revision": "32.1.14", + "revision-details": { + "major:0": "32", + "micro:2": "14", + "minor:1": "1" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, "32.1.8": { "archives": [ { @@ -11556,6 +13235,7 @@ } }, "displayName": "Android Emulator", + "last-available-day": 19469, "license": "android-sdk-preview-license", "name": "emulator", "path": "emulator", @@ -11570,6 +13250,186 @@ "xsi:type": "ns5:genericDetailsType" } } + }, + "33.1.10": { + "archives": [ + { + "os": "macosx", + "sha1": "f38b9ec7e9c9ff3b8c4022e7f9baa1d6622634a0", + "size": 325272345, + "url": "https://dl.google.com/android/repository/emulator-darwin_x64-10078095.zip" + }, + { + "os": "linux", + "sha1": "e97f77ce116ff8fb13bd8f89a2097cc4ab1dbc67", + "size": 180494623, + "url": "https://dl.google.com/android/repository/emulator-linux_x64-10078095.zip" + }, + { + "os": "windows", + "sha1": "8738b20ee568c4e6a84b66b1fa848517db646c47", + "size": 354011689, + "url": "https://dl.google.com/android/repository/emulator-windows_x64-10078095.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "Android Emulator", + "last-available-day": 19489, + "license": "android-sdk-preview-license", + "name": "emulator", + "path": "emulator", + "revision": "33.1.10", + "revision-details": { + "major:0": "33", + "micro:2": "10", + "minor:1": "1" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "33.1.17": { + "archives": [ + { + "os": "macosx", + "sha1": "cd989b0594ebe9382749b3a5dc026acb326e4de0", + "size": 341193257, + "url": "https://dl.google.com/android/repository/emulator-darwin_x64-10594030.zip" + }, + { + "os": "linux", + "sha1": "72c3fb1591755ee5f5d662114a394d08247efc13", + "size": 261440080, + "url": "https://dl.google.com/android/repository/emulator-linux_x64-10594030.zip" + }, + { + "os": "windows", + "sha1": "cc302b5107e64348e957e4738530bcfbb58212a8", + "size": 363656447, + "url": "https://dl.google.com/android/repository/emulator-windows_x64-10594030.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "Android Emulator", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "emulator", + "path": "emulator", + "revision": "33.1.17", + "revision-details": { + "major:0": "33", + "micro:2": "17", + "minor:1": "1" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "33.1.4": { + "archives": [ + { + "os": "macosx", + "sha1": "33be82356a352b79b742154f7c71f6f13455f27b", + "size": 345831055, + "url": "https://dl.google.com/android/repository/emulator-darwin_x64-9936625.zip" + }, + { + "os": "linux", + "sha1": "cfa28a326b6328e2f3a068ac3030a075471d9df0", + "size": 260288819, + "url": "https://dl.google.com/android/repository/emulator-linux_x64-9936625.zip" + }, + { + "os": "windows", + "sha1": "0aab97a7b84853c8f8c7618191dc23416e2a7a4b", + "size": 373623936, + "url": "https://dl.google.com/android/repository/emulator-windows_x64-9936625.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "Android Emulator", + "last-available-day": 19469, + "license": "android-sdk-preview-license", + "name": "emulator", + "path": "emulator", + "revision": "33.1.4", + "revision-details": { + "major:0": "33", + "micro:2": "4", + "minor:1": "1" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "33.1.6": { + "archives": [ + { + "os": "macosx", + "sha1": "a31338f160fc5fa7973946d34a0d0ce1a2c0759a", + "size": 332134756, + "url": "https://dl.google.com/android/repository/emulator-darwin_x64-10047184.zip" + }, + { + "os": "linux", + "sha1": "9f5c71277f52837d4fb43f72c80103bdf81c0569", + "size": 254562719, + "url": "https://dl.google.com/android/repository/emulator-linux_x64-10047184.zip" + }, + { + "os": "windows", + "sha1": "11ba13425c6fcd275f5e1aa95923f736dd2bcb64", + "size": 361497029, + "url": "https://dl.google.com/android/repository/emulator-windows_x64-10047184.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "Android Emulator", + "last-available-day": 19489, + "license": "android-sdk-preview-license", + "name": "emulator", + "path": "emulator", + "revision": "33.1.6", + "revision-details": { + "major:0": "33", + "micro:2": "6", + "minor:1": "1" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } } }, "extras": { @@ -11595,6 +13455,7 @@ } ], "displayName": "Android Auto Desktop Head Unit Emulator", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras", "path": "extras/google/auto", @@ -11631,6 +13492,7 @@ } ], "displayName": "Android Auto Desktop Head Unit Emulator", + "last-available-day": 19579, "license": "android-sdk-license", "name": "extras", "path": "extras/google/auto", @@ -11676,6 +13538,7 @@ } }, "displayName": "NDK (Side by side) 16.1.4479499", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/16.1.4479499", @@ -11720,6 +13583,7 @@ } }, "displayName": "NDK (Side by side) 17.2.4988734", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/17.2.4988734", @@ -11764,6 +13628,7 @@ } }, "displayName": "NDK (Side by side) 18.1.5063045", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/18.1.5063045", @@ -11808,6 +13673,7 @@ } }, "displayName": "NDK (Side by side) 19.0.5232133", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "obsolete": "true", @@ -11853,6 +13719,7 @@ } }, "displayName": "NDK (Side by side) 19.2.5345600", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/19.2.5345600", @@ -11897,6 +13764,7 @@ } }, "displayName": "NDK (Side by side) 20.0.5392854", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "obsolete": "true", @@ -11943,6 +13811,7 @@ } }, "displayName": "NDK (Side by side) 20.0.5471264", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "obsolete": "true", @@ -11989,6 +13858,7 @@ } }, "displayName": "NDK (Side by side) 20.0.5594570", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/20.0.5594570", @@ -12033,6 +13903,7 @@ } }, "displayName": "NDK (Side by side) 20.1.5948944", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/20.1.5948944", @@ -12077,6 +13948,7 @@ } }, "displayName": "NDK (Side by side) 21.0.6011959", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/21.0.6011959", @@ -12122,6 +13994,7 @@ } }, "displayName": "NDK (Side by side) 21.0.6113669", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/21.0.6113669", @@ -12166,6 +14039,7 @@ } }, "displayName": "NDK (Side by side) 21.1.6210238", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/21.1.6210238", @@ -12211,6 +14085,7 @@ } }, "displayName": "NDK (Side by side) 21.1.6273396", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/21.1.6273396", @@ -12256,6 +14131,7 @@ } }, "displayName": "NDK (Side by side) 21.1.6352462", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/21.1.6352462", @@ -12300,6 +14176,7 @@ } }, "displayName": "NDK (Side by side) 21.1.6363665", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/21.1.6363665", @@ -12345,6 +14222,7 @@ } }, "displayName": "NDK (Side by side) 21.2.6472646", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/21.2.6472646", @@ -12389,6 +14267,7 @@ } }, "displayName": "NDK (Side by side) 21.3.6528147", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/21.3.6528147", @@ -12433,6 +14312,7 @@ } }, "displayName": "NDK (Side by side) 21.4.7075529", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/21.4.7075529", @@ -12477,6 +14357,7 @@ } }, "displayName": "NDK (Side by side) 22.0.6917172", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/22.0.6917172", @@ -12522,6 +14403,7 @@ } }, "displayName": "NDK (Side by side) 22.0.7026061", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/22.0.7026061", @@ -12566,6 +14448,7 @@ } }, "displayName": "NDK (Side by side) 22.1.7171670", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/22.1.7171670", @@ -12610,6 +14493,7 @@ } }, "displayName": "NDK (Side by side) 23.0.7123448", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/23.0.7123448", @@ -12655,6 +14539,7 @@ } }, "displayName": "NDK (Side by side) 23.0.7196353", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/23.0.7196353", @@ -12700,6 +14585,7 @@ } }, "displayName": "NDK (Side by side) 23.0.7272597", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/23.0.7272597", @@ -12745,6 +14631,7 @@ } }, "displayName": "NDK (Side by side) 23.0.7344513", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/23.0.7344513", @@ -12790,6 +14677,7 @@ } }, "displayName": "NDK (Side by side) 23.0.7421159", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/23.0.7421159", @@ -12835,6 +14723,7 @@ } }, "displayName": "NDK (Side by side) 23.0.7530507", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/23.0.7530507", @@ -12880,6 +14769,7 @@ } }, "displayName": "NDK (Side by side) 23.0.7599858", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/23.0.7599858", @@ -12924,6 +14814,7 @@ } }, "displayName": "NDK (Side by side) 23.1.7779620", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/23.1.7779620", @@ -12968,6 +14859,7 @@ } }, "displayName": "NDK (Side by side) 23.2.8568313", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/23.2.8568313", @@ -13012,6 +14904,7 @@ } }, "displayName": "NDK (Side by side) 24.0.7856742", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/24.0.7856742", @@ -13057,6 +14950,7 @@ } }, "displayName": "NDK (Side by side) 24.0.7956693", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/24.0.7956693", @@ -13102,6 +14996,7 @@ } }, "displayName": "NDK (Side by side) 24.0.8079956", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/24.0.8079956", @@ -13147,6 +15042,7 @@ } }, "displayName": "NDK (Side by side) 24.0.8215888", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/24.0.8215888", @@ -13191,6 +15087,7 @@ } }, "displayName": "NDK (Side by side) 25.0.8151533", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/25.0.8151533", @@ -13236,6 +15133,7 @@ } }, "displayName": "NDK (Side by side) 25.0.8221429", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/25.0.8221429", @@ -13281,6 +15179,7 @@ } }, "displayName": "NDK (Side by side) 25.0.8355429", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/25.0.8355429", @@ -13326,6 +15225,7 @@ } }, "displayName": "NDK (Side by side) 25.0.8528842", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk", "path": "ndk/25.0.8528842", @@ -13371,6 +15271,7 @@ } }, "displayName": "NDK (Side by side) 25.0.8775105", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/25.0.8775105", @@ -13415,6 +15316,7 @@ } }, "displayName": "NDK (Side by side) 25.1.8937393", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk", "path": "ndk/25.1.8937393", @@ -13429,6 +15331,97 @@ "xsi:type": "ns5:genericDetailsType" } } + }, + "25.2.9519653": { + "archives": [ + { + "os": "macosx", + "sha1": "75717f3473973c3630e772ec916de380157a593a", + "size": 717255580, + "url": "https://dl.google.com/android/repository/android-ndk-r25c-darwin.zip" + }, + { + "os": "linux", + "sha1": "53af80a1cce9144025b81c78c8cd556bff42bd0e", + "size": 531118193, + "url": "https://dl.google.com/android/repository/android-ndk-r25c-linux.zip" + }, + { + "os": "windows", + "sha1": "18c4a3cd108916f553b1bedad2672f2c6cd85a10", + "size": 467520926, + "url": "https://dl.google.com/android/repository/android-ndk-r25c-windows.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "NDK (Side by side) 25.2.9519653", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "ndk", + "path": "ndk/25.2.9519653", + "revision": "25.2.9519653", + "revision-details": { + "major:0": "25", + "micro:2": "9519653", + "minor:1": "2" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "26.0.10404224-rc1": { + "archives": [ + { + "os": "macosx", + "sha1": "d6dbb122cf3fc52a64ae0d19d120a01ce0052f3b", + "size": 983730774, + "url": "https://dl.google.com/android/repository/android-ndk-r26-beta1-darwin.zip" + }, + { + "os": "linux", + "sha1": "fb5e34313766764d9654b04603e69af813b18799", + "size": 668699088, + "url": "https://dl.google.com/android/repository/android-ndk-r26-beta1-linux.zip" + }, + { + "os": "windows", + "sha1": "bcdc60cf0149fc862cbb5514e7879d8c46c6e1e0", + "size": 664889266, + "url": "https://dl.google.com/android/repository/android-ndk-r26-beta1-windows.zip" + } + ], + "dependencies": { + "dependency:0": { + "element-attributes": { + "path": "patcher;v4" + } + } + }, + "displayName": "NDK (Side by side) 26.0.10404224", + "last-available-day": 19579, + "license": "android-sdk-preview-license", + "name": "ndk", + "path": "ndk/26.0.10404224", + "revision": "26.0.10404224-rc1", + "revision-details": { + "major:0": "26", + "micro:2": "10404224", + "minor:1": "0", + "preview:3": "1" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } } }, "ndk-bundle": { @@ -13461,6 +15454,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -13505,6 +15499,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -13549,6 +15544,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -13593,6 +15589,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "obsolete": "true", @@ -13638,6 +15635,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -13682,6 +15680,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "obsolete": "true", @@ -13728,6 +15727,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "obsolete": "true", @@ -13774,6 +15774,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -13818,6 +15819,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -13862,6 +15864,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -13907,6 +15910,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -13951,6 +15955,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -13996,6 +16001,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14041,6 +16047,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14085,6 +16092,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14130,6 +16138,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14174,6 +16183,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14218,6 +16228,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14262,6 +16273,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14307,6 +16319,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14351,6 +16364,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14395,6 +16409,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14440,6 +16455,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14485,6 +16501,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14530,6 +16547,7 @@ } }, "displayName": "NDK", + "last-available-day": 19579, "license": "android-sdk-preview-license", "name": "ndk-bundle", "path": "ndk-bundle", @@ -14558,6 +16576,7 @@ } ], "displayName": "SDK Patch Applier v4", + "last-available-day": 19579, "license": "android-sdk-license", "name": "patcher", "path": "patcher/v4", @@ -14595,6 +16614,7 @@ } ], "displayName": "Android SDK Platform-Tools", + "last-available-day": 19469, "license": "android-sdk-license", "name": "platform-tools", "path": "platform-tools", @@ -14609,6 +16629,82 @@ "xsi:type": "ns5:genericDetailsType" } } + }, + "34.0.1": { + "archives": [ + { + "os": "macosx", + "sha1": "40f24dc4f2baf911ccb2a53c14bfb69fb8088c57", + "size": 11215880, + "url": "https://dl.google.com/android/repository/platform-tools_r34.0.1-darwin.zip" + }, + { + "os": "linux", + "sha1": "7e8f205a0cfe574ffecb6ec41e6496f5328211fd", + "size": 6336109, + "url": "https://dl.google.com/android/repository/platform-tools_r34.0.1-linux.zip" + }, + { + "os": "windows", + "sha1": "3806f15fddb6ffc5ce38efe78df1708be666a9f4", + "size": 6079357, + "url": "https://dl.google.com/android/repository/platform-tools_r34.0.1-windows.zip" + } + ], + "displayName": "Android SDK Platform-Tools", + "last-available-day": 19489, + "license": "android-sdk-license", + "name": "platform-tools", + "path": "platform-tools", + "revision": "34.0.1", + "revision-details": { + "major:0": "34", + "micro:2": "1", + "minor:1": "0" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } + }, + "34.0.4": { + "archives": [ + { + "os": "macosx", + "sha1": "ecc476b9801fcb6ea61605eedf60f85217964f09", + "size": 11208015, + "url": "https://dl.google.com/android/repository/platform-tools_r34.0.4-darwin.zip" + }, + { + "os": "linux", + "sha1": "faaac1c05af0e3fa20baee6e8970d96fb53bfe58", + "size": 6325905, + "url": "https://dl.google.com/android/repository/platform-tools_r34.0.4-linux.zip" + }, + { + "os": "windows", + "sha1": "d245eedc17259b15e799c312e9014f78aea3da21", + "size": 5992467, + "url": "https://dl.google.com/android/repository/platform-tools_r34.0.4-windows.zip" + } + ], + "displayName": "Android SDK Platform-Tools", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "platform-tools", + "path": "platform-tools", + "revision": "34.0.4", + "revision-details": { + "major:0": "34", + "micro:2": "4", + "minor:1": "0" + }, + "type-details": { + "element-attributes": { + "xsi:type": "ns5:genericDetailsType" + } + } } }, "platforms": { @@ -14622,6 +16718,7 @@ } ], "displayName": "Android SDK Platform 10", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-10", @@ -14653,6 +16750,7 @@ } ], "displayName": "Android SDK Platform 11", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-11", @@ -14684,6 +16782,7 @@ } ], "displayName": "Android SDK Platform 12", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-12", @@ -14715,6 +16814,7 @@ } ], "displayName": "Android SDK Platform 13", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-13", @@ -14746,6 +16846,7 @@ } ], "displayName": "Android SDK Platform 14", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-14", @@ -14777,6 +16878,7 @@ } ], "displayName": "Android SDK Platform 15", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-15", @@ -14808,6 +16910,7 @@ } ], "displayName": "Android SDK Platform 16", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-16", @@ -14839,6 +16942,7 @@ } ], "displayName": "Android SDK Platform 17", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-17", @@ -14870,6 +16974,7 @@ } ], "displayName": "Android SDK Platform 18", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-18", @@ -14901,6 +17006,7 @@ } ], "displayName": "Android SDK Platform 19", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-19", @@ -14944,6 +17050,7 @@ } ], "displayName": "Android SDK Platform 2", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "obsolete": "true", @@ -14976,6 +17083,7 @@ } ], "displayName": "Android SDK Platform 20", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-20", @@ -15007,6 +17115,7 @@ } ], "displayName": "Android SDK Platform 21", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-21", @@ -15038,6 +17147,7 @@ } ], "displayName": "Android SDK Platform 22", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-22", @@ -15069,6 +17179,7 @@ } ], "displayName": "Android SDK Platform 23", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-23", @@ -15100,6 +17211,7 @@ } ], "displayName": "Android SDK Platform 24", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-24", @@ -15131,6 +17243,7 @@ } ], "displayName": "Android SDK Platform 25", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-25", @@ -15162,6 +17275,7 @@ } ], "displayName": "Android SDK Platform 26", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-26", @@ -15193,6 +17307,7 @@ } ], "displayName": "Android SDK Platform 27", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-27", @@ -15224,6 +17339,7 @@ } ], "displayName": "Android SDK Platform 28", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-28", @@ -15255,6 +17371,7 @@ } ], "displayName": "Android SDK Platform 29", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-29", @@ -15298,6 +17415,7 @@ } ], "displayName": "Android SDK Platform 3", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "obsolete": "true", @@ -15330,6 +17448,7 @@ } ], "displayName": "Android SDK Platform 30", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-30", @@ -15361,6 +17480,7 @@ } ], "displayName": "Android SDK Platform 31", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-31", @@ -15392,6 +17512,7 @@ } ], "displayName": "Android SDK Platform 32", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-32", @@ -15422,13 +17543,14 @@ "url": "https://dl.google.com/android/repository/platform-33_r02.zip" } ], - "displayName": "Android SDK Platform 33", + "displayName": "Android SDK Platform 33-ext5", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-33", "revision": "33", "revision-details": { - "major:0": "2" + "major:0": "1" }, "type-details": { "api-level:0": "33", @@ -15444,6 +17566,38 @@ } } }, + "34": { + "archives": [ + { + "os": "all", + "sha1": "618f593e7d30c1c9ff530d1bf2fec155d47d43e0", + "size": 63180660, + "url": "https://dl.google.com/android/repository/platform-34-ext7_r01.zip" + } + ], + "displayName": "Android SDK Platform 34", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "platforms", + "path": "platforms/android-34", + "revision": "34", + "revision-details": { + "major:0": "1" + }, + "type-details": { + "api-level:0": "34", + "codename:1": { + }, + "element-attributes": { + "xsi:type": "ns11:platformDetailsType" + }, + "layoutlib:2": { + "element-attributes": { + "api": "15" + } + } + } + }, "4": { "archives": [ { @@ -15466,6 +17620,7 @@ } ], "displayName": "Android SDK Platform 4", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "obsolete": "true", @@ -15510,6 +17665,7 @@ } ], "displayName": "Android SDK Platform 5", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "obsolete": "true", @@ -15554,6 +17710,7 @@ } ], "displayName": "Android SDK Platform 6", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "obsolete": "true", @@ -15586,6 +17743,7 @@ } ], "displayName": "Android SDK Platform 7", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-7", @@ -15617,6 +17775,7 @@ } ], "displayName": "Android SDK Platform 8", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-8", @@ -15648,6 +17807,7 @@ } ], "displayName": "Android SDK Platform 9", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-9", @@ -15673,18 +17833,19 @@ "archives": [ { "os": "all", - "sha1": "07f3eb84b8f237e61744967d7aee1225efba25e6", - "size": 67975400, - "url": "https://dl.google.com/android/repository/platform-TiramisuPrivacySandbox_r08.zip" + "sha1": "6bc5e85cd2ea54df4dae036ff20fb0e889a6835e", + "size": 67663071, + "url": "https://dl.google.com/android/repository/platform-TiramisuPrivacySandbox_r09.zip" } ], "displayName": "Android SDK Platform TiramisuPrivacySandbox", + "last-available-day": 19579, "license": "android-sdk-license", "name": "platforms", "path": "platforms/android-TiramisuPrivacySandbox", "revision": "TiramisuPrivacySandbox", "revision-details": { - "major:0": "8" + "major:0": "9" }, "type-details": { "api-level:0": "33", @@ -15698,6 +17859,69 @@ } } } + }, + "UpsideDownCake": { + "archives": [ + { + "os": "all", + "sha1": "a0fe6b17b8ea26c72f4a1feb0234aab6b20fd4be", + "size": 63483782, + "url": "https://dl.google.com/android/repository/platform-UpsideDownCake_r04.zip" + } + ], + "displayName": "Android SDK Platform UpsideDownCake", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "platforms", + "obsolete": "true", + "path": "platforms/android-UpsideDownCake", + "revision": "UpsideDownCake", + "revision-details": { + "major:0": "4" + }, + "type-details": { + "api-level:0": "33", + "codename:1": "UpsideDownCake", + "element-attributes": { + "xsi:type": "ns11:platformDetailsType" + }, + "layoutlib:2": { + "element-attributes": { + "api": "15" + } + } + } + }, + "UpsideDownCakePrivacySandbox": { + "archives": [ + { + "os": "all", + "sha1": "e8d6d1516e2ac0feb0e0ec20bcfb2fce483b961e", + "size": 63911495, + "url": "https://dl.google.com/android/repository/platform-UpsideDownCakePrivacySandbox_r01.zip" + } + ], + "displayName": "Android SDK Platform UpsideDownCakePrivacySandbox", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "platforms", + "path": "platforms/android-UpsideDownCakePrivacySandbox", + "revision": "UpsideDownCakePrivacySandbox", + "revision-details": { + "major:0": "1" + }, + "type-details": { + "api-level:0": "33", + "codename:1": "UpsideDownCakePrivacySandbox", + "element-attributes": { + "xsi:type": "ns11:platformDetailsType" + }, + "layoutlib:2": { + "element-attributes": { + "api": "15" + } + } + } } }, "skiaparser": { @@ -15723,6 +17947,7 @@ } ], "displayName": "Layout Inspector image server for API 31 and T", + "last-available-day": 19469, "license": "android-sdk-license", "name": "skiaparser", "path": "skiaparser/3", @@ -15740,24 +17965,25 @@ "archives": [ { "os": "linux", - "sha1": "36e2c30f7745f4c062129a0fd549d29ab991db41", - "size": 6767192, - "url": "https://dl.google.com/android/repository/skiaparser-7478287-linux.zip" + "sha1": "7fea0f8b5abaaa73b35e7703e54b641d0e60bba1", + "size": 6728126, + "url": "https://dl.google.com/android/repository/skiaparser-9858946-linux-x64.zip" }, { "os": "macosx", - "sha1": "04a834a8ab3efd4612300da7cef7f43a6b257468", - "size": 7401688, - "url": "https://dl.google.com/android/repository/skiaparser-7478287-mac.zip" + "sha1": "d08e3a0dab58ad944c837e331f5b2088a7b683eb", + "size": 7846286, + "url": "https://dl.google.com/android/repository/skiaparser-9858946-mac-x64.zip" }, { "os": "windows", - "sha1": "567f24512f9d9487a3b948032a136261f5d59c92", - "size": 6532776, - "url": "https://dl.google.com/android/repository/skiaparser-7478287-win.zip" + "sha1": "316c255048f2164a8a3e57692b5b232d2db0963f", + "size": 7336670, + "url": "https://dl.google.com/android/repository/skiaparser-9858946-win-x64.zip" } ], "displayName": "Layout Inspector image server for API S", + "last-available-day": 19579, "license": "android-sdk-license", "name": "skiaparser", "path": "skiaparser/2", @@ -15793,6 +18019,7 @@ } ], "displayName": "Layout Inspector image server for API 29-30", + "last-available-day": 19579, "license": "android-sdk-license", "name": "skiaparser", "path": "skiaparser/1", @@ -15818,6 +18045,7 @@ } ], "displayName": "Sources for Android 14", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "obsolete": "true", @@ -15845,6 +18073,7 @@ } ], "displayName": "Sources for Android 15", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-15", @@ -15871,6 +18100,7 @@ } ], "displayName": "Sources for Android 16", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-16", @@ -15897,6 +18127,7 @@ } ], "displayName": "Sources for Android 17", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-17", @@ -15923,6 +18154,7 @@ } ], "displayName": "Sources for Android 18", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-18", @@ -15949,6 +18181,7 @@ } ], "displayName": "Sources for Android 19", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-19", @@ -15975,6 +18208,7 @@ } ], "displayName": "Sources for Android 20", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-20", @@ -16001,6 +18235,7 @@ } ], "displayName": "Sources for Android 21", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-21", @@ -16027,6 +18262,7 @@ } ], "displayName": "Sources for Android 22", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-22", @@ -16053,6 +18289,7 @@ } ], "displayName": "Sources for Android 23", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-23", @@ -16079,6 +18316,7 @@ } ], "displayName": "Sources for Android 24", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-24", @@ -16105,6 +18343,7 @@ } ], "displayName": "Sources for Android 25", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-25", @@ -16131,6 +18370,7 @@ } ], "displayName": "Sources for Android 26", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-26", @@ -16157,6 +18397,7 @@ } ], "displayName": "Sources for Android 27", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-27", @@ -16183,6 +18424,7 @@ } ], "displayName": "Sources for Android 28", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-28", @@ -16209,6 +18451,7 @@ } ], "displayName": "Sources for Android 29", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-29", @@ -16235,6 +18478,7 @@ } ], "displayName": "Sources for Android 30", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-30", @@ -16261,6 +18505,7 @@ } ], "displayName": "Sources for Android 31", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-31", @@ -16287,6 +18532,7 @@ } ], "displayName": "Sources for Android 32", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-32", @@ -16313,6 +18559,7 @@ } ], "displayName": "Sources for Android 33", + "last-available-day": 19579, "license": "android-sdk-license", "name": "sources", "path": "sources/android-33", @@ -16328,6 +18575,33 @@ "xsi:type": "ns11:sourceDetailsType" } } + }, + "34": { + "archives": [ + { + "os": "all", + "sha1": "41f67d064dbe84f32a763d65a05c40285c2fbb70", + "size": 53812451, + "url": "https://dl.google.com/android/repository/sources-34_r01.zip" + } + ], + "displayName": "Sources for Android 34", + "last-available-day": 19579, + "license": "android-sdk-license", + "name": "sources", + "path": "sources/android-34", + "revision": "34", + "revision-details": { + "major:0": "1" + }, + "type-details": { + "api-level:0": "34", + "codename:1": { + }, + "element-attributes": { + "xsi:type": "ns11:sourceDetailsType" + } + } } }, "tools": { @@ -16373,6 +18647,7 @@ } }, "displayName": "Android SDK Tools", + "last-available-day": 19579, "license": "android-sdk-license", "name": "tools", "obsolete": "true", diff --git a/pkgs/development/mobile/androidenv/tools.nix b/pkgs/development/mobile/androidenv/tools.nix index 091b94489479b..0177d8e6f7b77 100644 --- a/pkgs/development/mobile/androidenv/tools.nix +++ b/pkgs/development/mobile/androidenv/tools.nix @@ -6,7 +6,9 @@ deployAndroidPackage { nativeBuildInputs = [ makeWrapper ] ++ lib.optionals (os == "linux") [ autoPatchelfHook ]; buildInputs = lib.optional (os == "linux") ( - (with pkgs; [ glibc freetype fontconfig fontconfig.lib]) + (with pkgs; [ glibc freetype fontconfig fontconfig.lib + stdenv.cc.cc.libgcc or null # fix for https://github.com/NixOS/nixpkgs/issues/226357 + ]) ++ (with pkgs.xorg; [ libX11 libXrender libXext ]) ++ (with pkgsi686Linux; [ glibc xorg.libX11 xorg.libXrender xorg.libXext fontconfig.lib freetype zlib ]) ); diff --git a/pkgs/development/mobile/cordova/default.nix b/pkgs/development/mobile/cordova/default.nix new file mode 100644 index 0000000000000..0a4fec58c2c56 --- /dev/null +++ b/pkgs/development/mobile/cordova/default.nix @@ -0,0 +1,28 @@ +{ lib +, buildNpmPackage +, fetchFromGitHub +}: + +buildNpmPackage rec { + pname = "cordova"; + version = "12.0.0"; + + src = fetchFromGitHub { + owner = "apache"; + repo = "cordova-cli"; + rev = version; + hash = "sha256-fEV7NlRcRpyeRplsdXHI2U4/89DsvKQpVwHD5juiNPo="; + }; + + npmDepsHash = "sha256-ZMxZiwCgqzOBwDXeTfIEwqFVdM9ysWeE5AbX7rUdwIc="; + + dontNpmBuild = true; + + meta = { + description = "Build native mobile applications using HTML, CSS and JavaScript"; + homepage = "https://github.com/apache/cordova-cli"; + license = lib.licenses.asl20; + mainProgram = "cordova"; + maintainers = with lib.maintainers; [ flosse ]; + }; +} diff --git a/pkgs/development/mobile/fdroidcl/default.nix b/pkgs/development/mobile/fdroidcl/default.nix new file mode 100644 index 0000000000000..6b6f676a8d4f0 --- /dev/null +++ b/pkgs/development/mobile/fdroidcl/default.nix @@ -0,0 +1,36 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, android-tools +}: + +buildGoModule rec { + pname = "fdroidcl"; + version = "0.7.0"; + + src = fetchFromGitHub { + owner = "mvdan"; + repo = "fdroidcl"; + rev = "v${version}"; + hash = "sha256-tqhs3b/DHfnGOm9qcM56NSzt1GJflJfbemkp7+nXbug="; + }; + + patches = [ ./go_mod_version_update.patch ]; + + vendorHash = "sha256-BWbwhHjfmMjiRurrZfW/YgIzJUH/hn+7qonD0BcTLxs="; + + postPatch = '' + substituteInPlace adb/{server,device}.go \ + --replace 'exec.Command("adb"' 'exec.Command("${android-tools}/bin/adb"' + ''; + + # TestScript/search attempts to connect to fdroid + doCheck = false; + + meta = with lib; { + description = "F-Droid command line interface written in Go"; + homepage = "https://github.com/mvdan/fdroidcl"; + license = licenses.bsd3; + maintainers = with maintainers; [ aleksana ]; + }; +} diff --git a/pkgs/development/mobile/fdroidcl/go_mod_version_update.patch b/pkgs/development/mobile/fdroidcl/go_mod_version_update.patch new file mode 100644 index 0000000000000..079ea02c0a15e --- /dev/null +++ b/pkgs/development/mobile/fdroidcl/go_mod_version_update.patch @@ -0,0 +1,47 @@ +diff --git a/go.mod b/go.mod +index a482585..5c836dd 100644 +--- a/go.mod ++++ b/go.mod +@@ -1,10 +1,19 @@ + module mvdan.cc/fdroidcl + +-go 1.16 ++go 1.18 + + require ( + github.com/kr/pretty v0.3.0 + github.com/rogpeppe/go-internal v1.9.0 + github.com/schollz/progressbar/v3 v3.13.0 +- gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 // indirect ++) ++ ++require ( ++ github.com/kr/text v0.2.0 // indirect ++ github.com/mattn/go-runewidth v0.0.14 // indirect ++ github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db // indirect ++ github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e // indirect ++ github.com/rivo/uniseg v0.4.3 // indirect ++ golang.org/x/sys v0.4.0 // indirect ++ golang.org/x/term v0.4.0 // indirect + ) +diff --git a/go.sum b/go.sum +index 7befc16..d8523cb 100644 +--- a/go.sum ++++ b/go.sum +@@ -23,8 +23,6 @@ github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJ + github.com/rivo/uniseg v0.4.3 h1:utMvzDsuh3suAEnhH0RdHmoPbU648o6CvXxTx4SBMOw= + github.com/rivo/uniseg v0.4.3/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= + github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= +-github.com/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg= +-github.com/rogpeppe/go-internal v1.8.1/go.mod h1:JeRgkft04UBgHMgCIwADu4Pn6Mtm5d4nPKWu0nJ5d+o= + github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8= + github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs= + github.com/schollz/progressbar/v3 v3.13.0 h1:9TeeWRcjW2qd05I8Kf9knPkW4vLM/hYoa6z9ABvxje8= +@@ -38,7 +36,4 @@ golang.org/x/sys v0.4.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= + golang.org/x/term v0.4.0 h1:O7UWfv5+A2qiuulQk30kVinPoMtoIPeVaKLEgLpVkvg= + golang.org/x/term v0.4.0/go.mod h1:9P2UbLfCdcvo3p/nzKvsmas4TnlujnuoV9hGgYzW1lQ= + gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +-gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= +-gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +-gopkg.in/errgo.v2 v2.1.0 h1:0vLT13EuvQ0hNvakwLuFZ/jYrLp5F3kcWHXdRggjCE8= + gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= diff --git a/pkgs/development/mobile/genymotion/default.nix b/pkgs/development/mobile/genymotion/default.nix index 0659046950014..53c1dc13cdc93 100644 --- a/pkgs/development/mobile/genymotion/default.nix +++ b/pkgs/development/mobile/genymotion/default.nix @@ -24,11 +24,11 @@ let in stdenv.mkDerivation rec { pname = "genymotion"; - version = "3.3.3"; + version = "3.5.0"; src = fetchurl { url = "https://dl.genymotion.com/releases/genymotion-${version}/genymotion-${version}-linux_x64.bin"; name = "genymotion-${version}-linux_x64.bin"; - sha256 = "sha256-8NJgYILOR63tWZc3tHDie79uM1hBnAwJNwGp/h2RHCo="; + sha256 = "sha256-rZyTdVn0mnNLrGPehah62/AvTgUpNEtzn+Di1O3G3Sg="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/mobile/ios-webkit-debug-proxy/0001-Don-t-compile-examples.patch b/pkgs/development/mobile/ios-webkit-debug-proxy/0001-Don-t-compile-examples.patch new file mode 100644 index 0000000000000..2ab6554d9ac49 --- /dev/null +++ b/pkgs/development/mobile/ios-webkit-debug-proxy/0001-Don-t-compile-examples.patch @@ -0,0 +1,23 @@ +diff --git a/Makefile.am b/Makefile.am +index 52dc7a8..407c056 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -2,4 +2,4 @@ + # Copyright 2012 Google Inc. wrightt@google.com + + AUTOMAKE_OPTIONS = foreign +-SUBDIRS = src include examples ++SUBDIRS = src include +diff --git a/configure.ac b/configure.ac +index ac2a278..a4104b7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -82,7 +82,7 @@ fi + + AC_CHECK_FUNCS([memmove memset regcomp select socket strcasecmp strncasecmp strchr strdup strndup strrchr strstr strtol strcasestr getline]) + +-AC_CONFIG_FILES([Makefile src/Makefile include/Makefile examples/Makefile]) ++AC_CONFIG_FILES([Makefile src/Makefile include/Makefile]) + + CFLAGS="${CFLAGS} -Wall -Werror" + diff --git a/pkgs/development/mobile/ios-webkit-debug-proxy/default.nix b/pkgs/development/mobile/ios-webkit-debug-proxy/default.nix new file mode 100644 index 0000000000000..4c9a5a4e35e12 --- /dev/null +++ b/pkgs/development/mobile/ios-webkit-debug-proxy/default.nix @@ -0,0 +1,63 @@ +{ stdenv +, autoconf +, automake +, fetchFromGitHub +, fetchpatch +, lib +, libimobiledevice +, libusb1 +, libplist +, libtool +, openssl +, pkg-config +}: + +stdenv.mkDerivation rec { + pname = "ios-webkit-debug-proxy"; + version = "1.9.0"; + + src = fetchFromGitHub { + owner = "google"; + repo = pname; + rev = "v${version}"; + hash = "sha256-cZ/p/aWET/BXKDrD+qgR+rfTISd+4jPNQFuV8klSLUo="; + }; + + patches = [ + # OpenSSL 3.0 compatibility + (fetchpatch { + url = "https://github.com/google/ios-webkit-debug-proxy/commit/5ba30a2a67f39d25025cadf37c0eafb2e2d2d0a8.patch"; + hash = "sha256-2b9BjG9wkqO+ZfoBYYJvD2Db5Kr0F/MxKMTRsI0ea3s="; + }) + (fetchpatch { + name = "libplist-2.3.0-compatibility.patch"; + url = "https://github.com/google/ios-webkit-debug-proxy/commit/94e4625ea648ece730d33d13224881ab06ad0fce.patch"; + hash = "sha256-2deFAKIcNPDd1loOSe8pWZWs9idIE5Q2+pLkoVQrTLg="; + }) + # Examples compilation breaks with --disable-static, see https://github.com/google/ios-webkit-debug-proxy/issues/399 + ./0001-Don-t-compile-examples.patch + ]; + + outputs = [ "out" "dev" ]; + + nativeBuildInputs = [ autoconf automake libtool pkg-config ]; + buildInputs = [ libimobiledevice libusb1 libplist openssl ]; + + preConfigure = '' + NOCONFIGURE=1 ./autogen.sh + ''; + + enableParallelBuilding = true; + + meta = with lib; { + description = "A DevTools proxy (Chrome Remote Debugging Protocol) for iOS devices (Safari Remote Web Inspector)"; + longDescription = '' + The ios_webkit_debug_proxy (aka iwdp) proxies requests from usbmuxd + daemon over a websocket connection, allowing developers to send commands + to MobileSafari and UIWebViews on real and simulated iOS devices. + ''; + homepage = "https://github.com/google/ios-webkit-debug-proxy"; + license = licenses.bsd3; + maintainers = [ maintainers.abustany ]; + }; +} diff --git a/pkgs/development/mobile/maestro/default.nix b/pkgs/development/mobile/maestro/default.nix index 9427e3d5d5927..2bc34bfcf4350 100644 --- a/pkgs/development/mobile/maestro/default.nix +++ b/pkgs/development/mobile/maestro/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "maestro"; - version = "1.25.0"; + version = "1.32.0"; src = fetchurl { url = "https://github.com/mobile-dev-inc/maestro/releases/download/cli-${version}/maestro.zip"; - sha256 = "0rkm2rgbbr4rbycg2kz5in2wjklv23jr7ms5p49j3bpa6nkv4jq3"; + sha256 = "1bhyg0w6dwgba0ykk898dxs661imcx2s6si3ldwgg01pmxpcsm30"; }; dontUnpack = true; diff --git a/pkgs/development/mobile/titanium-alloy/default.nix b/pkgs/development/mobile/titanium-alloy/default.nix new file mode 100644 index 0000000000000..bb45289e3f40a --- /dev/null +++ b/pkgs/development/mobile/titanium-alloy/default.nix @@ -0,0 +1,29 @@ +{ lib +, buildNpmPackage +, fetchFromGitHub +}: + +buildNpmPackage rec { + pname = "alloy"; + version = "2.0.2"; + + src = fetchFromGitHub { + owner = "tidev"; + repo = "alloy"; + rev = version; + hash = "sha256-s1hAbbUy7k/GacBIk8OMD48/1IUcRcpV3LnrCCZim1A="; + }; + + npmDepsHash = "sha256-YNyFrO6+oFluyk3TlUf/0vdHrgTJ3l5DN801wnpBa6s="; + + dontNpmBuild = true; + + meta = { + changelog = "https://github.com/tidev/alloy/blob/${src.rev}/CHANGELOG.md"; + description = "MVC framework for the Appcelerator Titanium SDK"; + homepage = "https://github.com/tidev/alloy"; + license = lib.licenses.asl20; + mainProgram = "alloy"; + maintainers = with lib.maintainers; [ ]; + }; +} diff --git a/pkgs/development/mobile/titanium/default.nix b/pkgs/development/mobile/titanium/default.nix new file mode 100644 index 0000000000000..0318ceeb18eb0 --- /dev/null +++ b/pkgs/development/mobile/titanium/default.nix @@ -0,0 +1,29 @@ +{ lib +, buildNpmPackage +, fetchFromGitHub +}: + +buildNpmPackage rec { + pname = "titanium"; + version = "6.1.1"; + + src = fetchFromGitHub { + owner = "tidev"; + repo = "titanium-cli"; + rev = "v${version}"; + hash = "sha256-eJHf4vbapCaIVk0Xc0sml14jkFCsS/Gv7ftaFakB5rI="; + }; + + npmDepsHash = "sha256-60r+zqUCSDvQgrjg5SGfZiv87AoGx1XcnbW1ki1sbCM="; + + dontNpmBuild = true; + + meta = { + changelog = "https://github.com/tidev/titanium-cli/blob/${src.rev}/CHANGELOG.md"; + description = "Command Line Tool for creating and building Titanium Mobile applications and modules"; + homepage = "https://github.com/tidev/titanium-cli"; + license = lib.licenses.asl20; + mainProgram = "titanium"; + maintainers = with lib.maintainers; [ ]; + }; +} diff --git a/pkgs/development/mobile/titaniumenv/build-app.nix b/pkgs/development/mobile/titaniumenv/build-app.nix index fa2eeae00b559..42b70c64abe9b 100644 --- a/pkgs/development/mobile/titaniumenv/build-app.nix +++ b/pkgs/development/mobile/titaniumenv/build-app.nix @@ -158,8 +158,7 @@ stdenv.mkDerivation ({ installPhase = '' ${if target == "android" then '' - ${if release then "" - else '' + ${lib.optionalString (!release) '' cp "$(ls build/android/bin/*.apk | grep -v '\-unsigned.apk')" $out ''} diff --git a/pkgs/development/mobile/titaniumenv/default.nix b/pkgs/development/mobile/titaniumenv/default.nix index 151502a5d1602..2f1459ef3e048 100644 --- a/pkgs/development/mobile/titaniumenv/default.nix +++ b/pkgs/development/mobile/titaniumenv/default.nix @@ -12,8 +12,8 @@ rec { }; buildApp = import ./build-app.nix { - inherit (pkgs) stdenv lib python which file jdk nodejs; - inherit (pkgs.nodePackages) alloy titanium; + inherit (pkgs) stdenv lib python which file jdk nodejs titanium; + alloy = pkgs.titanium-alloy; inherit (androidenv) composeAndroidPackages; inherit (xcodeenv) composeXcodeWrapper; inherit titaniumsdk; diff --git a/pkgs/development/mobile/xcodeenv/compose-xcodewrapper.nix b/pkgs/development/mobile/xcodeenv/compose-xcodewrapper.nix index 0a469da418a1c..f1ac578f26ef4 100644 --- a/pkgs/development/mobile/xcodeenv/compose-xcodewrapper.nix +++ b/pkgs/development/mobile/xcodeenv/compose-xcodewrapper.nix @@ -1,10 +1,15 @@ -{stdenv}: -{version ? "11.1", xcodeBaseDir ? "/Applications/Xcode.app"}: +{ stdenv, lib }: +{ version ? "11.1" +, allowHigher ? false +, xcodeBaseDir ? "/Applications/Xcode.app" }: assert stdenv.isDarwin; stdenv.mkDerivation { - name = "xcode-wrapper-"+version; + pname = "xcode-wrapper${lib.optionalString allowHigher "-plus"}"; + inherit version; + # Fails in sandbox. Use `--option sandbox relaxed` or `--option sandbox false`. + __noChroot = true; buildCommand = '' mkdir -p $out/bin cd $out/bin @@ -24,9 +29,15 @@ stdenv.mkDerivation { ln -s "${xcodeBaseDir}/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs" # Check if we have the xcodebuild version that we want - if [ -z "$($out/bin/xcodebuild -version | grep -x 'Xcode ${version}')" ] + currVer=$($out/bin/xcodebuild -version | head -n1) + ${if allowHigher then '' + if [ -z "$(printf '%s\n' "${version}" "$currVer" | sort -V | head -n1)""" != "${version}" ] + '' else '' + if [ -z "$(echo $currVer | grep -x 'Xcode ${version}')" ] + ''} then - echo "We require xcodebuild version: ${version}" + echo "We require xcodebuild version${if allowHigher then " or higher" else ""}: ${version}" + echo "Instead what was found: $currVer" exit 1 fi ''; diff --git a/pkgs/development/mobile/xcodeenv/default.nix b/pkgs/development/mobile/xcodeenv/default.nix index 90642ca7d9ac5..f63ed63c04799 100644 --- a/pkgs/development/mobile/xcodeenv/default.nix +++ b/pkgs/development/mobile/xcodeenv/default.nix @@ -1,15 +1,9 @@ -{ stdenv, lib }: +{ callPackage }: rec { - composeXcodeWrapper = import ./compose-xcodewrapper.nix { - inherit stdenv; - }; + composeXcodeWrapper = callPackage ./compose-xcodewrapper.nix { }; - buildApp = import ./build-app.nix { - inherit stdenv lib composeXcodeWrapper; - }; + buildApp = callPackage ./build-app.nix { inherit composeXcodeWrapper; }; - simulateApp = import ./simulate-app.nix { - inherit stdenv lib composeXcodeWrapper; - }; + simulateApp = callPackage ./simulate-app.nix { inherit composeXcodeWrapper; }; } |