fixes
authorIan Kelling <ian@iankelling.org>
Fri, 14 Jan 2022 00:39:33 +0000 (19:39 -0500)
committerIan Kelling <ian@iankelling.org>
Fri, 14 Jan 2022 00:39:33 +0000 (19:39 -0500)
distro-end
filesystem/etc/systemd/system/systemstatus.service
mail-setup
switch-mail-host
system-status

index 51d01443d56475718bf508206e126657b78fac74..0746d8286aa044bdcb425a004f41a3aec378168a 100755 (executable)
@@ -873,7 +873,10 @@ case $distro in
 deb http://ppa.launchpad.net/obsproject/obs-studio/ubuntu $codename_compat main
 deb-src http://ppa.launchpad.net/obsproject/obs-studio/ubuntu $codename_compat main
 EOF
-      s apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BC7345F522079769F5BBE987EFC71127F425E228
+      for (( i=0; i <= 4 ; i++ )); do
+        s apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BC7345F522079769F5BBE987EFC71127F425E228 && break
+        sleep 10
+      done
       p update
     fi
     ;;
index 23afb89a0499f518fa23ac47d2a9bf07668e3c67..725df34a80799c2497679e13d2e5b0402006cb4a 100644 (file)
@@ -4,6 +4,7 @@ After=multi-user.target
 
 [Service]
 Type=oneshot
+Environment=XDG_RUNTIME_DIR=/run/user/1000
 ExecStart=/usr/local/bin/sysd-mail-once -3 systemstatus /usr/local/bin/system-status
 IOSchedulingClass=idle
 CPUSchedulingPolicy=idle
index f8cb3ee83e05dec206fb5d9c7fe0103e0b1b1392..f7f1fc56a853dc6c8ddc2a8b8e4e6e51f41cc859 100755 (executable)
@@ -418,21 +418,6 @@ fi
 # our nostart pi fails to avoid enabling
 
 
-# * user forward file
-case $HOSTNAME in
-  $MAIL_HOST)
-    # afaik, these will get ignored on MAIL_HOST because they are routing to my own
-    # machine, but rm them is safer
-    rm -fv $uhome/.forward /root/.forward
-    ;;
-  *)
-    # this can\'t be a symlink and has permission restrictions
-    # it might work in /etc/aliases, but this seems more proper.
-    e setting $uhome/.forward to $forward
-    install -m 644 {-o,-g}$u <(e $forward) $uhome/.forward
-    ;;
-esac
-
 # * Mail clean cronjob
 
 i /etc/systemd/system/mailclean.timer <<'EOF'
@@ -841,9 +826,13 @@ fi
 # * common exim4 config
 
 
+## old, not using forward files anymore
+rm -fv $uhome/.forward /root/.forward
+
+
 # Make all system users be aliases. preventative
-# measure for things like cron mail for user without alias
-awk 'BEGIN { FS = ":" } ; $6 !~ /^\/home/ { print $1 }' /etc/passwd| while read -r user; do
+# prevents things like cron mail for user without alias
+awk 'BEGIN { FS = ":" } ; $6 !~ /^\/home/ || $7 ~ /\/nologin$/  { print $1 }' /etc/passwd| while read -r user; do
   if [[ ! $user ]]; then
     continue
   fi
@@ -852,6 +841,20 @@ awk 'BEGIN { FS = ":" } ; $6 !~ /^\/home/ { print $1 }' /etc/passwd| while read
   fi
 done
 
+
+awk 'BEGIN { FS = ":" } ; $6 ~ /^\/home/ && $7 !~ /\/nologin$/ { print $1 }' /etc/passwd| while read -r user; do
+  case $HOSTNAME in
+    $MAIL_HOST)
+      sed -i "/^user:/d" /etc/aliases
+    ;;
+    *)
+      if ! grep -q "^$user:" /etc/aliases; then
+        echo "$user: root" |m tee -a /etc/aliases
+      fi
+      ;;
+  esac
+done
+
 if ! grep -q "^ncsoft:" /etc/aliases; then
   echo "ncsoft: graceq2323@gmail.com" |m tee -a /etc/aliases
 fi
@@ -2508,10 +2511,12 @@ EOF
     # The debconf questions output is additional documentation that is not
     # easily accessible, but super long, along with the initial default comment in this
     # file, so I've saved that into ./mail-notes.conf.
+    #
+    # # TODO: remove mx.iankelling.org once systems get updated mail-setup from jan 2022
     cat >>/etc/exim4/update-exim4.conf.conf <<EOF
 # man page: is used to build the local_domains list, together with "localhost"
 # this is duplicated in a later router.
-dc_other_hostnames='iankelling.org;zroe.org;r2e.iankelling.org;!je.b8.nz;!bk.b8.nz;*.b8.nz;b8.nz'
+dc_other_hostnames='iankelling.org;zroe.org;r2e.iankelling.org;mx.iankelling.org;!je.b8.nz;!bk.b8.nz;*.b8.nz;b8.nz'
 EOF
 
 
index 12bf126e1f2512179915933ebacf0ebeb6ec0513..b27cde9dc4bac303d13fbcbd809fe27353694f37 100644 (file)
@@ -153,7 +153,8 @@ done
 e "On $new_host: umounting /m and /o, checking emacs"
 $new_shell bash -s <<'EOF'
 set -eE
-if pgrep -f 'emacs --daemon' &>/dev/null; then
+if pgrep -G iank -u iank -f 'emacs --daemon' &>/dev/null; then
+  export XDG_RUNTIME_DIR=/run/user/1000
   bufs="$(emacsclient --eval "$(cat /a/bin/ds/unsaved-buffers.el)"| sed '/^"nil"$/d;s/^"(/E: /;s/)"$//')"
   if [[ $bufs ]]; then
     echo "error: on $HOSTNAME, unsaved emacs files: $bufs" >&2
@@ -169,7 +170,8 @@ done
 EOF
 
 $old_shell bash -s <<'EOF'
-if pgrep -f 'emacs --daemon' &>/dev/null; then
+if pgrep -G iank -u iank -f 'emacs --daemon' &>/dev/null; then
+  export XDG_RUNTIME_DIR=/run/user/1000
   bufs="$(emacsclient --eval "$(cat /a/bin/ds/unsaved-buffers.el)"| sed '/^"nil"$/d;s/^"(/E: /;s/)"$//')"
   if [[ $bufs ]]; then
     echo "error: on $HOSTNAME, unsaved emacs files: $bufs" >&2
index 2dd39ca7d99a90c88ccc9bddf7e51a49f37535cf..c3fe13b411d6a8475ae60ec04c43425c727a3024 100644 (file)
@@ -53,7 +53,7 @@ write-status() {
     fi
   fi
 
-  if pgrep -f 'emacs --daemon' &>/dev/null; then
+  if pgrep -G iank -u iank -f 'emacs --daemon' &>/dev/null; then
     emacsfiles="$(emacsclient --eval "$(cat /a/bin/ds/unsaved-buffers.el)"| sed '/^"nil"$/d;s/^"(/E: /;s/)"$//')"
     if [[ $emacsfiles ]]; then
       chars+=("$emacsfiles")