Remotely/Server/wwwroot/Downloads/Install-Linux-x64.sh
2021-07-29 07:56:45 -07:00

99 lines
2.4 KiB
Bash

#!/bin/bash
HostName=
Organization=
GUID=$(cat /proc/sys/kernel/random/uuid)
ETag=
Args=( "$@" )
ArgLength=${#Args[@]}
HostName="*"
for (( i=0; i<${ArgLength}; i+=2 ));
do
if [ "${Args[$i]}" = "--uninstall" ]; then
systemctl stop remotely-agent
rm -r -f /usr/local/bin/Remotely
rm -f /etc/systemd/system/remotely-agent.service
systemctl daemon-reload
exit
elif [ "${Args[$i]}" = "--path" ]; then
UpdatePackagePath="${Args[$i+1}"
fi
done
UbuntuVersion=$(lsb_release -r -s)
wget -q https://packages.microsoft.com/config/ubuntu/$UbuntuVersion/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
dpkg -i packages-microsoft-prod.deb
apt-get update
apt-get -y install apt-transport-https
apt-get update
apt-get -y install dotnet-runtime-3.1
rm packages-microsoft-prod.deb
apt-get -y install libx11-dev
apt-get -y install unzip
apt-get -y install libc6-dev
apt-get -y install libgdiplus
apt-get -y install libxtst-dev
apt-get -y install xclip
apt-get -y install jq
apt-get -y install curl
if [ -f "/usr/local/bin/Remotely/ConnectionInfo.json" ]; then
GUID=`cat "/usr/local/bin/Remotely/ConnectionInfo.json" | jq -r '.DeviceID'`
fi
rm -r -f /usr/local/bin/Remotely
rm -f /etc/systemd/system/remotely-agent.service
mkdir -p /usr/local/bin/Remotely/
cd /usr/local/bin/Remotely/
if [ -z AppRoot ]; then
echo "Downloading client..."
wget $HostName/Downloads/Remotely-Linux.zip
else
echo "Copying install files..."
cp "$AppRoot" /usr/local/bin/Remotely/Remotely-Linux.zip
fi
unzip ./Remotely-Linux.zip
chmod +x ./Remotely_Agent
chmod +x ./Desktop/Remotely_Desktop
connectionInfo="{
\"DeviceID\":\"$GUID\",
\"Host\":\"$HostName\",
\"OrganizationID\": \"$Organization\",
\"ServerVerificationToken\":\"\"
}"
echo "$connectionInfo" > ./ConnectionInfo.json
curl --head $HostName/Downloads/Remotely-Linux.zip | grep -i "etag" | cut -d' ' -f 2 > ./etag.txt
echo Creating service...
serviceConfig="[Unit]
Description=The Remotely agent used for remote access.
[Service]
WorkingDirectory=/usr/local/bin/Remotely/
ExecStart=/usr/local/bin/Remotely/Remotely_Agent
Restart=always
StartLimitIntervalSec=0
RestartSec=10
[Install]
WantedBy=graphical.target"
echo "$serviceConfig" > /etc/systemd/system/remotely-agent.service
systemctl enable remotely-agent
systemctl restart remotely-agent
echo Install complete.