Skip to content

Instantly share code, notes, and snippets.

@ellsies
Last active April 24, 2025 11:43
Crackover (Complete free version of crossover)

CrackOver

Crackover helps you bypass restrictions for the MacOS app, CrossOver.

bash -c "$(curl -fsSL https://gist.github.com/ellsies/e9383c75fd8cd8d5781dac91d7e2360d/raw/install.sh)"

Executing this script will replace the CrossOver binary with a patched version that bypasses the restrictions and time limits.

This script fixes all trial issue, resets the trial period, and fixes all bottle trial periods.

I will update this script as needed to keep it working.

For any help, please leave a comment on this gist, and I will respond as soon as possible.

Disclaimer

This script is for educational purposes only. I am not responsible for any damage caused by this script. Use at your own risk.

#!/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}\""
for file in ~/Library/Application\ Support/CrossOver/Bottles/*/system.reg; do
sed -i -e "/^\\[Software\\\\\\\\CodeWeavers\\\\\\\\CrossOver\\\\\\\\cxoffice\\]/,+6d" "${file}";
done
# This loop finds and deletes .update-timestamp files in each bottle
for update_file in ~/Library/Application\ Support/CrossOver/Bottles/*/.update-timestamp; do
rm -f "${update_file}"
done
/usr/bin/osascript -e "display notification \"bottles fixed: all timestamps removed\""
# and after this execute original crossover
echo "${PWD}" > /tmp/co_log.log
"$($PWD/CrossOver.origin)" >> /tmp/co_log.log
#!/usr/bin/env bash
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'
pids=(`pgrep "${PROC_NAME}"`, `pidof "${PROC_NAME}"`, `ps -Ac | grep -m1 "${PROC_NAME}" | awk '{print $1}'`)
pids=`echo ${pids[*]}|tr ',' ' '`
[ "${pids}" ] && kill -9 `echo "${pids}"` > /dev/null 2>&1
FIX_FILE_LINK="https://gist.githubusercontent.com/ellsies/e9383c75fd8cd8d5781dac91d7e2360d/raw/d4431abd07cdcd83853567b646d0b68bf66c7e6c/Crossover.sh"
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
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'
pids=(`pgrep "${PROC_NAME}"`, `pidof "${PROC_NAME}"`, `ps -Ac | grep -m1 "${PROC_NAME}" | awk '{print $1}'`)
pids=`echo ${pids[*]}|tr ',' ' '`
[ "${pids}" ] && kill -9 `echo "${pids}"` > /dev/null 2>&1
if [ -f CrossOver.origin ]; then
echo 'uninstalling...'
rm CrossOver
mv CrossOver.origin CrossOver
echo 'Done. Please open CrossOver '
osascript -e 'display notification "CrossOver has been uninstalled."'
exit
fi;
echo 'already uninstalled/original file not found. exit.'
exit
@Thingy-1134
Copy link

Screenshot 2024-12-16 at 09 54 22 I received this error after executing the script within Terminal. The script ran without any issues, while both Homebrew and pidof are installed on my computer. I also attempted reinstalling Crossover and the script, but the app refuses to launch. What should I do?

@janekt2000
Copy link

makes crossover not launch

@mv-stns
Copy link

mv-stns commented Feb 13, 2025

Hmm i think we are down

@Entersjkhdfkjdhfksjf
Copy link

This just straightup does not work for me. It used to work, my expired bottle is not getting renewed. Please help.

@Elemperor1
Copy link

Honestly, this is huge; thank you so much for all you do.

@adhamhaithameid
Copy link

