Add Python RDP Client with multi-monitor support and enhanced features
- Complete rewrite of bash RDP script in Python with tkinter GUI - Multi-monitor support with intelligent monitor selection - Encrypted credential storage using Fernet encryption - Connection profiles with advanced configuration options - Fixed authentication issues (STATUS_ACCOUNT_RESTRICTION) - Enhanced monitor detection and selection logic - Professional tabbed interface with General/Advanced/Performance tabs - Install script and documentation included
This commit is contained in:
64
install_rdp_client.sh
Executable file
64
install_rdp_client.sh
Executable file
@@ -0,0 +1,64 @@
|
||||
#!/bin/bash
|
||||
|
||||
# RDP Client Installation Script
|
||||
# This script installs the RDP client system-wide
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
INSTALL_DIR="/usr/local/bin"
|
||||
DESKTOP_DIR="/usr/share/applications"
|
||||
|
||||
# Check if running as root for system installation
|
||||
if [[ $EUID -eq 0 ]]; then
|
||||
echo "Installing RDP Client system-wide..."
|
||||
|
||||
# Copy the Python script
|
||||
cp "$SCRIPT_DIR/rdp_client.py" "$INSTALL_DIR/rdp-client"
|
||||
chmod +x "$INSTALL_DIR/rdp-client"
|
||||
|
||||
# Create desktop entry
|
||||
cat > "$DESKTOP_DIR/rdp-client.desktop" << EOF
|
||||
[Desktop Entry]
|
||||
Name=RDP Client
|
||||
Comment=Professional RDP connection manager
|
||||
Exec=/usr/local/bin/rdp-client
|
||||
Icon=network-workgroup
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=Network;RemoteAccess;
|
||||
EOF
|
||||
|
||||
echo "RDP Client installed successfully!"
|
||||
echo "You can now run it with: rdp-client"
|
||||
echo "Or find it in your applications menu."
|
||||
else
|
||||
echo "Installing RDP Client for current user..."
|
||||
|
||||
# Create user bin directory
|
||||
USER_BIN="$HOME/.local/bin"
|
||||
mkdir -p "$USER_BIN"
|
||||
|
||||
# Copy the Python script
|
||||
cp "$SCRIPT_DIR/rdp_client.py" "$USER_BIN/rdp-client"
|
||||
chmod +x "$USER_BIN/rdp-client"
|
||||
|
||||
# Create user desktop entry
|
||||
USER_DESKTOP="$HOME/.local/share/applications"
|
||||
mkdir -p "$USER_DESKTOP"
|
||||
|
||||
cat > "$USER_DESKTOP/rdp-client.desktop" << EOF
|
||||
[Desktop Entry]
|
||||
Name=RDP Client
|
||||
Comment=Professional RDP connection manager
|
||||
Exec=$USER_BIN/rdp-client
|
||||
Icon=network-workgroup
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=Network;RemoteAccess;
|
||||
EOF
|
||||
|
||||
echo "RDP Client installed for current user!"
|
||||
echo "You can now run it with: rdp-client"
|
||||
echo "Make sure $USER_BIN is in your PATH:"
|
||||
echo " echo 'export PATH=\"\$HOME/.local/bin:\$PATH\"' >> ~/.bashrc"
|
||||
echo " source ~/.bashrc"
|
||||
fi
|
||||
Reference in New Issue
Block a user