X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=filesystem%2Fusr%2Flocal%2Fbin%2Fmyupgrade;h=49197fb57c1fe7f7c3d2b4f0f6fc13844ba56cd9;hb=ec4efaeb603f21de169aeedff4907d2279bada3a;hp=f204796b25c3ebf50f0195f09f3f0d8305c62db4;hpb=0f9a999aa601cd77343a3e08cf0c6c4f9f943813;p=distro-setup diff --git a/filesystem/usr/local/bin/myupgrade b/filesystem/usr/local/bin/myupgrade index f204796..49197fb 100755 --- a/filesystem/usr/local/bin/myupgrade +++ b/filesystem/usr/local/bin/myupgrade @@ -1,6 +1,25 @@ #!/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. + # usage: set DEBUG env var to anything to output to stdout @@ -29,6 +48,11 @@ d() { fi } myreboot() { + if [[ -e /tmp/myupgrade-noreboot ]]; then + e "would rebooted but /tmp/myupgrade-noreboot exists" + return + fi + for x in {30..1}; do echo "pid $$. unattended upgrade, rebooting in $((x*10)) seconds" | wall -n 2>/dev/null sleep 10 @@ -60,6 +84,12 @@ case $hn in ;; esac +case $hn in + sy) + /b/fai/config/distro-install-common/install-stable-kernel-debs + ;; +esac + # TODO: executed from cron, this doesnt sent an email when we reboot, # because rebooting from the script stops the ability to send email. @@ -86,7 +116,7 @@ sleep 1 # isolation instead of as part of bring up and down the whole desktop. # But, I'd rather something gets messed up than things not get # restarted. -if ! /sbin/needrestart -p -l &>/dev/null; then +if ! /sbin/needrestart -p &>/dev/null; then if [[ $hn == "$MAIL_HOST" || $hn == kd ]]; then # send us an email so we can decide what to do needrestart -r l