aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/setup-vnc-monitor.sh31
1 files changed, 31 insertions, 0 deletions
diff --git a/scripts/setup-vnc-monitor.sh b/scripts/setup-vnc-monitor.sh
new file mode 100755
index 0000000..cfbcc2e
--- /dev/null
+++ b/scripts/setup-vnc-monitor.sh
@@ -0,0 +1,31 @@
+#!/usr/bin/env bash
+
+set -euo pipefail
+
+export DISPLAY=:0
+
+# Make the X framebuffer large enough for:
+# physical monitor: 1920x1080
+# VNC monitor: 1366x768
+#
+# Total width = 1920 + 1366 = 3286
+xrandr --fb 3286x1080
+
+# Remove the default Xvnc-style monitor if one exists.
+xrandr --delmonitor VNC-0 2>/dev/null || true
+
+# Don't create duplicates when i3 reloads.
+xrandr --delmonitor VNC-1 2>/dev/null || true
+xrandr --delmonitor VNC-2 2>/dev/null || true
+
+# Physical monitor is 1920x1080 at 0,0.
+xrandr --setmonitor PHYSICAL \
+ 1920/509x1080/286+0+0 \
+ none
+
+# Virtual VNC monitor is 1366x768 at 1920,0.
+xrandr --setmonitor VNC \
+ 1366/361x768/203+1920+0 \
+ none
+
+xrandr --listmonitors