From ea9da2782004d7c8d492ac7cef33f18e7f32b811 Mon Sep 17 00:00:00 2001 From: trasz Date: Wed, 5 Jul 2017 10:37:37 +0000 Subject: [PATCH] Run "resizewin -z" from the default shell profile files. This makes the terminal work properly out of the box when logging over a serial line, which is quite important for the user experience on boards like Raspberry Pi. It doesn't affect cases where the terminal size is already non-zero, such as SSH or vt(4) sessions. Note that this doesn't handle a scenario pointed out by rgrimes@: when the terminal is resized after login, the terminal size won't get updated even after logging out and back in. Reviewed by: imp Obtained from: CheriBSD Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D10642 --- etc/root/dot.login | 3 +++ etc/root/dot.profile | 2 ++ share/skel/dot.login | 1 + share/skel/dot.profile | 3 +++ 4 files changed, 9 insertions(+) diff --git a/etc/root/dot.login b/etc/root/dot.login index a849b68dbb41..b680705d017f 100644 --- a/etc/root/dot.login +++ b/etc/root/dot.login @@ -5,5 +5,8 @@ # see also csh(1), environ(7). # +# Query terminal size; useful for serial lines. +if ( -x /usr/bin/resizewin ) /usr/bin/resizewin -z + # Uncomment to display a random cookie each login: # if ( -x /usr/bin/fortune ) /usr/bin/fortune -s diff --git a/etc/root/dot.profile b/etc/root/dot.profile index 1656b9b214bb..8844a205b480 100644 --- a/etc/root/dot.profile +++ b/etc/root/dot.profile @@ -8,3 +8,5 @@ TERM=${TERM:-xterm} export TERM PAGER=more export PAGER + +if [ -x /usr/bin/resizewin ] ; then /usr/bin/resizewin -z ; fi diff --git a/share/skel/dot.login b/share/skel/dot.login index 170d25c7dc10..653a473969ee 100644 --- a/share/skel/dot.login +++ b/share/skel/dot.login @@ -5,4 +5,5 @@ # see also csh(1), environ(7). # +if ( -x /usr/bin/resizewin ) /usr/bin/resizewin -z if ( -x /usr/bin/fortune ) /usr/bin/fortune freebsd-tips diff --git a/share/skel/dot.profile b/share/skel/dot.profile index ad66198ce5e8..b333ba02a885 100644 --- a/share/skel/dot.profile +++ b/share/skel/dot.profile @@ -21,4 +21,7 @@ PAGER=more; export PAGER # set ENV to a file invoked each time sh is started for interactive use. ENV=$HOME/.shrc; export ENV +# Query terminal size; useful for serial lines. +if [ -x /usr/bin/resizewin ] ; then /usr/bin/resizewin -z ; fi + if [ -x /usr/bin/fortune ] ; then /usr/bin/fortune freebsd-tips ; fi