diff --git a/rustdesk.sh b/rustdesk.sh index 48e9a99..381c675 100644 --- a/rustdesk.sh +++ b/rustdesk.sh @@ -3,24 +3,13 @@ # Variables RUSTDESK_URL="https://github.com/rustdesk/rustdesk/releases/download/1.2.3/rustdesk-1.2.3-x86_64.deb" RUSTDESK_DEB="rustdesk-1.2.3-x86_64.deb" -ID_SERVER="192.168.1.242" -PACKAGE_NAME="rustdesk" -# Check for curl -if ! command -v curl &> /dev/null; then - echo "Error: curl is not installed. Please install curl and try again." - exit 1 -fi - -# Check if RustDesk is already installed and remove it -if dpkg -l | grep -qw "$PACKAGE_NAME"; then - echo "RustDesk is already installed. Removing..." - if sudo dpkg --purge "$PACKAGE_NAME"; then - echo "Successfully removed existing RustDesk installation." - else - echo "Failed to remove existing RustDesk. Exiting." - exit 1 - fi +# Check for RustDesk installation and remove it if present +if dpkg -l | grep -qw rustdesk; then + echo "RustDesk is already installed. Uninstalling..." + sudo dpkg --purge rustdesk +else + echo "RustDesk is not installed. Proceeding with installation." fi echo "Downloading RustDesk..." @@ -33,12 +22,6 @@ else exit 1 fi -# Check if the file was actually downloaded -if [ ! -f "$RUSTDESK_DEB" ]; then - echo "Error: The RustDesk .deb file was not downloaded. Exiting." - exit 1 -fi - echo "Installing RustDesk..." # Attempt to install the RustDesk package @@ -54,20 +37,19 @@ else fi fi -echo "Configuring RustDesk..." - -# Configure RustDesk -CONFIG_PATH="$HOME/.config/rustdesk/hbb.conf" -mkdir -p "$(dirname "$CONFIG_PATH")" -echo "id_server = \"$ID_SERVER\"" > "$CONFIG_PATH" -echo "Configuration updated." - echo "Starting RustDesk..." -# Start RustDesk +# Start RustDesk and attempt to bring its window to the foreground if ! pgrep -x "rustdesk" > /dev/null; then - rustdesk &> /dev/null & - echo "RustDesk client started." + rustdesk & + sleep 2 # Give RustDesk a moment to start + # Attempt to focus the RustDesk window. This method may need adjustment based on the desktop environment. + WINDOW_ID=$(xdotool search --onlyvisible --class rustdesk | head -1) + if [ ! -z "$WINDOW_ID" ]; then + xdotool windowactivate "$WINDOW_ID" + else + echo "RustDesk started but could not focus the window automatically." + fi else echo "RustDesk is already running." fi