Skip to content

Instantly share code, notes, and snippets.

@superrnovae
Created March 4, 2021 22:32
Show Gist options
  • Save superrnovae/ff82485e809594ab94c10abc26fa4121 to your computer and use it in GitHub Desktop.
Save superrnovae/ff82485e809594ab94c10abc26fa4121 to your computer and use it in GitHub Desktop.
Fix Discord crash on AMD hackintosh

Discord Crash Fix

Instructions

  1. Install Discord.

  2. Open Terminal.

  3. Copy-paste and execute one of the below methods (enter password if prompted).

Method - 1:

mv /Applications/Discord.app/Contents/MacOS/Discord /Applications/Discord.app/Contents/MacOS/Discord_exec   
sysctl -n machdep.cpu.brand_string | grep FX > /dev/null 2>&1  
x=$(echo $(( $? != 0 ? 5 : 4 )))   
echo "MKL_DEBUG_CPU_TYPE=$x \$(dirname \"\$0\")/Discord_exec" >/Applications/Discord.app/Contents/MacOS/Discord   
chmod +x /Applications/Discord.app/Contents/MacOS/Discord

Method - 2:

mv [ ! -d $HOME/Library/LaunchAgents ] && mkdir $HOME/Library/LaunchAgents   
AGENT=$HOME/Library/LaunchAgents/environment.plist   
sysctl -n machdep.cpu.brand_string | grep FX >/dev/null 2>&1   
x=$(echo $(($? != 0 ? 5 : 4)))   
cat >$AGENT <<EOF   
<?xml version="1.0" encoding="UTF-8"?>   
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">   
<plist version="1.0">   
<dict>   
 <key>Label</key>   
 <string>mkl-debug</string>   
 <key>ProgramArguments</key>   
 <array>   
 <string>sh</string>   
 <string>-c</string>   
    <string>launchctl setenv MKL_DEBUG_CPU_TYPE $x;</string>   
 </array>   
 <key>RunAtLoad</key>   
 <true/>   
</dict>   
</plist>   
EOF   
launchctl load ${AGENT} >/dev/null 2>&1      
launchctl start ${AGENT} >/dev/null 2>&1

Revert Instructions

  1. To revert run one of the below methods in your terminal.

Revert Method - 1:

rm -rf /Applications/Discord.app/Contents/MacOS/Discord
mv /Applications/Discord.app/Contents/MacOS/Discord_exec /Applications/Discord.app/Contents/MacOS/Discord

Revert Method - 2:

AGENT=~/Library/LaunchAgents/environment.plist   
launchctl stop ${AGENT} > /dev/null 2>&1   
launchctl unload ${AGENT} > /dev/null 2>&1   
rm -rf $AGENT

NOTE: METHOD-2 Requires reboot to take effect.
CREDITS: XLNC at AMD-OSX discord server

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