diff --git a/pkgs/development/mobile/titaniumenv/build-app.nix b/pkgs/development/mobile/titaniumenv/build-app.nix
index 2443bfe9aed..fa959035a9e 100644
--- a/pkgs/development/mobile/titaniumenv/build-app.nix
+++ b/pkgs/development/mobile/titaniumenv/build-app.nix
@@ -2,10 +2,12 @@
{ name, src, target, androidPlatformVersions ? [ "8" ], androidAbiVersions ? [ "armeabi" "armeabi-v7a" ], tiVersion ? null
, release ? false, androidKeyStore ? null, androidKeyAlias ? null, androidKeyStorePassword ? null
, iosMobileProvisioningProfile ? null, iosCertificateName ? null, iosCertificate ? null, iosCertificatePassword ? null
+, enableWirelessDistribution ? false, installURL ? null
}:
assert (release && target == "android") -> androidKeyStore != null && androidKeyAlias != null && androidKeyStorePassword != null;
assert (release && target == "iphone") -> iosMobileProvisioningProfile != null && iosCertificateName != null && iosCertificate != null && iosCertificatePassword != null;
+assert enableWirelessDistribution -> installURL != null;
let
androidsdkComposition = androidsdk {
@@ -132,6 +134,15 @@ stdenv.mkDerivation {
cp -av build/iphone/build/* $out
mkdir -p $out/nix-support
echo "file binary-dist \"$(echo $out/Release-iphoneos/*.ipa)\"" > $out/nix-support/hydra-build-products
+
+ ${stdenv.lib.optionalString enableWirelessDistribution ''
+ appname=$(basename $out/Release-iphoneos/*.ipa .ipa)
+ bundleId=$(grep '[a-zA-Z0-9.]*' tiapp.xml | sed -e 's|||' -e 's|||' -e 's/ //g')
+ version=$(grep '[a-zA-Z0-9.]*' tiapp.xml | sed -e 's|||' -e 's|||' -e 's/ //g')
+
+ sed -e "s|@INSTALL_URL@|${installURL}?bundleId=$bundleId\&version=$version\&title=$appname|" ${../xcodeenv/install.html.template} > $out/$appname.html
+ echo "doc install \"$out/$appname.html\"" >> $out/nix-support/hydra-build-products
+ ''}
''
else if target == "iphone" then ""
else throw "Target: ${target} is not supported!"}
diff --git a/pkgs/development/mobile/titaniumenv/examples/default.nix b/pkgs/development/mobile/titaniumenv/examples/default.nix
index e5b43936453..d595db40817 100644
--- a/pkgs/development/mobile/titaniumenv/examples/default.nix
+++ b/pkgs/development/mobile/titaniumenv/examples/default.nix
@@ -5,6 +5,7 @@
, rename ? false
, newBundleId ? "com.example.kitchensink", iosMobileProvisioningProfile ? null, iosCertificate ? null, iosCertificateName ? "Example", iosCertificatePassword ? ""
, allowUnfree ? false
+, enableWirelessDistribution ? false, installURL ? null
}:
let
@@ -90,6 +91,7 @@ rec {
release = true;
rename = true;
inherit newBundleId iosMobileProvisioningProfile iosCertificate iosCertificateName iosCertificatePassword;
+ inherit enableWirelessDistribution installURL;
};
}
diff --git a/pkgs/development/mobile/titaniumenv/examples/kitchensink/default.nix b/pkgs/development/mobile/titaniumenv/examples/kitchensink/default.nix
index 1725c826a52..95372670969 100644
--- a/pkgs/development/mobile/titaniumenv/examples/kitchensink/default.nix
+++ b/pkgs/development/mobile/titaniumenv/examples/kitchensink/default.nix
@@ -1,5 +1,6 @@
{ titaniumenv, fetchgit, target, androidPlatformVersions ? [ "14" ], tiVersion ? "3.2.3.GA", release ? false
, rename ? false, stdenv ? null, newBundleId ? null, iosMobileProvisioningProfile ? null, iosCertificate ? null, iosCertificateName ? null, iosCertificatePassword ? null
+, enableWirelessDistribution ? false, installURL ? null
}:
assert rename -> (stdenv != null && newBundleId != null && iosMobileProvisioningProfile != null && iosCertificate != null && iosCertificateName != null && iosCertificatePassword != null);
@@ -37,4 +38,5 @@ titaniumenv.buildApp {
androidKeyStorePassword = "mykeystore";
inherit iosMobileProvisioningProfile iosCertificate iosCertificateName iosCertificatePassword;
+ inherit enableWirelessDistribution installURL;
}