Crossover позволяет запускать в среде macOS приложения/игры, предназначенные для Windows. Бесплатный аналог — Porting Kit.
Crossover обойдется в $ 64 доллара, но предусмотрен 14-дневный ознакомительный период, который можно сбрасывать бесконечно. Как это сделать, можно почитать здесь или здесь.
Пример скрипта (суть в том, что из CrossOver.plist удаляем записи FirstRunDate и FirstRunVersion):
#!/usr/bin/env bash CROSSOVER_PATH="/Applications/CrossOver.app/Contents/MacOS" # Kill CrossOver processes while true; do pids=$(pgrep -f "CrossOver") unique_pids=() for pid in "${pids[@]}"; do if [[ -n "$pid" && ! " ${unique_pids[@]} " =~ " ${pid} " ]]; then unique_pids+=("$pid") fi done if [ ${#unique_pids[@]} -gt 0 ]; then echo "Killing CrossOver processes: ${unique_pids[@]}" kill -9 "${unique_pids[@]}" >/dev/null 2>&1 else echo "No CrossOver processes found." break fi sleep 3 done # Reset trial start date of CrossOver while true; do if /usr/libexec/PlistBuddy -c "Print :FirstRunDate" ~/Library/Preferences/com.codeweavers.CrossOver.plist &>/dev/null; then plutil -remove FirstRunDate ~/Library/Preferences/com.codeweavers.CrossOver.plist fi if /usr/libexec/PlistBuddy -c "Print :FirstRunVersion" ~/Library/Preferences/com.codeweavers.CrossOver.plist &>/dev/null; then plutil -remove FirstRunVersion ~/Library/Preferences/com.codeweavers.CrossOver.plist fi if ! /usr/libexec/PlistBuddy -c "Print :FirstRunDate" ~/Library/Preferences/com.codeweavers.CrossOver.plist &>/dev/null; then echo "FirstRunDate not found in plist file. Deletion succesfull." break fi done # Reset trial start date of the bottles while true; do for i in ~/Library/Application\ Support/CrossOver/Bottles/*; do if [ -d "$i" ]; then sed -i '' '/\[Software\\\\CodeWeavers\\\\CrossOver\\\\cxoffice\].*/,+5d' "$i/system.reg" break fi done if ! grep -q '\[Software\\\\CodeWeavers\\\\CrossOver\\\\cxoffice\]' "$i/system.reg"; then echo "Bottle trial reset succesfull." break fi done /usr/bin/osascript -e "display notification \"Crossover Trial Updated\""