mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-22 22:21:10 +02:00
By default, pv automatically infers and uses the full width of the terminal. This generally makes sense for a console application, but in the case of pv it just causes the progress bar to be ridiculously wide when run on wide terminals, to the point it's hard to read. This CL is setting it to 80 characters, the widely accepted standard width for a terminal, in cases where the terminal appears to be larger than 80 columns. Note that: * Even with -w, pv appears to be resizing the progress bar as the terminal width changes midway through the run. This means that if a user widens the window, then the progress bar will go wide again and there's nothing to be done about it. * Theoretically, in very rare cases this may lead to a progress bar the exceeds the width of the terminal (i.e. set to 80 columns on a terminal that has just shrunk to fewer columns). The odds for such timing are close to nil and even then the damage is minimal. * This will work for non-terminal runs, or otherwise runs where stty does not produce any output. * To avoid the initialization overhead for all common.sh inclusion, replacing the variable with a function that prints the pv/cat command. BUG=None TEST=Ran ./image_to_usb on wide and narrow terminal windows, it works. Change-Id: I549df1dd29e93909ea646ae9b9e09d9a588ad382 Reviewed-on: https://gerrit.chromium.org/gerrit/40937 Commit-Queue: Gilad Arnold <garnold@chromium.org> Reviewed-by: Gilad Arnold <garnold@chromium.org> Tested-by: Gilad Arnold <garnold@chromium.org>