Hello there,
I have this flake for running my android project:
{
description = "Android Mobile Development environment";
inputs = {
flake-utils.url = "github:numtide/flake-utils";
nixpkgs.url = "github:NixOS/nixpkgs";
};
outputs = { self, nixpkgs, flake-utils }:
flake-utils.lib.eachSystem [ "x86_64-linux" ] (system:
let
pkgs = import nixpkgs {
inherit system;
config.allowUnfree = true;
config.android_sdk.accept_license = true;
};
buildToolsVersion = "35.0.0";
androidEnv = pkgs.androidenv.override { licenseAccepted = true; };
androidComposition = pkgs.androidenv.composeAndroidPackages {
platformToolsVersion = "35.0.2";
buildToolsVersions = [ buildToolsVersion ];
minPlatformVersion = "34";
abiVersions = [ "x86_64" ];
includeNDK = true;
includeSystemImages = true;
systemImageTypes = [ "google_apis" "google_apis_playstore" ];
includeEmulator = true;
useGoogleAPIs = true;
extraLicenses = [
"android-googletv-license"
"android-sdk-arm-dbt-license"
"android-sdk-license"
"android-sdk-preview-license"
"google-gdk-license"
"intel-android-extra-license"
"intel-android-sysimage-license"
"mips-android-sysimage-license"
];
};
androidSdk = androidComposition.androidsdk;
in {
devShells.default = with pkgs;
mkShell rec {
ANDROID_HOME = "${androidSdk}/libexec/android-sdk";
ANDROID_SDK_ROOT = "${androidSdk}/libexec/android-sdk";
ANDROID_NDK_ROOT = "${ANDROID_HOME}/ndk-bundle";
GRADLE_OPTS =
"-Dorg.gradle.project.android.aapt2FromMavenOverride=${ANDROID_HOME}/libexec/android-sdk/build-tools/${buildToolsVersion}/aapt2";
buildInputs = [(android-studio.withSdk androidSdk) androidSdk];
};
});
}
Now in Android Studio I do find images for API 35 or 34 when creating virtual devices:
But, for whatever reason it does not find the system images for 36 or 36.1:
I’m in no way an expert so if I’m doing something completely stupid there, please let me know.

