27 lines
708 B
Nix
27 lines
708 B
Nix
|
{ mkShell, cocoapods }:
|
||
|
|
||
|
let
|
||
|
# source of what pod should install
|
||
|
podfileLock = "ios/Podfile.lock";
|
||
|
# current state of pods installed by pod
|
||
|
manifestLock = "ios/Pods/Manifest.lock";
|
||
|
in {
|
||
|
shell = mkShell {
|
||
|
buildInputs = [ cocoapods ];
|
||
|
shellHook = ''
|
||
|
pushd "$STATUS_REACT_HOME" > /dev/null
|
||
|
{
|
||
|
echo "Checking for modifications in ios/Pods..."
|
||
|
if diff -q ${podfileLock} ${manifestLock}; then
|
||
|
echo "No modifications detected."
|
||
|
else
|
||
|
# CocoaPods are trash and can't handle other pod instances running
|
||
|
./scripts/wait-for.sh 240 'pod install'
|
||
|
(cd ios && pod install)
|
||
|
fi
|
||
|
}
|
||
|
popd > /dev/null
|
||
|
'';
|
||
|
};
|
||
|
}
|