{ description = "Flutter 3.13.x"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; config = { android_sdk.accept_license = true; allowUnfree = true; }; }; androidComposition = pkgs.androidenv.composeAndroidPackages { buildToolsVersions = [ "28.0.3" "34.0.0" ]; platformVersions = [ "34" "35" "33" ]; includeNDK = true; ndkVersions = ["26.3.11579264"]; abiVersions = [ "armeabi-v7a" "arm64-v8a" ]; cmakeVersions = [ "3.22.1" ]; }; androidSdk = androidComposition.androidsdk; in { devShell = with pkgs; mkShell rec { ANDROID_SDK_ROOT = "${androidSdk}/libexec/android-sdk"; GRADLE_OPTS = "-Dorg.gradle.project.android.aapt2FromMavenOverride=${androidSdk}/libexec/android-sdk/build-tools/34.0.0/aapt2"; buildInputs = [ flutter androidSdk # The customized SDK that we've made above jdk17 ]; shellHook = '' zsh exit ''; }; }); }