bash -c "$(curl -fsSL https://gist.github.com/santaklouse/a137ee51692b74d4cf2cc1bb68ed64ef/raw/install.sh?token=$(date +%s))"
After install script will fix crossover as well as expired bottles (Thanks to @djsmax).
#!/usr/bin/env bash | |
# checck if pidof exists | |
PIDOF="$(which pidof)" | |
# and if not - install it | |
(test "${PIDOF}" && test -f "${PIDOF}") || brew install pidof | |
# find app in default paths | |
CO_PWD=~/Applications/CrossOver.app/Contents/MacOS | |
test -d "${CO_PWD}" || CO_PWD=/Applications/CrossOver.app/Contents/MacOS | |
test -d "${CO_PWD}" || (echo 'unable to detect app path. exiting...' && exit) | |
PWD="${CO_PWD}" | |
cd "${PWD}" | |
PROC_NAME='CrossOver' | |
# get all pids of CrossOver | |
pids=(`pgrep "${PROC_NAME}"`, `pidof "${PROC_NAME}"`, `ps -Ac | grep -m1 "${PROC_NAME}" | awk '{print $1}'`) | |
pids=`echo ${pids[*]}|tr ',' ' '` | |
# kills CrossOver process if it is running | |
[ "${pids}" ] && kill -9 `echo "${pids}"` > /dev/null 2>&1 | |
# wait until app finish | |
sleep 3 | |
# make the current date RFC3339-encoded string representation in UTC time zone | |
DATETIME=`date -u -v -3H '+%Y-%m-%dT%TZ'` | |
# modify time in order to reset trial | |
plutil -replace FirstRunDate -date "${DATETIME}" ~/Library/Preferences/com.codeweavers.CrossOver.plist | |
plutil -replace SULastCheckTime -date "${DATETIME}" ~/Library/Preferences/com.codeweavers.CrossOver.plist | |
# show tooltip notification | |
/usr/bin/osascript -e "display notification \"trial fixed: date changed to ${DATETIME}\"" | |
# reset all bottles | |
for file in ~/Library/Application\ Support/CrossOver/Bottles/*/.{eval,update-timestamp}; do rm -rf "${file}";done | |
# and after this execute original crossover | |
echo "${PWD}" > /tmp/co_log.log | |
"$($PWD/CrossOver.origin)" >> /tmp/co_log.log |
#!/usr/bin/env bash | |
# find app in default paths | |
CO_PWD=~/Applications/CrossOver.app/Contents/MacOS | |
test -d "${CO_PWD}" || CO_PWD=/Applications/CrossOver.app/Contents/MacOS | |
test -d "${CO_PWD}" || (echo 'unable to detect app path. exiting...' && exit) | |
PWD="${CO_PWD}" | |
cd "${PWD}" | |
PROC_NAME='CrossOver' | |
# get all pids of CrossOver | |
pids=(`pgrep "${PROC_NAME}"`, `pidof "${PROC_NAME}"`, `ps -Ac | grep -m1 "${PROC_NAME}" | awk '{print $1}'`) | |
pids=`echo ${pids[*]}|tr ',' ' '` | |
# kills CrossOver process if it is running | |
[ "${pids}" ] && kill -9 `echo "${pids}"` > /dev/null 2>&1 | |
TIMESTAMP=$(date +%s) | |
FIX_FILE_LINK="https://gist.github.com/santaklouse/a137ee51692b74d4cf2cc1bb68ed64ef/raw/CrossOver.sh?token=${TIMESTAMP}" | |
if [ -f CrossOver.origin ]; then | |
echo 'already installed. update and exit.' | |
echo "$(curl -fsSL ${FIX_FILE_LINK})" > CrossOver | |
exit | |
fi; | |
test -f CrossOver.origin || mv CrossOver CrossOver.origin | |
echo "$(curl -fsSL ${FIX_FILE_LINK})" > CrossOver | |
chmod +x CrossOver | |
echo 'Done. Please open CrossOver ' |
#!/usr/bin/env bash | |
# find app in default paths | |
CO_PWD=~/Applications/CrossOver.app/Contents/MacOS | |
test -d "${CO_PWD}" || CO_PWD=/Applications/CrossOver.app/Contents/MacOS | |
test -d "${CO_PWD}" || (echo 'unable to detect app path. exiting...' && exit) | |
PWD="${CO_PWD}" | |
cd "${PWD}" | |
PROC_NAME='CrossOver' | |
# get all pids of CrossOver | |
pids=(`pgrep "${PROC_NAME}"`, `pidof "${PROC_NAME}"`, `ps -Ac | grep -m1 "${PROC_NAME}" | awk '{print $1}'`) | |
pids=`echo ${pids[*]}|tr ',' ' '` | |
# kills CrossOver process if it is running | |
[ "${pids}" ] && kill -9 `echo "${pids}"` > /dev/null 2>&1 | |
if [ -f CrossOver.origin ]; then | |
echo 'original file found. Roll it back and exit.' | |
mv CrossOver.origin CrossOver | |
exit | |
fi; | |
echo 'original file not found.' |
Script here — resets trial, bottle reset included (experimental).
Still works 👀 Resets bottles and everything.
this works way better than other ones listed here, just one command for it all, not saying that the other ones here are bad, just because i'm not experienced and i think this is good for getting it done quickly
imo this one's still the best. Resets everything with one command + if you have games on a different drive or path it allows you to config it if you want
imo this one's still the best. Resets everything with one command + if you have games on a different drive or path it allows you to config it if you want
the command doesnt work for me, i can also edit the resetcrossover.sh to configure the path anyways
@MPT109 what specifically doesent work for you? For me it resets it permanently. As in, I need to run it once and never again (the free trial stays at 14 days)
the command just doesn't run
@MPT109 what specifically doesent work for you? For me it resets it permanently. As in, I need to run it once and never again (the free trial stays at 14 days)
This is working :) thank you guys! Just a quick question regarding the firewall, do you guys always have the firewall enabled all the time while using CrossOver?
This is working :) thank you guys! Just a quick question regarding the firewall, do you guys always have the firewall enabled all the time while using CrossOver?
I do. I had no problems while it was off tho
Did not work for me, running the script in terminal, it still counts down on the trial period days. Can anyone elaborate on how to do it correctly? what I did was put copy paste the link/line from the main post and put it into terminal, hit enter. Also tried this "Script here — resets trial, bottle reset included (experimental)." but it still counts down on the trial period. Im 100% doing something wrong
Did not work for me, running the script in terminal, it still counts down on the trial period days. Can anyone elaborate on how to do it correctly? what I did was put copy paste the link/line from the main post and put it into terminal, hit enter. Also tried this "Script here — resets trial, bottle reset included (experimental)." but it still counts down on the trial period. Im 100% doing something wrong
try to download and run it locally: curl -fsSL "https://raw.githubusercontent.com/xVc323/crossover-trial/main/reset_crossover_fully.sh" -o reset_crossover_fully.sh
chmod +x reset_crossover_fully.sh
./reset_crossover_fully.sh
after that, just run this command to reset: ./reset_crossover_fully.sh
Still works 👀
Resets bottles and everything.