1{pkgs, pkgs_i686}:
2
3rec {
4 platformTools = import ./platform-tools.nix {
5 inherit (pkgs) stdenv fetchurl unzip zlib;
6 };
7
8 buildTools = import ./build-tools.nix {
9 inherit (pkgs) stdenv fetchurl unzip zlib file;
10 stdenv_32bit = pkgs_i686.stdenv;
11 zlib_32bit = pkgs_i686.zlib;
12 ncurses_32bit = pkgs_i686.ncurses5;
13 ncurses = pkgs.ncurses5;
14 };
15
16 support = import ./support.nix {
17 inherit (pkgs) stdenv fetchurl unzip;
18 };
19
20 supportRepository = import ./support-repository.nix {
21 inherit (pkgs) stdenv fetchurl unzip;
22 };
23
24 platforms = if (pkgs.stdenv.system == "i686-linux" || pkgs.stdenv.system == "x86_64-linux")
25 then import ./platforms-linux.nix {
26 inherit (pkgs) stdenv fetchurl unzip;
27 }
28 else if pkgs.stdenv.system == "x86_64-darwin"
29 then import ./platforms-macosx.nix {
30 inherit (pkgs) stdenv fetchurl unzip;
31 }
32 else throw "Platform: ${pkgs.stdenv.system} not supported!";
33
34 sysimages = import ./sysimages.nix {
35 inherit (pkgs) stdenv fetchurl unzip;
36 };
37
38 addons = import ./addons.nix {
39 inherit (pkgs) stdenv fetchurl unzip;
40 };
41
42 androidsdk = import ./androidsdk.nix {
43 inherit (pkgs) stdenv fetchurl unzip makeWrapper;
44 inherit (pkgs) zlib glxinfo freetype fontconfig glib gtk atk mesa file alsaLib jdk coreutils libpulseaudio dbus;
45 inherit (pkgs.xorg) libX11 libXext libXrender libxcb libXau libXdmcp libXtst xkeyboardconfig;
46
47 inherit platformTools buildTools support supportRepository platforms sysimages addons;
48
49 stdenv_32bit = pkgs_i686.stdenv;
50 };
51
52 androidsdk_2_1 = androidsdk {
53 platformVersions = [ "7" ];
54 abiVersions = [ "armeabi-v7a" ];
55 useGoogleAPIs = true;
56 };
57
58 androidsdk_2_2 = androidsdk {
59 platformVersions = [ "8" ];
60 abiVersions = [ "armeabi-v7a" ];
61 useGoogleAPIs = true;
62 };
63
64 androidsdk_2_3_3 = androidsdk {
65 platformVersions = [ "10" ];
66 abiVersions = [ "armeabi-v7a" ];
67 useGoogleAPIs = true;
68 };
69
70 androidsdk_3_0 = androidsdk {
71 platformVersions = [ "11" ];
72 abiVersions = [ "armeabi-v7a" ];
73 useGoogleAPIs = true;
74 };
75
76 androidsdk_3_1 = androidsdk {
77 platformVersions = [ "12" ];
78 abiVersions = [ "armeabi-v7a" ];
79 useGoogleAPIs = true;
80 };
81
82 androidsdk_3_2 = androidsdk {
83 platformVersions = [ "13" ];
84 abiVersions = [ "armeabi-v7a" ];
85 useGoogleAPIs = true;
86 };
87
88 androidsdk_4_0 = androidsdk {
89 platformVersions = [ "14" ];
90 abiVersions = [ "armeabi-v7a" ];
91 useGoogleAPIs = true;
92 };
93
94 androidsdk_4_0_3 = androidsdk {
95 platformVersions = [ "15" ];
96 abiVersions = [ "armeabi-v7a" ];
97 useGoogleAPIs = true;
98 };
99
100 androidsdk_4_1 = androidsdk {
101 platformVersions = [ "16" ];
102 abiVersions = [ "armeabi-v7a" ];
103 useGoogleAPIs = true;
104 };
105
106 androidsdk_4_2 = androidsdk {
107 platformVersions = [ "17" ];
108 abiVersions = [ "armeabi-v7a" ];
109 useGoogleAPIs = true;
110 };
111
112 androidsdk_4_3 = androidsdk {
113 platformVersions = [ "18" ];
114 abiVersions = [ "armeabi-v7a" "x86" ];
115 useGoogleAPIs = true;
116 };
117
118 androidsdk_4_4 = androidsdk {
119 platformVersions = [ "19" ];
120 abiVersions = [ "armeabi-v7a" "x86" ];
121 useGoogleAPIs = true;
122 };
123
124 androidsdk_5_0_1 = androidsdk {
125 platformVersions = [ "21" ];
126 abiVersions = [ "armeabi-v7a" "x86" ];
127 useGoogleAPIs = true;
128 };
129
130 androidsdk_5_0_1_extras = androidsdk {
131 platformVersions = [ "21" ];
132 abiVersions = [ "armeabi-v7a" "x86" ];
133 useGoogleAPIs = true;
134 useExtraSupportLibs = true;
135 useGooglePlayServices = true;
136 };
137
138 androidsdk_5_1_1 = androidsdk {
139 platformVersions = [ "22" ];
140 abiVersions = [ "armeabi-v7a" "x86" "x86_64"];
141 useGoogleAPIs = true;
142 };
143
144 androidsdk_5_1_1_extras = androidsdk {
145 platformVersions = [ "22" ];
146 abiVersions = [ "armeabi-v7a" "x86" "x86_64"];
147 useGoogleAPIs = true;
148 useExtraSupportLibs = true;
149 useGooglePlayServices = true;
150 };
151
152 androidsdk_6_0 = androidsdk {
153 platformVersions = [ "23" ];
154 abiVersions = [ "armeabi-v7a" "x86" "x86_64"];
155 useGoogleAPIs = true;
156 };
157
158 androidsdk_6_0_extras = androidsdk {
159 platformVersions = [ "23" ];
160 abiVersions = [ "armeabi-v7a" "x86" "x86_64"];
161 useGoogleAPIs = true;
162 useExtraSupportLibs = true;
163 useGooglePlayServices = true;
164 };
165
166 androidsdk_7_0 = androidsdk {
167 platformVersions = [ "24" ];
168 abiVersions = [ "x86" "x86_64"];
169 useGoogleAPIs = true;
170 };
171
172 androidsdk_7_0_extras = androidsdk {
173 platformVersions = [ "24" ];
174 abiVersions = [ "x86" "x86_64"];
175 useGoogleAPIs = true;
176 useExtraSupportLibs = true;
177 useGooglePlayServices = true;
178 };
179
180 androidndk = import ./androidndk.nix {
181 inherit (pkgs) stdenv fetchurl zlib ncurses p7zip lib makeWrapper;
182 inherit (pkgs) coreutils file findutils gawk gnugrep gnused jdk which;
183 inherit platformTools;
184 };
185
186 androidndk_r8e = import ./androidndk_r8e.nix {
187 inherit (pkgs) stdenv fetchurl zlib ncurses lib makeWrapper;
188 inherit (pkgs) coreutils file findutils gawk gnugrep gnused jdk which;
189 inherit platformTools;
190 };
191
192 buildApp = import ./build-app.nix {
193 inherit (pkgs) stdenv jdk ant gnumake gawk file which;
194 inherit androidsdk androidndk;
195 };
196
197 emulateApp = import ./emulate-app.nix {
198 inherit (pkgs) stdenv;
199 inherit androidsdk;
200 };
201}