From cc507148fd924a8dfd5a92d08570f3cc60ee21f9 Mon Sep 17 00:00:00 2001 From: MrMelon Date: Wed, 23 Sep 2020 20:22:00 +0100 Subject: [PATCH] Improvements and comments in build scripts --- build-source | 2 +- install-components | 26 ++++++++++++++++++++++++++ install-dependencies | 11 +++++++++-- 3 files changed, 36 insertions(+), 3 deletions(-) diff --git a/build-source b/build-source index 4f8c464..c92f1fa 100755 --- a/build-source +++ b/build-source @@ -1,4 +1,4 @@ #!/bin/bash +# Just build all projects with msbuild echo "Preparing to build MelonVPN" msbuild MelonVPN.sln -m /t:MelonVPNCore /t:MelonVPNConnectedClientUpdate /t:MelonVPNDaemon /t:MelonVPNClient /p:Configuration=Release /p:Platform=x86 -echo "Run \"./install\" to install all the components for MelonVPN" diff --git a/install-components b/install-components index 434a159..a413329 100755 --- a/install-components +++ b/install-components @@ -1,30 +1,56 @@ #!/bin/bash +# new lib folder sudo mkdir -p /usr/lib/melon-vpn/ + +# 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 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/ + +# 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 stop melonvpndaemon sudo systemctl disable melonvpndaemon sudo systemctl daemon-reload diff --git a/install-dependencies b/install-dependencies index 7bbb5fd..f3b1583 100755 --- a/install-dependencies +++ b/install-dependencies @@ -1,16 +1,24 @@ #!/bin/bash +# Check if golang exists by the output of "go version" if [ "$(go version | head -c 13)" == "go version go" ]; then echo "Assuming go is installed" + + # Check location for simple vpn binary if [ -f /usr/bin/simple-vpn ]; then echo "Found \"/usr/bin/simple-vpn\" assuming it is installed correctly" else + # Clone github repo echo "Cloning simple-vpn" - git clone https://github.com/skx/simple-vpn + git clone https://codehub.onpointcoding.net/sean/simple-vpn.git cd simple-vpn + + # Build and copy binary to bin directory echo "Installing simple-vpn" go build sudo cp ./simple-vpn /usr/bin/ -i cd .. + + # Remove repository echo "Cleaning up" rm simple-vpn -rf echo "Components installed..." @@ -19,4 +27,3 @@ else echo "Please install golang before continuing" exit fi -echo "Run \"./build\" to continue with installing MelonVPN"