X-Git-Url: https://iankelling.org/git/?p=distro-setup;a=blobdiff_plain;f=filesystem%2Fusr%2Flocal%2Fbin%2Fmyupgrade;h=e762246d09756f9c12c9d3042e0d433c7a69c304;hp=1b39e7ff1c881f5b63432319b4a59aa13fa108de;hb=4d0dc703ef2e62cd16ea84f27456f6f50f74baa3;hpb=f91bdcc85d4742254fefc2c9880a0c76dc2a65ed diff --git a/filesystem/usr/local/bin/myupgrade b/filesystem/usr/local/bin/myupgrade index 1b39e7f..e762246 100755 --- a/filesystem/usr/local/bin/myupgrade +++ b/filesystem/usr/local/bin/myupgrade @@ -4,8 +4,16 @@ if [ -z "$BASH_VERSION" ]; then echo "error: shell is not bash" >&2; exit 1; fi -set -eE -o pipefail -trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR +source /usr/local/lib/err +pre="${0##*/}:" +m() { printf "$pre %s\n" "$*"; "$@"; } +e() { printf "$pre %s\n" "$*"; } +err() { echo "[$(date +'%Y-%m-%d %H:%M:%S%z')]: $pre: $*" >&2; } + +if [[ $EUID == 0 ]]; then + err "run as nonroot" + exit 1 +fi hn=$(hostname -f) source /a/bin/bash_unpublished/source-state @@ -22,7 +30,7 @@ l /a/bin/buildscripts/rust l /a/bin/buildscripts/misc l go get -u mvdan.cc/fdroidcl -cmd="$s /usr/sbin/checkrestart -p" +cmd="sudo /usr/sbin/checkrestart -p" if [[ $($cmd | sed '/^Found 0 processes using old versions of upgraded files$/d' | wc -l) != 0 ]]; then $cmd -v | pee cat "wall -n" fi @@ -35,7 +43,7 @@ if [[ -s /var/log/checkrestart.log ]]; then for x in {30..1}; do if ! fuser /var/lib/dpkg/lock &> /dev/null; then echo "pid $PID. unattended upgrade, rebooting now" | pee cat "wall -n" - /sbin/reboot + sudo /sbin/reboot exit 0 fi echo "pid $PID. unattended upgrade reboot waiting 10 seconds for dpkg lock" | wall -n