various bug fixes
[distro-setup] / distro-begin
index 35c904a929d05693c03e73ef213fd6740843efa1..182a9d92ee2af270a22dfee2e30017c80720def2 100755 (executable)
@@ -33,15 +33,8 @@ interactive=true  # set this to false to force set -x
 [[ $- == *i* ]] || interactive=false
 if ! $interactive; then
     set -x
-    set -e -o pipefail
 fi
-set -E
-trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?"' ERR
-for x in /a/bin/errhandle/*-function; do
-    source $x
-done
-set +e
-$interactive || errcatch
+source /a/bin/errhandle/err
 
 ### setup logging
 exec &> >(sudo tee -a /var/log/distro-begin)
@@ -77,7 +70,7 @@ source $script_dir/pkgs
 set +x
 source /a/bin/distro-functions/src/identify-distros
 $interactive || set -x
-for f in iank-dev htpc kd x2 frodo tp li lj demohost kw fz; do
+for f in iank-dev htpc kd x2 x3 frodo tp li lj demohost kw fz; do
     eval "$f() { [[ $HOSTNAME == $f ]]; }"
 done
 has_p() { ! linode; } # when tp is tracis, then not tp either
@@ -207,10 +200,10 @@ conflink
 
 ###### bash environment setup
 set +x
-errallow
+err-allow
 source /etc/profile.d/environment.sh
 source ~/.bashrc
-$interactive || errcatch
+err-catch
 $interactive || set -x
 
 
@@ -319,6 +312,7 @@ if has_p; then
 fi
 s lnf /q/root/.editor-backups /q/root/.undo-tree-history \
   /a/opt /a/c/.emacs.d $HOME/mw_vars /k/backup /root
+pi rsync # needed for rootsshsync
 rootsshsync
 s lnf /a/c/.vim /a/c/.vimrc /a/c/.gvimrc /root
 if has_p; then
@@ -566,7 +560,7 @@ if has_x; then
 fi
 
 ##### install laptop hardware packages
-if tp || x2; then
+if tp || x2 || x3; then
     case $distro in
         debian)
             pi task-laptop