From 157ea8d69649b9c53e20ace93146e69023bcc3d9 Mon Sep 17 00:00:00 2001 From: shihaam Date: Wed, 9 Nov 2022 15:11:42 +0500 Subject: [PATCH] vnc-extended display.sh --- .../extended-display.sh | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100755 x11vnc-remote-extended-display/extended-display.sh diff --git a/x11vnc-remote-extended-display/extended-display.sh b/x11vnc-remote-extended-display/extended-display.sh new file mode 100755 index 0000000..783a1e6 --- /dev/null +++ b/x11vnc-remote-extended-display/extended-display.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +dependency_check(){ + for DEPENDENCY; do + if ! command -v "$DEPENDENCY" 1>/dev/null; then + printf "%s not found. Please install it.\n" "$DEPENDENCY" >&2 + exit 2 + fi + done + unset DEPENDENCY +} +dependency_check arandr x11vnc xrandr gtf + +read -p'Enter client width: ' CLIENT_WIDTH +read -p'Enter client heigh: ' CLEINT_HEIGHT +read -p'Enter client refresh rate: ' REFRESH_RATE + +MODELINE=$(gtf $CLIENT_WIDTH $CLEINT_HEIGHT $REFRESH_RATE | grep Modeline | sed 's/Modeline//') #resolution of client machine (width, height, refreshrate) +RESOLUTION=$(echo $MODELINE | awk '{print $2}') +echo "---------------" +echo $MODELINE +echo "---------------" +read -p 'enter the above Modeline: ' MODELINE +xrandr --newmode $MODELINE + +echo Checking avaible ports.. +echo "---------------" +xrandr | grep disconnected | awk '{print $1}' +echo "---------------" +read -p'Enter one of the ports to be used for VNC: ' PORT +xrandr --addmode $PORT $RESOLUTION +xrandr --output $PORT --mode $RESOLUTION + +echo Configure the new diplay where you want +sleep 3 +arandr >> /dev/null +GEO=$(xrandr | grep HDMI-A-3 | awk '{print $3}') +echo Starting VNC Server +sleep 3 +x11vnc -cli $GEO