melonvpn-original-cs/install-components

76 lines
3.0 KiB
Bash
Executable File

#!/bin/bash
# arguments
forceAppIndicator="$1"
# new lib folder
sudo mkdir -p /usr/lib/melon-vpn/
# stop and disable daemon first
sudo systemctl stop melonvpndaemon
sudo systemctl disable melonvpndaemon
# copying
sudo cp MelonVPNCore/bin/Release/MelonVPNCore.dll /usr/lib/melon-vpn/
sudo cp MelonVPNCore/bin/Release/Newtonsoft.Json.dll /usr/lib/melon-vpn/
sudo cp MelonVPNConnectedClientUpdate/bin/Release/MelonVPNConnectedClientUpdate.exe /usr/lib/melon-vpn/
sudo cp MelonVPNDaemon/bin/Release/MelonVPNDaemon.exe /usr/lib/melon-vpn/
# check if daemon service exists
if [ -f /etc/systemd/system/melonvpndaemon.service ]; then
echo "[info] Found daemon service at \"/etc/systemd/system/melonvpndaemon.service\" delete this to reinstall the default service"
else
sudo cp MelonVPNDaemon/bin/Release/melonvpndaemon.service /etc/systemd/system/
fi
# make client config folder
sudo mkdir -p /etc/melon-vpn/
# check if client config exists
if [ -f /etc/melon-vpn/client.cfg ]; then
echo "[info] Found config at \"/etc/melon-vpn/client.cfg\" delete this to reinstall the default config"
else
sudo cp MelonVPNDaemon/bin/Release/client.cfg /etc/melon-vpn/
fi
# check if desktop file exists
if [ -f /usr/share/applications/melonvpn.desktop ]; then
echo "[info] Found desktop file at \"/usr/share/applications/melonvpn.desktop\" delete this to reinstall the default one"
else
sudo cp MelonVPNClient/bin/Release/melonvpn.desktop /usr/share/applications/
fi
# change client config to be owned by root
sudo chown root:root /etc/melon-vpn/client.cfg
# copy more files
if [ "$forceAppIndicator" == "yes" ]; then
sudo cp MelonVPNClient/bin/Release/appindicator3-sharp.dll /usr/lib/melon-vpn/
echo "[warning] appindicator3-sharp.dll has been copied as a component, if appindicator was installed through software run ./remove-appindicator3-component"
fi
sudo cp MelonVPNClient/bin/Release/libnotify.net.dll /usr/lib/melon-vpn/
sudo cp MelonVPNClient/bin/Release/MelonVPNClient.exe /usr/lib/melon-vpn/
sudo cp MelonVPNClient/bin/Release/MelonVPNClient.exe.config /usr/lib/melon-vpn/
sudo cp MelonVPNClient/bin/Release/MiniMelonVPNIcon.png /usr/lib/melon-vpn/
sudo cp MelonVPNClient/bin/Release/MiniMelonVPNOnline.png /usr/lib/melon-vpn/
sudo cp MelonVPNClient/bin/Release/MelonVPNDesktopIcon.png /usr/lib/melon-vpn/
sudo cp MelonVPNClient/bin/Release/libappindicator3sharpglue-12.10.0.so /usr/lib/melon-vpn/
# copy app indicator icons
mkdir -p ~/.local/share/icons/hicolor/128x128/apps/
cp MelonVPNClient/bin/Release/MiniMelonVPNIcon.png ~/.local/share/icons/hicolor/128x128/apps/
cp MelonVPNClient/bin/Release/MiniMelonVPNOnline.png ~/.local/share/icons/hicolor/128x128/apps/
# make all exe files in melon vpn projects executable
sudo chmod +x /usr/lib/melon-vpn/*.exe
# so its on path now?
sudo cp MelonVPNClient/bin/Release/melonvpnclient /usr/bin/
sudo chmod +x /usr/bin/melonvpnclient
echo "[info] Restarting daemon"
# cuz science
sudo systemctl daemon-reload
sudo systemctl enable melonvpndaemon
sudo systemctl start melonvpndaemon
echo "[info] Remember to setup \"/etc/melon-vpn/client.cfg\""