otool tips and tricks for MACOSX_DEPLOYMENT_TARGET
https://stackoverflow.com/a/64864364
% cargo new --lib demo
% cd demo
% echo '[lib]' >> Cargo.toml
otool tips and tricks for MACOSX_DEPLOYMENT_TARGET
https://stackoverflow.com/a/64864364
% cargo new --lib demo
% cd demo
% echo '[lib]' >> Cargo.toml
So you've got a cool app in Ruby, and you want to share it with your friends, but they don't love Ruby as much as you.
What do you do? Package it up along with the Ruby runtime and give it to them. Simple right? Maybe not so.
Thankfully smarter cookies than me, have tackled the problem, here is a map of the current state of play
| layout | post |
|---|---|
| title | Apple Silicon and Virtual Machines: Beating the 2 VM Limit |
| date | 2023-08-08 07:00:00 -0600 |
| categories | macOS |
| // simplevm.c: demonstrates Hypervisor.Framework usage in Apple Silicon | |
| // Based on the work by @zhuowei | |
| // @imbushuo - Nov 2020 | |
| // To build: | |
| // Prepare the entitlement with BOTH com.apple.security.hypervisor and com.apple.vm.networking WHEN SIP IS OFF | |
| // Prepare the entitlement com.apple.security.hypervisor and NO com.apple.vm.networking WHEN SIP IS ON | |
| // ^ Per @never_released, tested on 11.0.1, idk why | |
| // clang -o simplevm -O2 -framework Hypervisor -mmacosx-version-min=11.0 simplevm.c | |
| // codesign --entitlements simplevm.entitlements --force -s - simplevm |
Pact-Python currently uses the Ruby core, and for the verification task, utilises the following repository
https://github.com/pact-foundation/pact-provider-verifier
Pact Pythons verifier wrapper: https://github.com/pact-foundation/pact-python/blob/master/pact/verify_wrapper.py Pact Pythons verifier wrapper tests: https://github.com/pact-foundation/pact-python/blob/master/tests/test_verify_wrapper.py
There are a few modes of verification
| FROM --platform=linux/arm64 ruby:2.6.10-alpine | |
| RUN ruby --version && which ruby | |
| RUN apk add bash curl build-base git gcompat && \ | |
| rm -rf /var/lib/apt/lists | |
| # Install homebrew for aarch64 linux | |
| # Uses modified installer script to allow for aarch64 | |
| ENV PATH="/usr/local/bin:$PATH:/home/linuxbrew/.linuxbrew/bin" | |
| # 1. you54f/brew git remote allows successful path lookup on install so you can use a custom ruby version | |
| RUN HOMEBREW_BREW_GIT_REMOTE="https://github.com/you54f/brew" \ | |
| # 2. ./install.sh allows for linux-aarch64 |
| FROM --platform=linux/arm64 ruby:2.6.10-slim | |
| RUN ruby --version && which ruby | |
| RUN apt-get update && \ | |
| apt-get install -y curl build-essential git && \ | |
| apt-get clean && rm -rf /var/lib/apt/lists | |
| # Install homebrew for aarch64 linux | |
| # Uses modified installer script to allow for aarch64 | |
| ENV PATH="/usr/local/bin:$PATH:/home/linuxbrew/.linuxbrew/bin" | |
| # 1. you54f/brew git remote allows successful path lookup on install so you can use a custom ruby version | |
| RUN HOMEBREW_BREW_GIT_REMOTE="https://github.com/you54f/brew" \ |
| #!/usr/bin/env sh | |
| set -e | |
| ## Tested with https://www.shellcheck.net/ | |
| # Usage: (install latest release & latest ruby version) | |
| # $ curl -fsSL https://raw.githubusercontent.com/you54f/traveling-ruby/main/install.sh | sh | |
| # or | |
| # $ wget -q https://raw.githubusercontent.com/you54f/traveling-ruby/main/install.sh -O- | sh | |
| # Options |
| # !/bin/bash -eu | |
| set -e # This needs to be here for windows bash, which doesn't read the #! line above | |
| set -u | |
| SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")"; pwd)" # Figure out where the script is running | |
| . "$SCRIPT_DIR"/../lib/robust-bash.sh | |
| # if [[ "$CIRRUS_RELEASE" == "" ]]; then | |
| # echo "Not a release. No need to deploy!" | |
| # exit 0 |