Merge pull request #49 from carefreepineapple/master

This commit is contained in:
dinger1986 2023-08-14 22:36:24 +02:00 committed by GitHub
commit 5f7fdb85a0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 26 additions and 9 deletions

View File

@ -2,7 +2,8 @@
uname=$(whoami)
admintoken=$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c8)
architecture=$(arch)
bpwd=$(pwd)
# identify OS
if [ -f /etc/os-release ]; then
@ -47,15 +48,30 @@ else
fi
# Install Rustdesk
lversion=$(curl https://api.github.com/repos/rustdesk/rustdesk/releases/latest -s | grep "tag_name"| awk '{print substr($2, 2, length($2)-3) }')
if command -v curl > /dev/null; then
lversion=$(curl https://api.github.com/repos/rustdesk/rustdesk/releases/latest -s | grep "tag_name"| awk '{print substr($2, 2, length($2)-3) }')
fi
echo "Installing Rustdesk"
if [ "${ID}" = "debian" ] || [ "$OS" = "Ubuntu" ] || [ "$OS" = "Debian" ] || [ "${UPSTREAM_ID}" = "ubuntu" ] || [ "${UPSTREAM_ID}" = "debian" ]; then
wget https://github.com/rustdesk/rustdesk/releases/download/$lversion/rustdesk-$lversion-x86_64.deb
sudo apt install -fy ./rustdesk-$lversion-x86_64.deb
if [ "$OS" = "Ubuntu" ] || [ "${UPSTREAM_ID}" = "ubuntu" ]; then
if [[ "$architecture" != @("x86_64"|"aarch64") ]]; then
echo "Unsupported Architecture"
exit 1
fi
if [ "$architecture" = "aarch64" ]; then
sudo add-apt-repository -y universe
sudo apt install -y libxdo3 curl libva-drm2 libva-x11-2
if [ -z "$lversion" ]; then
lversion=$(curl https://api.github.com/repos/rustdesk/rustdesk/releases/latest -s | grep "tag_name"| awk '{print substr($2, 2, length($2)-3) }')
fi
fi
wget https://github.com/rustdesk/rustdesk/releases/download/$lversion/rustdesk-$lversion-$architecture.deb --output-document="$bpwd/rustdesk-$lversion-$architecture.deb"
sudo apt install -fy $bpwd/rustdesk-$lversion-$architecture.deb
elif [ "${ID}" = "debian" ] || [ "$OS" = "Debian" ] || [ "${UPSTREAM_ID}" = "debian" ]; then
wget https://github.com/rustdesk/rustdesk/releases/download/$lversion/rustdesk-$lversion-x86_64.deb --output-document="$bpwd/rustdesk-$lversion-x86_64.deb"
sudo apt install -fy $bpwd/rustdesk-$lversion-x86_64.deb
elif [ "$OS" = "CentOS" ] || [ "$OS" = "RedHat" ] || [ "$OS" = "Fedora Linux" ] || [ "${UPSTREAM_ID}" = "rhel" ] ; then
wget https://github.com/rustdesk/rustdesk/releases/download/$lversion/rustdesk-$lversion-0.x86_64.rpm
sudo yum localinstall ./rustdesk-$lversion-0.x86_64.rpm
wget https://github.com/rustdesk/rustdesk/releases/download/$lversion/rustdesk-$lversion-0.x86_64.rpm --output-document="$bpwd/rustdesk-$lversion-0.x86_64.rpm"
sudo yum localinstall $bpwd/rustdesk-$lversion-0.x86_64.rpm
else
echo "Unsupported OS"
# here you could ask the user for permission to try and install anyway
@ -63,7 +79,8 @@ else
# if they say no, exit the script
exit 1
fi
# Sleeping to let the package manager finish installation. If this does not complete before trying to run rustdesk, it can cause a panick citing an inability to find the files.
sleep 5
rustdesk --password ${admintoken}
sudo pkill -f "rustdesk"