From a18da9b6895fa48039fbdca88ada1c3be123e7e2 Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Tue, 9 Jan 2018 13:24:30 +0100 Subject: [PATCH] titaniumenv: add hack to reduce keychain blocking problems --- pkgs/development/mobile/titaniumenv/build-app.nix | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/pkgs/development/mobile/titaniumenv/build-app.nix b/pkgs/development/mobile/titaniumenv/build-app.nix index 4b5d2f45418..660f1bbccab 100644 --- a/pkgs/development/mobile/titaniumenv/build-app.nix +++ b/pkgs/development/mobile/titaniumenv/build-app.nix @@ -19,6 +19,7 @@ let deleteKeychain = '' security default-keychain -s login.keychain security delete-keychain $keychainName + rm -f $HOME/lock-keychain ''; # On macOS, the java executable shows an -unoffical postfix in the version @@ -131,7 +132,18 @@ stdenv.mkDerivation { then ln -s ${titaniumsdk}/modules modules fi - + + # Take precautions to prevent concurrent builds blocking the keychain + while [ -f $HOME/lock-keychain ] + do + echo "Keychain locked, waiting for a couple of seconds, or remove $HOME/lock-keychain to unblock..." + sleep 3 + done + + touch $HOME/lock-keychain + + security default-keychain -s $keychainName + # Do the actual build titanium build --config-file $TMPDIR/config.json --force --no-colors --platform ios --target dist-adhoc --pp-uuid $provisioningId --distribution-name "${iosCertificateName}" --keychain $HOME/Library/Keychains/$keychainName-db --device-family universal --ios-version ${iosVersion} --output-dir $out