[OE-core] [PATCH] base-files: profile: Get rid of "resize"
Peter Kjellerstedt
peter.kjellerstedt at axis.com
Mon Sep 18 15:07:52 UTC 2017
> -----Original Message-----
> From: openembedded-core-bounces at lists.openembedded.org
> [mailto:openembedded-core-bounces at lists.openembedded.org] On Behalf Of
> Mike Looijmans
> Sent: den 18 september 2017 16:07
> To: openembedded-core at lists.openembedded.org
> Cc: Mike Looijmans <mike.looijmans at topic.nl>; Peter Kjellerstedt
> <peter.kjellerstedt at axis.com>
> Subject: [OE-core] [PATCH] base-files: profile: Get rid of "resize"
>
> The "resize" command actually outputs shell commands to be executed, for
> example:
>
> $ resize
> COLUMNS=102;
> LINES=27;
> export COLUMNS LINES;
>
> The output of "resize" is being discarded to /dev/null so the call has no
> effect whatsoever, and does not change the environment (it cannot change the
> environment of its parent). Remove the call and hence solve the messages
> about shells missing "command" or "tty" or "resize".
>
> Signed-off-by: Mike Looijmans <mike.looijmans at topic.nl>
> ---
> meta/recipes-core/base-files/base-files/profile | 9 ---------
> 1 file changed, 9 deletions(-)
>
> diff --git a/meta/recipes-core/base-files/base-files/profile b/meta/recipes-core/base-files/base-files/profile
> index a062028..cfd0d69 100644
> --- a/meta/recipes-core/base-files/base-files/profile
> +++ b/meta/recipes-core/base-files/base-files/profile
> @@ -20,15 +20,6 @@ if [ -d /etc/profile.d ]; then
> unset i
> fi
>
> -if command -v resize >/dev/null && command -v tty >/dev/null; then
> - # Make sure we are on a serial console (i.e. the device used starts with
> - # /dev/tty[A-z]), otherwise we confuse e.g. the eclipse launcher which
> - # tries do use ssh
> - case $(tty) in
> - /dev/tty[A-z]*) resize >/dev/null;;
> - esac
> -fi
> -
> export PATH PS1 OPIEDIR QPEDIR QTDIR EDITOR TERM
>
> umask 022
> --
> 1.9.1
Hold on. Looking at busybox' source code for resize, it seems that
it actually does something besides outputting the shell code to
set the variables (which is actually enabled by a separate feature
called ENABLE_FEATURE_RESIZE_PRINT). It also calls
ioctl(STDERR_FILENO, TIOCSWINSZ, &w) where w contains the
calculated sizes.
However, I also just learnt that the busybox implementation of
resize uses stderr to send control codes to move the cursor to
find the tty sizes, which means that if one uses resize 2>/dev/null
as my patch suggested, it does not work at all and just times out
after three seconds.
What a mess...
//Peter
More information about the Openembedded-core
mailing list