1{ nixpkgs ? <nixpkgs>
2, systems ? [ "x86_64-linux" "x86_64-darwin" ]
3, xcodeVersion ? "6.1.1"
4, xcodeBaseDir ? "/Applications/Xcode.app"
5, tiVersion ? "3.5.1.GA"
6, rename ? false
7, newBundleId ? "com.example.kitchensink", iosMobileProvisioningProfile ? null, iosCertificate ? null, iosCertificateName ? "Example", iosCertificatePassword ? "", iosVersion ? "8.1", iosWwdrCertificate ? null
8, allowUnfree ? false
9, enableWirelessDistribution ? false, installURL ? null
10}:
11
12let
13 pkgs = import nixpkgs { config.allowUnfree = allowUnfree; };
14in
15rec {
16 kitchensink_android_debug = pkgs.lib.genAttrs systems (system:
17 let
18 pkgs = import nixpkgs { inherit system; config.allowUnfree = allowUnfree; };
19 in
20 import ./kitchensink {
21 inherit (pkgs) fetchgit;
22 titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion xcodeBaseDir tiVersion; };
23 inherit tiVersion;
24 target = "android";
25 });
26
27 kitchensink_android_release = pkgs.lib.genAttrs systems (system:
28 let
29 pkgs = import nixpkgs { inherit system; config.allowUnfree = allowUnfree; };
30 in
31 import ./kitchensink {
32 inherit (pkgs) fetchgit;
33 titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion xcodeBaseDir tiVersion; };
34 inherit tiVersion;
35 target = "android";
36 release = true;
37 });
38
39 emulate_kitchensink_debug = pkgs.lib.genAttrs systems (system:
40 let
41 pkgs = import nixpkgs { inherit system; config.allowUnfree = allowUnfree; };
42 in
43 import ./emulate-kitchensink {
44 inherit (pkgs) androidenv;
45 kitchensink = builtins.getAttr system kitchensink_android_debug;
46 });
47
48 emulate_kitchensink_release = pkgs.lib.genAttrs systems (system:
49 let
50 pkgs = import nixpkgs { inherit system; config.allowUnfree = allowUnfree; };
51 in
52 import ./emulate-kitchensink {
53 inherit (pkgs) androidenv;
54 kitchensink = builtins.getAttr system kitchensink_android_release;
55 });
56
57} // (if builtins.elem "x86_64-darwin" systems then
58 let
59 pkgs = import nixpkgs { system = "x86_64-darwin"; };
60 in
61 rec {
62 kitchensink_ios_development = import ./kitchensink {
63 inherit (pkgs) fetchgit;
64 titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion xcodeBaseDir tiVersion; };
65 inherit tiVersion iosVersion;
66 target = "iphone";
67 };
68
69 simulate_kitchensink = import ./simulate-kitchensink {
70 inherit (pkgs) stdenv;
71 xcodeenv = pkgs.xcodeenv.override { version = xcodeVersion; inherit xcodeBaseDir; };
72 kitchensink = kitchensink_ios_development;
73 bundleId = if rename then newBundleId else "com.appcelerator.kitchensink";
74 };
75} else {}) // (if rename then
76 let
77 pkgs = import nixpkgs { system = "x86_64-darwin"; config.allowUnfree = allowUnfree; };
78 in
79 {
80 kitchensink_ipa = import ./kitchensink {
81 inherit (pkgs) stdenv fetchgit;
82 titaniumenv = pkgs.titaniumenv.override { inherit xcodeVersion xcodeBaseDir tiVersion; };
83 target = "iphone";
84 inherit tiVersion;
85 release = true;
86 rename = true;
87 inherit newBundleId iosMobileProvisioningProfile iosCertificate iosCertificateName iosCertificatePassword iosVersion iosWwdrCertificate;
88 inherit enableWirelessDistribution installURL;
89 };
90 }
91
92else {})