X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=laptop-xrandr;h=6701e74525d7c2203a4a03a5fc9c533596b04ec9;hb=f27b67a1dfa58b5f101bba607b2f91a73e65299e;hp=a28600c1280e708fa75eefd01c442157a1cbd66e;hpb=51c8b40fd2aac71d29dc9298ca65425725ad1edd;p=distro-setup diff --git a/laptop-xrandr b/laptop-xrandr index a28600c..6701e74 100755 --- a/laptop-xrandr +++ b/laptop-xrandr @@ -1,17 +1,56 @@ #!/bin/bash +# I, Ian Kelling, follow the GNU license recommendations at +# https://www.gnu.org/licenses/license-recommendations.en.html. They +# recommend that small programs, < 300 lines, be licensed under the +# Apache License 2.0. This file contains or is part of one or more small +# programs. If a small program grows beyond 300 lines, I plan to switch +# its license to GPL. + +# Copyright 2024 Ian Kelling + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + set -e; . /usr/local/lib/bash-bear; set +e +# eg eDP-1 connected primary +laptop_out=$(xrandr | awk '$3 == "primary" {print $1}') +output=$(xrandr | grep -E "^(HDMI|DP)[^ ]* connected [0-9]" | awk '{print $1}' ||:) -output=HDMI2 -output=DP1 +left_right_arg=--right-of +if [[ $output ]]; then -if xrandr | grep -q "^$output disconnected" &>/dev/null; then - xrandr --auto -else - xrandr --output $output --right-of eDP1 --mode 3840x2160 + # identify monitors that are always on the left. + if [[ $output == HDMI2 && $(sha256sum