68 lines
1.4 KiB
Bash
Executable File
68 lines
1.4 KiB
Bash
Executable File
#!/bin/sh
|
|
arRPCdir="$HOME/.local/share/arRPC"
|
|
Vesktopdir="$HOME/.local/share/Vesktop"
|
|
|
|
if [ ! $(which node) ]; then
|
|
echo "Pleases install nodejs and try again."
|
|
exit
|
|
fi
|
|
|
|
install_arRPC () {
|
|
echo "Installing arRPC"
|
|
git clone https://github.com/OpenAsar/arRPC "$arRPCdir"
|
|
cd "$arRPCdir" && npm install
|
|
echo "arRPC installed"
|
|
}
|
|
|
|
install_vesktop () {
|
|
echo "Installing Vesktop"
|
|
pull_vesktop
|
|
build_vesktop
|
|
git clone https://github.com/Vencord/Vesktop $Vesktopdir
|
|
}
|
|
|
|
build_vesktop () {
|
|
export COREPACK_ENABLE_STRICT=0
|
|
cd $Vesktopdir
|
|
pnpm i
|
|
pnpm package:dir
|
|
echo "Vesktop installed"
|
|
}
|
|
|
|
run_arRPC () {
|
|
# skip if already running
|
|
if [ $(pgrep -f 'node src') ]; then return; fi
|
|
echo "Starting arRPC"
|
|
cd "$arRPCdir"
|
|
node src &
|
|
}
|
|
|
|
run_vesktop () {
|
|
echo "Starting Vesktop"
|
|
if [ ! -d $Vesktopdir ]; then install_vesktop; fi
|
|
if [ ! -d $Vesktopdir/dist/linux-unpacked ]; then build_vesktop; fi
|
|
cd $Vesktopdir/dist/linux-unpacked
|
|
./vesktop \
|
|
--enable-features=UseOzonePlatform,WaylandWindowDecorations \
|
|
--ozone-platform-hint=auto
|
|
}
|
|
|
|
if [ ! -d "$arRPCdir" ]; then
|
|
install_arRPC
|
|
fi
|
|
|
|
run_arRPC
|
|
arRPCPID=$(pgrep -f 'node src')
|
|
|
|
run_vesktop
|
|
|
|
echo "Killing arRPC"
|
|
# exit arRPC when Vesktop closes
|
|
echo "Trying to kill $arRPCPID"
|
|
killall node -n $arRPCPID
|
|
if [ ! $(pgrep -f 'node src' ) ]; then
|
|
echo "arRPC killed"
|
|
else
|
|
echo "arRPC could not be killed"
|
|
fi
|