host info updates
[distro-setup] / keyscript-on
index a2f056cc8081e281f8127649c43cce5d17f47812..b86dd39791afe18210991cb31c2d6f2dfd076fec 100755 (executable)
@@ -1,6 +1,29 @@
 #!/bin/bash
-# Copyright (C) 2019 Ian Kelling
-# SPDX-License-Identifier: AGPL-3.0-or-later
+# 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.
+
+
+
+# setup automatic decryption on boot using host-specific key file.
+# When changing a hostname, that key needs updating.
 
 set -eE -o pipefail
 trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?"' ERR
@@ -10,7 +33,6 @@ if [[ $- != *i* ]]; then
   exec &>>/var/log/keyscript-on.log
   echo "$0: starting. $(date)"
 fi
-rootn=1
 
 sed="sed --follow-symlinks"
 
@@ -21,9 +43,14 @@ PATH="/sbin:$PATH"
 
 if [[ $INVOCATION_ID ]]; then
   if [[ -e /b/bash_unpublished/source-state ]]; then
+    # this is the canonical one
     source /b/bash_unpublished/source-state
+  elif [[ -e /dev/shm/iank-status ]]; then
+    # This one gets copied by system-status and is useful because it
+    # exists when /a is unmounted.
+    source /dev/shm/iank-status
   fi
-  if [[ $MAIL_HOST && $MAIL_HOST != $HOSTNAME ]]; then
+  if [[ $MAIL_HOST && $MAIL_HOST != "$HOSTNAME" ]]; then
     echo "$0: exiting early: running under systemd as MAIL_HOST"
     exit 0
   fi