when i execute this command:
"bash -c "$(curl -fsSL https://gist.github.com/ellsies/e9383c75fd8cd8d5781dac91d7e2360d/raw/install.sh)""
the crossover app doesn't open at all.
i am using mackbook air with m1 chip

Screenshot 2025-03-13 at 3 38 33 PM

@Entersjkhdfkjdhfksjf
Copy link

when i execute this command: "bash -c "$(curl -fsSL https://gist.github.com/ellsies/e9383c75fd8cd8d5781dac91d7e2360d/raw/install.sh)"" the crossover app doesn't open at all. i am using mackbook air with m1 chip

Screenshot 2025-03-13 at 3 38 33 PM

Lemme guess, it tries to open and then closes?

@adhamhaithameid
Copy link

when i execute this command: "bash -c "$(curl -fsSL https://gist.github.com/ellsies/e9383c75fd8cd8d5781dac91d7e2360d/raw/install.sh)"" the crossover app doesn't open at all. i am using mackbook air with m1 chip
Screenshot 2025-03-13 at 3 38 33 PM

Lemme guess, it tries to open and then closes?

yes

@Entersjkhdfkjdhfksjf
Copy link

when i execute this command: "bash -c "$(curl -fsSL https://gist.github.com/ellsies/e9383c75fd8cd8d5781dac91d7e2360d/raw/install.sh)"" the crossover app doesn't open at all. i am using mackbook air with m1 chip
Screenshot 2025-03-13 at 3 38 33 PM

Lemme guess, it tries to open and then closes?

yes

Uninstall and then reinstall, that is what I had to do

@adhamhaithameid
Copy link

when i execute this command: "bash -c "$(curl -fsSL https://gist.github.com/ellsies/e9383c75fd8cd8d5781dac91d7e2360d/raw/install.sh)"" the crossover app doesn't open at all. i am using mackbook air with m1 chip
Screenshot 2025-03-13 at 3 38 33 PM

Lemme guess, it tries to open and then closes?

yes

Uninstall and then reinstall, that is what I had to do

the app doesn't show up in the Applications folder, how do i uninstall it?

@Entersjkhdfkjdhfksjf
Copy link

when i execute this command: "bash -c "$(curl -fsSL https://gist.github.com/ellsies/e9383c75fd8cd8d5781dac91d7e2360d/raw/install.sh)"" the crossover app doesn't open at all. i am using mackbook air with m1 chip
Screenshot 2025-03-13 at 3 38 33 PM

Lemme guess, it tries to open and then closes?

yes

Uninstall and then reinstall, that is what I had to do

the app doesn't show up in the Applications folder, how do i uninstall it?

There is a uninstall script above. If it still does not work, renew it then uninstall and reinstall a few days before it expires.

@moacdev
Copy link

moacdev commented Mar 28, 2025

Thank you a lot !

Just close CrossOver if open, then open terminal and paste-enter:

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

@maeceloacm1998
Copy link

@moacdev
Up!
This command resolve the problem.

@xd0r14n
Copy link

xd0r14n commented Apr 12, 2025

hi, i ran the necessary scripts to reset the free trial time and it boots properly, saying that i have 14 days. however my bottles have expired and this message pops up.
Screenshot 2025-04-12 at 12 49 00

how could i fix that?

@Entersjkhdfkjdhfksjf
Copy link

hi, i ran the necessary scripts to reset the free trial time and it boots properly, saying that i have 14 days. however my bottles have expired and this message pops up. Screenshot 2025-04-12 at 12 49 00

how could i fix that?

You will need to make a new bottle

@cdoglogan
Copy link

Can someone answer yes or no, is this safe? And is this as simple as pasting "bash -c "$(curl -fsSL https://gist.github.com/ellsies/e9383c75fd8cd8d5781dac91d7e2360d/raw/install.sh)" into the Terminal?

@Entersjkhdfkjdhfksjf
Copy link

Can someone answer yes or no, is this safe? And is this as simple as pasting "bash -c "$(curl -fsSL https://gist.github.com/ellsies/e9383c75fd8cd8d5781dac91d7e2360d/raw/install.sh)" into the Terminal?

Yes

@Kossybml
Copy link

How do I get started on my m1 Mac air, I just downloaded CO. This is day one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment