-
Notifications
You must be signed in to change notification settings - Fork 4
/
devenv.nix
82 lines (77 loc) · 1.84 KB
/
devenv.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
{
inputs,
lib,
pkgs,
...
}:
let
pkgs-unstable = import inputs.nixpkgs-unstable { system = pkgs.stdenv.system; };
in
{
env.USE_CCACHE = 1;
env.JAVA_HOME = lib.mkForce pkgs-unstable.jdk17.home;
env.ANDROID_JAVA_HOME = pkgs-unstable.jdk17.home;
enterShell = ''
export PUB_CACHE="$HOME/.pub-cache"
export GRADLE_OPTS="-Dorg.gradle.project.android.aapt2FromMavenOverride=$ANDROID_HOME/build-tools/34.0.0/aapt2"
export LD_LIBRARY_PATH="${pkgs.lib.makeLibraryPath [ pkgs-unstable.sqlite ]}:$LD_LIBRARY_PATH"
'';
packages = [
pkgs-unstable.clang
pkgs-unstable.gtk3
pkgs-unstable.jdk17
pkgs-unstable.libsecret
pkgs-unstable.ninja
pkgs-unstable.pkg-config
pkgs-unstable.pre-commit
pkgs-unstable.sqlite
];
android = {
enable = true;
platforms.version = [
"32"
"33"
"34"
];
abis = [
"arm64-v8a"
"x86_64"
];
emulator = {
enable = true;
version = "34.1.9";
};
flutter = {
enable = true;
package = pkgs-unstable.flutter319;
};
android-studio = {
enable = true;
package = pkgs.android-studio;
};
tools.version = "26.1.1";
cmdLineTools.version = "11.0";
platformTools.version = "34.0.5";
buildTools.version = [
"30.0.3"
"34.0.0"
];
cmake.version = [ "3.22.1" ];
sources.enable = false;
systemImages.enable = true;
systemImageTypes = [ "google_apis_playstore" ];
ndk.enable = true;
googleAPIs.enable = true;
googleTVAddOns.enable = false;
extras = [ "extras;google;gcm" ];
extraLicenses = [
"android-googletv-license"
"android-sdk-arm-dbt-license"
"android-sdk-preview-license"
"google-gdk-license"
"intel-android-extra-license"
"intel-android-sysimage-license"
"mips-android-sysimage-license"
];
};
}