2022-08-29 23:08:44 +03:00
|
|
|
#!/bin/sh
|
|
|
|
#
|
|
|
|
# Super simple installer. You should probably run this as root.
|
|
|
|
# If you are getting permission issues, this is probably why.
|
|
|
|
#
|
|
|
|
# If this doesn't work for you, or you're not on Linux, just
|
|
|
|
# - locate your Discord folder
|
|
|
|
# - inside the resources folder, create a new folder "app"
|
|
|
|
# - inside app create the files index.js and package.json.
|
|
|
|
# See the two tee commands at the end of the file for their contents
|
|
|
|
|
2022-08-29 23:11:31 +03:00
|
|
|
patcher="$PWD/dist/patcher.js"
|
2022-08-29 23:08:44 +03:00
|
|
|
|
2022-09-16 20:26:03 +03:00
|
|
|
discord_bin="$(which discord)"
|
|
|
|
discord_actual="$(readlink "$discord_bin")"
|
2022-08-29 23:08:44 +03:00
|
|
|
|
2022-09-16 20:26:03 +03:00
|
|
|
if [ -z "$discord_actual" ]; then
|
|
|
|
case "$(head -n1 "$discord_bin")" in
|
|
|
|
# has shebang?
|
|
|
|
\#!/*)
|
|
|
|
# Wrapper script, assume 2nd line has exec electron call and try to match asar path
|
|
|
|
path="$(head -n2 "$discord_bin" | tail -1 | grep -Eo "/.+?/app.asar")"
|
|
|
|
if [ -e "$path" ]; then
|
|
|
|
discord="$(dirname "$path")"
|
|
|
|
else
|
|
|
|
echo "Unsupported Install at $path"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
echo "Unsupported Install.";
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
else
|
|
|
|
discord="$(dirname "$discord_actual")"
|
2022-08-29 23:08:44 +03:00
|
|
|
fi
|
|
|
|
|
2022-09-16 20:26:03 +03:00
|
|
|
resources="$discord/resources"
|
2022-08-29 23:08:44 +03:00
|
|
|
app="$resources/app"
|
2022-09-16 20:26:03 +03:00
|
|
|
app_asar="app.asar"
|
|
|
|
|
|
|
|
if [ ! -e "$resources" ]; then
|
|
|
|
if [ -e "$discord/app.asar.unpacked" ]; then
|
|
|
|
# System Electron Install
|
|
|
|
mv "$discord/app.asar" "$discord/_app.asar"
|
|
|
|
mv "$discord/app.asar.unpacked" "$discord/_app.asar.unpacked"
|
|
|
|
app="$discord/app.asar"
|
|
|
|
app_asar="_app.asar"
|
|
|
|
else
|
|
|
|
echo "Unsupported Install"
|
|
|
|
exit
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
2022-08-29 23:08:44 +03:00
|
|
|
if [ -e "$app" ]; then
|
|
|
|
echo "app folder exists. Looks like your Discord is already modified."
|
|
|
|
exit
|
|
|
|
fi
|
|
|
|
|
|
|
|
mkdir "$app"
|
|
|
|
tee > "$app/index.js" << EOF
|
|
|
|
require("$patcher");
|
2022-09-16 20:26:03 +03:00
|
|
|
require("../$app_asar");
|
2022-08-29 23:08:44 +03:00
|
|
|
EOF
|
|
|
|
|
|
|
|
tee > "$app/package.json" << EOF
|
|
|
|
{
|
|
|
|
"main": "index.js",
|
|
|
|
"name": "discord"
|
|
|
|
}
|
|
|
|
EOF
|