warnings: - vendored versions: github: cirruslabs/tart/releases platforms: - darwin #FIXME proper system for re-using pre-built binaries # we must require the vendor to provide signatures against a published public # key. If they don’t then really we should build ourselves or warn the user # about the fact. # The thing is, we trust the sources implicitly currently because signing is # so rare. The only way wide spread signing will occur is via our protocol. # This only works on macOS, arm64, monterey and above. It requires xcode 14.1 to build build: dependencies: curl.se: '*' script: - mkdir -p "{{prefix}}/bin" - run: curl -LSs https://github.com/cirruslabs/tart/releases/download/{{version.tag}}/tart-$ARCH.tar.gz | tar -xzf - if: '>=2.5' - run: | if test "{{hw.arch}}" = "aarch64"; then curl -LSs https://github.com/cirruslabs/tart/releases/download/{{version.tag}}/tart.tar.gz | tar -xzf - else # not available on x86-64 false fi if: <2.5 - cp -a tart.app "{{prefix}}" - cp props/tart-shim "{{prefix}}"/bin/tart env: aarch64: ARCH: arm64 x86-64: ARCH: amd64 provides: - bin/tart test: script: # FIXME: doesn't work on the older macOS versions we test with in CI, unfortunately - run: test -e /usr/lib/swift/libswift_StringProcessing.dylib || exit 0 if: darwin/x86-64 - ': >empty.ispw' - OUT=$(tart create --from-ipsw empty.ipsw test 2>&1 || true) - 'test "$OUT" = "Error: The restore image failed to load. Unable to create sandbox extensions."' env: TART_HOME: $PWD