Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-9]: src Pull up following revision(s) (requested by kim in ticket...



details:   https://anonhg.NetBSD.org/src/rev/41ff84031fc4
branches:  netbsd-9
changeset: 1001986:41ff84031fc4
user:      martin <martin%NetBSD.org@localhost>
date:      Sun Sep 13 12:11:07 2020 +0000

description:
Pull up following revision(s) (requested by kim in ticket #1080):

        etc/rc.d/motd: revision 1.10
        etc/rc.d/motd: revision 1.11
        share/man/man5/rc.conf.5: revision 1.186
        share/man/man5/rc.conf.5: revision 1.187
        etc/defaults/rc.conf: revision 1.159

Add optional release info in /etc/motd

My personal preferencese for /etc/rc.conf:

    update_motd_release=YES
    motd_release_tag='Binaries: '

This provides an explanation to users about the second version in motd.

Document update_motd_release and motd_release_tag

New sentence, new line.

Make a ": " suffix a fixed part of the release info tag

This results in correct updates to /etc/motd even when the value of
motd_release_tag is changed (a likely event).

Add safe quoting to outputting the read kernel version.

Thanks to kre@ for the feedback.

diffstat:

 etc/defaults/rc.conf     |   3 ++-
 etc/rc.d/motd            |  17 +++++++++++++----
 share/man/man5/rc.conf.5 |  16 ++++++++++++++--
 3 files changed, 29 insertions(+), 7 deletions(-)

diffs (94 lines):

diff -r d6241b567c74 -r 41ff84031fc4 etc/defaults/rc.conf
--- a/etc/defaults/rc.conf      Sun Sep 13 12:00:45 2020 +0000
+++ b/etc/defaults/rc.conf      Sun Sep 13 12:11:07 2020 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: rc.conf,v 1.151.2.1 2019/09/27 09:18:38 martin Exp $
+#      $NetBSD: rc.conf,v 1.151.2.2 2020/09/13 12:11:07 martin Exp $
 #
 # /etc/defaults/rc.conf --
 #      default configuration of /etc/rc.conf
@@ -132,6 +132,7 @@
 per_user_tmp_dir="/private/tmp"                        # real storage for /tmp
 clear_tmp=YES                                  # clear /tmp after reboot
 update_motd=YES                                        # updates /etc/motd
+update_motd_release=NO motd_release_tag=""     # release info in /etc/motd
 dmesg=YES              dmesg_flags="-t"        # write /var/run/dmesg.boot
 accounting=NO                                  # uses /var/account/acct
 newsyslog=NO           newsyslog_flags=""      # trim log files
diff -r d6241b567c74 -r 41ff84031fc4 etc/rc.d/motd
--- a/etc/rc.d/motd     Sun Sep 13 12:00:45 2020 +0000
+++ b/etc/rc.d/motd     Sun Sep 13 12:11:07 2020 +0000
@@ -1,6 +1,6 @@
 #!/bin/sh
 #
-# $NetBSD: motd,v 1.9 2004/08/13 18:08:03 mycroft Exp $
+# $NetBSD: motd,v 1.9.96.1 2020/09/13 12:11:07 martin Exp $
 #
 
 # PROVIDE: motd
@@ -16,7 +16,7 @@
 
 motd_start()
 {
-       #       Update kernel info in /etc/motd
+       #       Update kernel and release info in /etc/motd
        #       Must be done *before* interactive logins are possible
        #       to prevent possible race conditions.
        #
@@ -26,8 +26,17 @@
        fi
        ( umask 022
        T=/etc/_motd
-       sysctl -n kern.version | while read i; do echo $i; break; done > $T
-       sed '1{/^NetBSD.*/{d;};};' < /etc/motd >> $T
+       sysctl -n kern.version | while read i; do echo "$i"; break; done > $T
+       if checkyesno update_motd_release; then
+               local t=$(echo "${motd_release_tag%%:*}" | tr -d /)
+               sed -En '1{/^NetBSD/{'"${t:+s/^/${t}: /;}"'h;d;};q;}
+                   /^ *Build ID */{s//(/;s/$/)/;H;g;y/\n/ /;p;q;}
+                   ${g;p;}' < /etc/release >> $T
+               sed -E '1,2{/^([^:]*: )?NetBSD/{d;};};' \
+                   < /etc/motd >> $T
+       else
+               sed '1{/^NetBSD.*/{d;};};' < /etc/motd >> $T
+       fi
        cmp -s $T /etc/motd || cp $T /etc/motd
        rm -f $T
        )
diff -r d6241b567c74 -r 41ff84031fc4 share/man/man5/rc.conf.5
--- a/share/man/man5/rc.conf.5  Sun Sep 13 12:00:45 2020 +0000
+++ b/share/man/man5/rc.conf.5  Sun Sep 13 12:11:07 2020 +0000
@@ -1,4 +1,4 @@
-.\"    $NetBSD: rc.conf.5,v 1.181 2019/06/03 06:04:20 msaitoh Exp $
+.\"    $NetBSD: rc.conf.5,v 1.181.2.1 2020/09/13 12:11:07 martin Exp $
 .\"
 .\" Copyright (c) 1996 Matthew R. Green
 .\" All rights reserved.
@@ -55,7 +55,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd June 3, 2019
+.Dd September 11, 2020
 .Dt RC.CONF 5
 .Os
 .Sh NAME
@@ -603,6 +603,18 @@
 file to reflect the version of the running kernel.
 See
 .Xr motd 5 .
+.It Sy update_motd_release
+Boolean value.
+If enabled in addition to
+.Sy update_motd ,
+updates a second
+.Nx
+version string in the
+.Pa /etc/motd
+file to reflect the version, architecture, and Build ID of
+the installed userland.
+An optional prefix can be provided for this version string in
+.Sy motd_release_tag .
 .It Sy virecover
 Boolean value.
 Send notification mail to users if any recoverable files exist in



Home | Main Index | Thread Index | Old Index