various fixes and updates
[distro-setup] / desktop-20-autostart.sh
index dd4d9a8e0918341277f4d596c15343d28ddd3e44..69f455f47d21da37bc5d90d206d4f20427a7c58c 100755 (executable)
@@ -1,38 +1,56 @@
-#!/bin/bash -l
+#!/bin/bash
+# Copyright (C) 2016 Ian Kelling
 
-# first 2 alternatives showed under ubuntu 14.04, second 2 under arch at 11/2015
+# 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.
 
-right_monitor_rotation=left
+# first 2 alternatives showed under ubuntu 14.04, second 2 under arch at 11/2015
 if [[ $1 ]]; then
-    right_monitor_rotation=normal
+  right_monitor_rotation=left
+else
+  right_monitor_rotation=normal
 fi
 
 
-xout="$(xrandr)"
+if ! xout="$(xrandr)"; then
+  # under wayland
+  exit 0
+fi
 xe() { echo "$xout"; }
-x=$(xe | grep -E '^(DisplayPort-[0123]|DVI-0|DP-[1234]|DVI-I-1) connected' | wc -l)
+x=$(xe | grep -Ec '^(DisplayPort-[0123]|DVI-0|DP-[1234]|DVI-I-1) connected')
 if (( x > 2 )); then
-    left=$(xe | sed -rn 's/^(DVI[^ ]+) connected .*/\1/p')
-    dps=( $(xe | sed -rn 's/^(DP-[01234]|DisplayPort-[01234]) connected .*/\1/p') )
+  left=$(xe | sed -rn 's/^(DVI[^ ]+) connected .*/\1/p')
+  dps=( $(xe | sed -rn 's/^(DP-[01234]|DisplayPort-[01234]) connected .*/\1/p') )
 
-    middle=${dps[1]}
-    right=${dps[0]}
-    # on older distros, i needed to swap middle and right.
+  middle=${dps[1]}
+  right=${dps[0]}
+  # on older distros, i needed to swap middle and right.
 
 
-    xrandr --output $left --mode 2560x1600 --pos 0x0 --rotate left \
-           --output $middle --mode 2560x1600 --pos 1600x0 --rotate left \
-           --output $right --mode 2560x1600 --pos 3200x0 --rotate $right_monitor_rotation
+  xrandr --output $left --mode 2560x1600 --pos 0x0 --rotate left \
+         --output $middle --mode 2560x1600 --pos 1600x0 --rotate left \
+         --output $right --mode 2560x1600 --pos 3200x0 --rotate $right_monitor_rotation
 elif (( x == 2 )); then
-    # 3rd monitor not working atm, so doing this.
-    left=$(xe | sed -rn 's/^(DVI[^ ]+) connected .*/\1/p')
-    middle=$(xe | sed -rn 's/^(DP-[01234]|DisplayPort-[01234]) connected .*/\1/p')
-    xrandr --output $left --mode 2560x1600 --pos 0x0 --rotate left \
-           --output $middle --mode 2560x1600 --pos 1600x0 --rotate left
+  # 3rd monitor not working atm, so doing this.
+  left=$(xe | sed -rn 's/^(DVI[^ ]+) connected .*/\1/p')
+  middle=$(xe | sed -rn 's/^(DP-[01234]|DisplayPort-[01234]) connected .*/\1/p')
+  xrandr --output $left --mode 2560x1600 --pos 0x0 --rotate left \
+         --output $middle --mode 2560x1600 --pos 1600x0 --rotate left
 
 fi
-/a/bin/distro-setup/input-setup
+/a/bin/distro-setup/input-setup m
 if isarch; then
-    pulseaudio --start
+  pulseaudio --start
 fi
+
+#indicator-kdeconnect
 date "+%A, %B %d, %r, %S seconds" > /tmp/desktop-20-autostart-log