setup_monitors (787B)
1 #!/bin/bash 2 set -e 3 4 POSITION="above" # left | right | above | below 5 DRY_RUN=false 6 7 EXTERNAL_OUTPUT="HDMI-1-0" 8 INTERNAL_OUTPUT="eDP" 9 10 run() { 11 if $DRY_RUN; then 12 echo "[DRY-RUN] xrandr $*" 13 else 14 xrandr "$@" 15 fi 16 } 17 18 # Enable both monitors 19 run --output "$INTERNAL_OUTPUT" --auto --primary 20 run --output "$EXTERNAL_OUTPUT" --mode 1920x1080 --rate 180.00 21 22 # Position external monitor 23 case "$POSITION" in 24 left) 25 run --output "$EXTERNAL_OUTPUT" --left-of "$INTERNAL_OUTPUT" 26 ;; 27 right) 28 run --output "$EXTERNAL_OUTPUT" --right-of "$INTERNAL_OUTPUT" 29 ;; 30 above) 31 run --output "$EXTERNAL_OUTPUT" --above "$INTERNAL_OUTPUT" 32 ;; 33 below) 34 run --output "$EXTERNAL_OUTPUT" --below "$INTERNAL_OUTPUT" 35 ;; 36 *) 37 echo "Invalid position" 38 exit 1 39 ;; 40 esac