diff -Nru byobu-5.127/ChangeLog byobu-5.129/ChangeLog --- byobu-5.127/ChangeLog 2018-08-12 16:35:59.000000000 +0000 +++ byobu-5.129/ChangeLog 2019-06-12 23:39:36.000000000 +0000 @@ -1,4 +1,105 @@ -byobu (5.127) released; urgency=medium +byobu (5.129) released; urgency=medium + + * debian/control: + - recommend less package, for BYOBU_PAGER + + -- Dustin Kirkland Tue, 11 Jun 2019 19:56:15 -0500 + +byobu (5.128-0ubuntu1) eoan; urgency=medium + + [ Dustin Kirkland ] + * usr/bin/ctail: + - Quotes are needed around "$@" to keep parameters from splitting + on spaces. + - https://github.com/dustinkirkland/byobu/pull/31 + * usr/lib/byobu/logo: + - "SuSE" name is an outdated version of it. Use the modern one: SUSE + * usr/lib/byobu/include/config.py.in, usr/lib/byobu/include/select- + session.py: + - use env python3 for portability to other Linux and Mac systems + (hopefully that's still okay for Debian / Ubuntu?) + - https://github.com/dustinkirkland/byobu/pull/29 + * usr/share/byobu/profiles/bashrc: + - Unescaping colors in bash prompt causes problems with scrolling + history in bash prompt. you can see leftovers from previous + commands when going back by history. + All colors in command prompt should be escaped with [ ] + - https://github.com/dustinkirkland/byobu/pull/30 + * usr/lib/byobu/wifi_quality: + - prefer iwconfig over iw for now, iw is not working for me + * usr/share/byobu/profiles/tmux: + - flatten some of our color configuration to match the new tmux format + * usr/lib/byobu/disk_io: + - ensure some values are set to zero, if unreadable + - fixes a bug where disk_io causes the rest of the status line to fail + * usr/lib/byobu/include/select-session.py: LP: #1750430 + - fix bug creating a mess of sessions, where cycling through a bunch + of copies of the same session + + [ Fede Luzzi ] + * usr/lib/byobu/include/mondrian, usr/share/byobu/profiles/tmux: + - On tmux version 1.9 all the styles *-bg/fg/attr were deprecated and + replaced with *-style bg=/ fg=/ attribute + In the upcoming version 2.9, this commands are gone and will break + byobu style. this fix that issue and mantain compatibility with upcoming + tmux versions. + + [ Paride Legovini ] + * debian/source_byobu.py: + - Do not include the user's .screenrc in the apport generated crash report + + [ Jeffery To ] + * usr/bin/byobu-disable-prompt.in, + usr/bin/byobu-janitor.in: + - Test if $HOME/.bashrc exists before modifying it (and potentially + creating it) + * usr/bin/byobu-export.in: + - Use echo if the gettext command is not available + * usr/bin/byobu.in: + - Use readlink if the tty command is not available + * usr/bin/byobu-janitor.in: + - Add fallback if the install command is not available + * usr/bin/byobu-launch.in: + - Don't autolaunch for ARM serial consoles + * usr/lib/byobu/disk_io: + - Ensure the detected mount point device exists + * usr/lib/byobu/hostname: + - Read from /proc/sys/kernel/hostname if the hostname command is not + available + * usr/lib/byobu/logo: + - Add logo for OpenWrt + * usr/lib/byobu/processes: + - Handle stderr for ps, e.g. unsupported options + - Remove unnecessary awk call; wc -l only outputs one value + * usr/lib/byobu/raid: + - Ensure /proc/mdstat is readable + * usr/lib/byobu/release: + - Fix typo + * usr/lib/byobu/services: + - Fix reading services from $BYOBU_CONFIG_DIR/statusrc + * usr/lib/byobu/session: + - Fix screen session regex + * usr/lib/byobu/updates_available: + - Add support for opkg (OpenWrt) + * usr/lib/byobu/users: + - Handle stderr for ps, e.g. unsupported options + - Fix trailing '#' sign + * usr/lib/byobu/whoami: + - Use id if the whoami command is not available + - Read from /etc/passwd if the getent command is not available + * usr/lib/byobu/wifi_quality: + - Add support for iw (preferred over iwconfig) + - Make logic more similar to other status notifications + * usr/share/byobu/keybindings/f-keys.tmux: + - Remove -k for new-window. In older versions of tmux, -k without + -t had no effect. In tmux 2.8, -k without -t will + not trigger a new window; the given command is executed in the + current window instead. + - Rename the new window created after adding a new session + + -- Dustin Kirkland Tue, 11 Jun 2019 19:56:12 -0500 + +byobu (5.127-0ubuntu1) cosmic; urgency=medium * usr/share/byobu/profiles/bashrc: - Googley PS1 for non-Ubuntu distros @@ -53,7 +154,7 @@ * usr/share/byobu/profiles/bashrc: - fix missing bash 256 ps1 colors - -- Dustin Kirkland Sun, 27 May 2018 18:07:11 -0500 + -- Dustin Kirkland Sun, 12 Aug 2018 11:37:06 -0500 byobu (5.126-0ubuntu1) cosmic; urgency=medium diff -Nru byobu-5.127/debian/changelog byobu-5.129/debian/changelog --- byobu-5.127/debian/changelog 2018-09-20 09:44:18.000000000 +0000 +++ byobu-5.129/debian/changelog 2019-10-23 09:13:20.000000000 +0000 @@ -1,8 +1,109 @@ -byobu (5.127-0ubuntu1~18.04.york0) bionic; urgency=medium +byobu (5.129-0ubuntu1~18.04.york0) bionic; urgency=medium * No-change backport - -- Jonathon Fernyhough Thu, 20 Sep 2018 10:42:35 +0100 + -- Jonathon Fernyhough Wed, 23 Oct 2019 10:13:20 +0100 + +byobu (5.129-0ubuntu1) eoan; urgency=medium + + * debian/control: + - recommend less package, for BYOBU_PAGER + + -- Dustin Kirkland Tue, 11 Jun 2019 19:56:15 -0500 + +byobu (5.128-0ubuntu1) eoan; urgency=medium + + [ Dustin Kirkland ] + * usr/bin/ctail: + - Quotes are needed around "$@" to keep parameters from splitting + on spaces. + - https://github.com/dustinkirkland/byobu/pull/31 + * usr/lib/byobu/logo: + - "SuSE" name is an outdated version of it. Use the modern one: SUSE + * usr/lib/byobu/include/config.py.in, usr/lib/byobu/include/select- + session.py: + - use env python3 for portability to other Linux and Mac systems + (hopefully that's still okay for Debian / Ubuntu?) + - https://github.com/dustinkirkland/byobu/pull/29 + * usr/share/byobu/profiles/bashrc: + - Unescaping colors in bash prompt causes problems with scrolling + history in bash prompt. you can see leftovers from previous + commands when going back by history. + All colors in command prompt should be escaped with [ ] + - https://github.com/dustinkirkland/byobu/pull/30 + * usr/lib/byobu/wifi_quality: + - prefer iwconfig over iw for now, iw is not working for me + * usr/share/byobu/profiles/tmux: + - flatten some of our color configuration to match the new tmux format + * usr/lib/byobu/disk_io: + - ensure some values are set to zero, if unreadable + - fixes a bug where disk_io causes the rest of the status line to fail + * usr/lib/byobu/include/select-session.py: LP: #1750430 + - fix bug creating a mess of sessions, where cycling through a bunch + of copies of the same session + + [ Fede Luzzi ] + * usr/lib/byobu/include/mondrian, usr/share/byobu/profiles/tmux: + - On tmux version 1.9 all the styles *-bg/fg/attr were deprecated and + replaced with *-style bg=/ fg=/ attribute + In the upcoming version 2.9, this commands are gone and will break + byobu style. this fix that issue and mantain compatibility with upcoming + tmux versions. + + [ Paride Legovini ] + * debian/source_byobu.py: + - Do not include the user's .screenrc in the apport generated crash report + + [ Jeffery To ] + * usr/bin/byobu-disable-prompt.in, + usr/bin/byobu-janitor.in: + - Test if $HOME/.bashrc exists before modifying it (and potentially + creating it) + * usr/bin/byobu-export.in: + - Use echo if the gettext command is not available + * usr/bin/byobu.in: + - Use readlink if the tty command is not available + * usr/bin/byobu-janitor.in: + - Add fallback if the install command is not available + * usr/bin/byobu-launch.in: + - Don't autolaunch for ARM serial consoles + * usr/lib/byobu/disk_io: + - Ensure the detected mount point device exists + * usr/lib/byobu/hostname: + - Read from /proc/sys/kernel/hostname if the hostname command is not + available + * usr/lib/byobu/logo: + - Add logo for OpenWrt + * usr/lib/byobu/processes: + - Handle stderr for ps, e.g. unsupported options + - Remove unnecessary awk call; wc -l only outputs one value + * usr/lib/byobu/raid: + - Ensure /proc/mdstat is readable + * usr/lib/byobu/release: + - Fix typo + * usr/lib/byobu/services: + - Fix reading services from $BYOBU_CONFIG_DIR/statusrc + * usr/lib/byobu/session: + - Fix screen session regex + * usr/lib/byobu/updates_available: + - Add support for opkg (OpenWrt) + * usr/lib/byobu/users: + - Handle stderr for ps, e.g. unsupported options + - Fix trailing '#' sign + * usr/lib/byobu/whoami: + - Use id if the whoami command is not available + - Read from /etc/passwd if the getent command is not available + * usr/lib/byobu/wifi_quality: + - Add support for iw (preferred over iwconfig) + - Make logic more similar to other status notifications + * usr/share/byobu/keybindings/f-keys.tmux: + - Remove -k for new-window. In older versions of tmux, -k without + -t had no effect. In tmux 2.8, -k without -t will + not trigger a new window; the given command is executed in the + current window instead. + - Rename the new window created after adding a new session + + -- Dustin Kirkland Tue, 11 Jun 2019 19:56:12 -0500 byobu (5.127-0ubuntu1) cosmic; urgency=medium @@ -59,7 +160,7 @@ * usr/share/byobu/profiles/bashrc: - fix missing bash 256 ps1 colors - -- Dustin Kirkland Sun, 27 May 2018 18:07:11 -0500 + -- Dustin Kirkland Sun, 12 Aug 2018 11:37:06 -0500 byobu (5.126-0ubuntu1) cosmic; urgency=medium diff -Nru byobu-5.127/debian/control byobu-5.129/debian/control --- byobu-5.127/debian/control 2018-05-27 23:07:11.000000000 +0000 +++ byobu-5.129/debian/control 2019-06-12 00:56:15.000000000 +0000 @@ -18,8 +18,9 @@ python3, python3-newt, tmux (>= 1.5), - gawk + gawk, Recommends: + less, pastebinit, sensible-utils, run-one diff -Nru byobu-5.127/debian/source_byobu.py byobu-5.129/debian/source_byobu.py --- byobu-5.127/debian/source_byobu.py 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/debian/source_byobu.py 2019-06-01 21:18:56.000000000 +0000 @@ -10,4 +10,3 @@ def add_info(report): attach_related_packages(report, ['byobu*', 'screen*']) report['Binaries'] = command_output(['sh', '-c', 'ls -alF /usr/bin/screen* /usr/bin/byobu*']) - attach_file_if_exists(report, path.expanduser('~/.screenrc'), 'ScreenRC') diff -Nru byobu-5.127/usr/bin/byobu-disable-prompt.in byobu-5.129/usr/bin/byobu-disable-prompt.in --- byobu-5.127/usr/bin/byobu-disable-prompt.in 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/usr/bin/byobu-disable-prompt.in 2019-06-01 20:40:30.000000000 +0000 @@ -22,6 +22,8 @@ [ -z "${BYOBU_PREFIX}" ] && export BYOBU_PREFIX="@prefix@" || export BYOBU_PREFIX . "${BYOBU_PREFIX}/lib/${PKG}/include/common" +[ -w "$HOME/.bashrc" ] || exit 1 + $BYOBU_SED_INLINE -e "/#byobu-prompt#$/d" "$HOME/.bashrc" if [ "$1" != "--no-reload" ]; then diff -Nru byobu-5.127/usr/bin/byobu-export.in byobu-5.129/usr/bin/byobu-export.in --- byobu-5.127/usr/bin/byobu-export.in 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/usr/bin/byobu-export.in 2019-06-01 20:40:30.000000000 +0000 @@ -22,7 +22,13 @@ [ -z "${BYOBU_PREFIX}" ] && export BYOBU_PREFIX="@prefix@" || export BYOBU_PREFIX . "${BYOBU_PREFIX}/lib/${PKG}/include/common" -gettext " +if eval $BYOBU_TEST gettext >/dev/null 2>&1; then + command=gettext +else + command=echo +fi + +$command " The byobu-export utility is now deprecated. To install byobu on a system for which byobu is not packaged, or diff -Nru byobu-5.127/usr/bin/byobu.in byobu-5.129/usr/bin/byobu.in --- byobu-5.127/usr/bin/byobu.in 2018-08-12 15:40:31.000000000 +0000 +++ byobu-5.129/usr/bin/byobu.in 2019-06-12 00:56:14.000000000 +0000 @@ -18,7 +18,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -VERSION=5.127 +VERSION=5.129 PKG="byobu" # All sorts of things go wrong if you don't own your $HOME dir. @@ -62,7 +62,11 @@ export BYOBU_BACKEND # Store the parent tty -export BYOBU_TTY=$(tty) +if eval $BYOBU_TEST tty >/dev/null 2>&1; then + export BYOBU_TTY=$(tty) +else + export BYOBU_TTY=$(readlink /proc/$$/fd/0) +fi # Get the default window name [ -n "$BYOBU_WINDOW_NAME" ] || BYOBU_WINDOW_NAME=- diff -Nru byobu-5.127/usr/bin/byobu-janitor.in byobu-5.129/usr/bin/byobu-janitor.in --- byobu-5.127/usr/bin/byobu-janitor.in 2018-08-12 14:01:44.000000000 +0000 +++ byobu-5.129/usr/bin/byobu-janitor.in 2019-06-01 20:40:30.000000000 +0000 @@ -41,7 +41,14 @@ PROFILE="$BYOBU_CONFIG_DIR/profile" # Create byobu-exchange buffer file, with secure permissions, if it doesn't exist -[ -e "$BYOBU_RUN_DIR/printscreen" ] || install -m 600 /dev/null "$BYOBU_RUN_DIR/printscreen" +if ! [ -e "$BYOBU_RUN_DIR/printscreen" ]; then + if eval $BYOBU_TEST install >/dev/null 2>&1; then + install -m 600 /dev/null "$BYOBU_RUN_DIR/printscreen" + else + cp /dev/null "$BYOBU_RUN_DIR/printscreen" + chmod 600 "$BYOBU_RUN_DIR/printscreen" + fi +fi # Affects: users who launched using sudo, such that their config dir # is not writable by them @@ -112,7 +119,8 @@ rm -f "$FLAG" "/var/run/screen/S-$USER/$PKG.reload-required" # Affects: Upgrades from <= byobu 5.50, install byobu prompt if using stock bashrc -if ! (grep -qs "#byobu-prompt#$" "$HOME/.bashrc") && ! [ -e "$BYOBU_CONFIG_DIR/prompt" ]; then +if [ -r /etc/skel/.bashrc ] && [ -r "$HOME/.bashrc" ] && [ -w "$HOME/.bashrc" ] && \ + ! (grep -qs "#byobu-prompt#$" "$HOME/.bashrc") && ! [ -e "$BYOBU_CONFIG_DIR/prompt" ]; then if eval $BYOBU_TEST diff >/dev/null 2>&1; then if diff /etc/skel/.bashrc "$HOME/.bashrc" >/dev/null 2>&1; then printf "[ -r $BYOBU_CONFIG_DIR/prompt ] && . $BYOBU_CONFIG_DIR/prompt #byobu-prompt#\n" >> "$HOME/.bashrc" diff -Nru byobu-5.127/usr/bin/byobu-launch.in byobu-5.129/usr/bin/byobu-launch.in --- byobu-5.127/usr/bin/byobu-launch.in 2016-09-15 19:22:48.000000000 +0000 +++ byobu-5.129/usr/bin/byobu-launch.in 2019-06-01 20:40:30.000000000 +0000 @@ -31,7 +31,7 @@ # $HOME/.bashrc: export BYOBU_DISABLE=1 _tty=$(tty) -if [ "${_tty#/dev/ttyS}" != "$_tty" ]; then +if [ "${_tty#/dev/ttyS}" != "$_tty" ] && [ "${_tty#/dev/ttyAMA}" != "$_tty" ]; then # Don't autolaunch byobu on serial consoles # You can certainly run 'byobu' manually, though echo diff -Nru byobu-5.127/usr/bin/ctail byobu-5.129/usr/bin/ctail --- byobu-5.127/usr/bin/ctail 2015-01-12 23:22:11.000000000 +0000 +++ byobu-5.129/usr/bin/ctail 2019-03-19 02:12:58.000000000 +0000 @@ -20,7 +20,7 @@ # along with this program. If not, see . if which ccze >/dev/null 2>&1; then - tail -F $@ | ccze -A + tail -F "$@" | ccze -A else echo "ERROR: ccze not found, hint..." 1>&2 echo " sudo apt-get install ccze" 2>&1 diff -Nru byobu-5.127/usr/lib/byobu/disk_io byobu-5.129/usr/lib/byobu/disk_io --- byobu-5.127/usr/lib/byobu/disk_io 2016-09-15 19:22:48.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/disk_io 2019-06-12 00:00:52.000000000 +0000 @@ -50,6 +50,7 @@ /dev/*) part="${mount_point}";; *) part=$(awk '$2 == mp { print $1 ; exit(0); }' "mp=$mount_point" /etc/mtab);; esac + [ -e "$part" ] || return getdisk "$part" local disk=${_RET} local t2=$(date +%s) t1= @@ -61,15 +62,15 @@ if [ $t2 -le $t1 ]; then rate=0 else - [ -r "$cache" ] && read x1 < "$cache" + [ -r "$cache" ] && read x1 < "$cache" || x1=0 local a1= a2= a3= a4= a5= a6= a7= a8= a9= a10= read a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 other < "/sys/block/$disk/stat" if [ "$i" = "read" ]; then symbol="$ICON_RD" - x2="$a3" + [ -n "$a3" ] && x2="$a3" || x2=0 else symbol="$ICON_WR" - x2="$a7" + [ -n "$a7" ] && x2="$a7" || x2=0 fi printf "%s" "$x2" > "$cache" rate=$((($x2 - $x1) / ($t2 - $t1) * 512 / 1024)) diff -Nru byobu-5.127/usr/lib/byobu/hostname byobu-5.129/usr/lib/byobu/hostname --- byobu-5.127/usr/lib/byobu/hostname 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/hostname 2019-06-01 20:40:30.000000000 +0000 @@ -20,12 +20,16 @@ # along with this program. If not, see . __hostname_detail() { - hostname -f + hostname -f 2>/dev/null } __hostname() { local h= - h=$(hostname -s 2>/dev/null || hostname) + if eval $BYOBU_TEST hostname >/dev/null 2>&1; then + h=$(hostname -s 2>/dev/null || hostname) + elif [ -r /proc/sys/kernel/hostname ]; then + read h < /proc/sys/kernel/hostname + fi if metadata_available; then local cache="$BYOBU_RUN_DIR/cache.$BYOBU_BACKEND/hostname" # Background a retrieval of our public hostname diff -Nru byobu-5.127/usr/lib/byobu/include/config.py.in byobu-5.129/usr/lib/byobu/include/config.py.in --- byobu-5.127/usr/lib/byobu/include/config.py.in 2018-08-12 16:17:32.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/include/config.py.in 2019-03-19 02:24:22.000000000 +0000 @@ -1,4 +1,4 @@ -#!/usr/bin/python3 +#!/usr/bin/env python3 # # config.py # Copyright (C) 2008 Canonical Ltd. diff -Nru byobu-5.127/usr/lib/byobu/include/mondrian byobu-5.129/usr/lib/byobu/include/mondrian --- byobu-5.127/usr/lib/byobu/include/mondrian 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/include/mondrian 2019-06-01 21:24:16.000000000 +0000 @@ -62,10 +62,10 @@ tmux kill-window -t mondrian tmux new-window -n mondrian "$BYOBU_PREFIX/lib/byobu/include/mondrian color $white_color" \; \ - set-option -g pane-active-border-bg colour231 \; \ - set-option -g pane-active-border-fg black \; \ - set-option -g pane-border-bg colour231 \; \ - set-option -g pane-border-fg black \; \ + set-option -g pane-active-border-style bg=colour231 \; \ + set-option -g pane-active-border-style fg=black \; \ + set-option -g pane-border-style bg=colour231 \; \ + set-option -g pane-border-style fg=black \; \ split-window $(get_random_direction) "$BYOBU_PREFIX/lib/byobu/include/mondrian color $white_color" \; \ split-window $(get_random_direction) -t $((RANDOM % 2)) "$BYOBU_PREFIX/lib/byobu/include/mondrian color $white_color" \; \ split-window $(get_random_direction) -t $((RANDOM % 3)) "$BYOBU_PREFIX/lib/byobu/include/mondrian color $white_color" \; \ diff -Nru byobu-5.127/usr/lib/byobu/include/select-session.py byobu-5.129/usr/lib/byobu/include/select-session.py --- byobu-5.127/usr/lib/byobu/include/select-session.py 2018-08-12 16:17:29.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/include/select-session.py 2019-06-12 00:18:51.000000000 +0000 @@ -1,4 +1,4 @@ -#!/usr/bin/python3 +#!/usr/bin/env python3 # # select-session.py # Copyright (C) 2010 Canonical Ltd. @@ -132,11 +132,7 @@ cull_zombies(session_name) # must use the binary, not the wrapper! if backend == "tmux": - if reuse_sessions: - os.execvp("tmux", ["tmux", "attach", "-t", session_name]) - else: - os.execvp("tmux", ["tmux", "-2", "new-session", "-t", session_name, "-s", "_%s-%i" % (session_name, os.getpid())]) - + os.execvp("tmux", ["tmux", "attach", "-t", session_name]) else: os.execvp("screen", ["screen", "-AOxRR", session_name]) diff -Nru byobu-5.127/usr/lib/byobu/logo byobu-5.129/usr/lib/byobu/logo --- byobu-5.127/usr/lib/byobu/logo 2018-08-12 13:42:11.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/logo 2019-06-01 20:40:30.000000000 +0000 @@ -111,6 +111,10 @@ logo=" lm " $MARKUP && printf "$(color g w)$logo$(color -)$(color g w)$(color -) " || printf "$logo" ;; + *openwrt*) + logo="OWrt" + $MARKUP && printf "$(color b colour66 W)%s$(color -)" "$logo" || printf "$logo" + ;; *red*hat*|*rhel*) logo=" RH " $MARKUP && printf "$(color R k)%s$(color -)" "$logo" || printf "$logo" @@ -124,7 +128,7 @@ $MARKUP && printf "$(color u B k)%s$(color -)" "$logo" || printf "$logo" ;; *suse*) - logo="SuSE" + logo="SUSE" $MARKUP && printf "$(color W g)%s$(color -)" "$logo" || printf "$logo" ;; *xandros*) diff -Nru byobu-5.127/usr/lib/byobu/processes byobu-5.129/usr/lib/byobu/processes --- byobu-5.127/usr/lib/byobu/processes 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/processes 2019-06-01 20:40:30.000000000 +0000 @@ -20,15 +20,15 @@ # along with this program. If not, see . __processes_detail() { - ps -ej + ps -ej 2>/dev/null } __processes() { local count= if [ -r /proc ]; then - count=$(ls -d /proc/[0-9]* 2>/dev/null| wc -l) + count=$(ls -d /proc/[0-9]* 2>/dev/null | wc -l) else - count=$(ps -ef | wc -l | awk '{print $1}') + count=$(ps -ef | wc -l) fi [ -n "$count" ] || return color b y w; printf "%s" "$count"; color -; color y w; printf "&"; color -- diff -Nru byobu-5.127/usr/lib/byobu/raid byobu-5.129/usr/lib/byobu/raid --- byobu-5.127/usr/lib/byobu/raid 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/raid 2019-06-01 20:40:30.000000000 +0000 @@ -24,6 +24,7 @@ } __raid() { + [ -r /proc/mdstat ] || return while read line; do local p msg # Errors in your raid diff -Nru byobu-5.127/usr/lib/byobu/release byobu-5.129/usr/lib/byobu/release --- byobu-5.127/usr/lib/byobu/release 2016-09-15 19:22:48.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/release 2019-06-01 20:40:30.000000000 +0000 @@ -30,7 +30,7 @@ true elif [ -r "/etc/os-release" ]; then # lsb_release is *really* slow; try to use /etc/os-release - release=$(. /etc/os-release && echo "$VERSION_ID") + RELEASE=$(. /etc/os-release && echo "$VERSION_ID") elif [ -r "/etc/issue" ]; then # next try /etc/issue first local issue diff -Nru byobu-5.127/usr/lib/byobu/services byobu-5.129/usr/lib/byobu/services --- byobu-5.127/usr/lib/byobu/services 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/services 2019-06-01 20:40:30.000000000 +0000 @@ -43,7 +43,7 @@ } __services() { - local services= + local services="$SERVICES" # Users can define a list of services to monitor in $BYOBU_CONFIG_DIR/status if [ -z "$services" ]; then if [ -f "/etc/eucalyptus/eucalyptus.conf" ]; then diff -Nru byobu-5.127/usr/lib/byobu/session byobu-5.129/usr/lib/byobu/session --- byobu-5.127/usr/lib/byobu/session 2018-05-27 19:30:52.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/session 2019-06-01 20:40:30.000000000 +0000 @@ -34,7 +34,7 @@ fi ;; screen) - local count=$(screen -ls | grep "^ .*\)$" | wc -l) + local count=$(screen -ls | grep "^\s\+.*)$" | wc -l) if [ $count -gt 1 ]; then color u W k; printf "${ICON_SESSION}%S"; color -- else diff -Nru byobu-5.127/usr/lib/byobu/updates_available byobu-5.129/usr/lib/byobu/updates_available --- byobu-5.127/usr/lib/byobu/updates_available 2018-05-27 19:53:59.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/updates_available 2019-06-01 20:40:30.000000000 +0000 @@ -67,9 +67,16 @@ elif eval $BYOBU_TEST pacman >/dev/null; then # If pacman (Archlinux) exists, use it LC_ALL=C flock -xn "$flock" pacman -Sup | grep -vc "^\(::\| \)" >$mycache 2>/dev/null & + elif eval $BYOBU_TEST opkg >/dev/null; then + # If opkg (OpenWrt) exists, use it, also background if flock exists + if eval $BYOBU_TEST flock >/dev/null; then + flock -xn "$flock" opkg list-upgradable | wc -l >$mycache 2>/dev/null & + else + opkg list-upgradable | wc -l >$mycache & + fi elif eval $BYOBU_TEST brew >/dev/null; then # If homebrew (Mac OSX) exists, use it, also background if flock exists - if eval $BYOBU_TEST flock; then + if eval $BYOBU_TEST flock >/dev/null; then flock -xn "$flock" brew outdated | wc -l >$mycache 2>/dev/null & else brew outdated | wc -l >$mycache & @@ -106,6 +113,18 @@ [ "$db" -nt "$mycache" ] && return 0 done return 1 + elif eval $BYOBU_TEST opkg >/dev/null; then + # OpenWrt + [ ! -e /var/lock/opkg.lock ] || return 1 + if [ -d /var/opkg-lists ]; then + [ /var/opkg-lists -nt "$mycache" ] + return $? + else + local u s + read u s < "$mycache" + [ "$u" -gt 0 ] + return $? + fi elif eval $BYOBU_TEST brew >/dev/null; then # Mac OSX # check if any new versions have been installed since diff -Nru byobu-5.127/usr/lib/byobu/users byobu-5.129/usr/lib/byobu/users --- byobu-5.127/usr/lib/byobu/users 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/users 2019-06-01 20:40:30.000000000 +0000 @@ -22,7 +22,7 @@ # along with this program. If not, see . __users_detail() { - ps -ef | grep "sshd:.*@" | grep -v grep + ps -ef 2>/dev/null | grep "sshd:.*@" | grep -v grep } __users() { @@ -35,7 +35,7 @@ count=$(pgrep -f "^sshd:.*@|^/usr/sbin/sshd -i" | wc -l) || return fi if [ $count -gt 0 ]; then - color b w r; printf "%d" "$count"; color -; color w r; printf "#"; color -- + color b w r; printf "%d" "$count"; color -; color w r; printf "##"; color -- else rm -f "$BYOBU_RUN_DIR/status.$BYOBU_BACKEND/users"* fi diff -Nru byobu-5.127/usr/lib/byobu/whoami byobu-5.129/usr/lib/byobu/whoami --- byobu-5.127/usr/lib/byobu/whoami 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/whoami 2019-06-01 20:40:30.000000000 +0000 @@ -19,12 +19,28 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +___get_user() { + if eval $BYOBU_TEST whoami >/dev/null 2>&1; then + whoami + elif eval $BYOBU_TEST id >/dev/null 2>&1; then + id -un + fi +} + __whoami_detail() { - getent -- passwd "$USER" + local user=$(___get_user) + [ -n "$user" ] || return + if eval $BYOBU_TEST getent >/dev/null 2>&1; then + getent -- passwd "$user" + else + grep "^$user:" /etc/passwd + fi } __whoami() { - color bold2; printf "%s@" "$(whoami)"; color - + local user=$(___get_user) + [ -n "$user" ] || return + color bold2; printf "%s@" "$user"; color - } # vi: syntax=sh ts=4 noexpandtab diff -Nru byobu-5.127/usr/lib/byobu/wifi_quality byobu-5.129/usr/lib/byobu/wifi_quality --- byobu-5.127/usr/lib/byobu/wifi_quality 2016-04-07 22:05:52.000000000 +0000 +++ byobu-5.129/usr/lib/byobu/wifi_quality 2019-06-01 21:10:54.000000000 +0000 @@ -19,32 +19,64 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +___get_dev_list() { + if [ -n "$MONITORED_NETWORK" ]; then + echo "$MONITORED_NETWORK" + else + iw dev | grep Interface | cut -f2 -d\ + fi +} + __wifi_quality_detail() { - /sbin/iwconfig 2>/dev/null + if eval $BYOBU_TEST iw >/dev/null 2>&1; then + local dev + for dev in $(___get_dev_list); do + iw dev "$dev" info + iw dev "$dev" link + echo + done + elif eval $BYOBU_TEST iwconfig >/dev/null 2>&1; then + iwconfig 2>/dev/null + fi } __wifi_quality() { local out bitrate quality - # iwconfig is expected to output lines like: - # Bit Rate=54 Mb/s Tx-Power=15 dBm - # Link Quality=60/70 Signal level=-50 dBm - # the awk below tokenizes the output and prints shell evalable results - out=`iwconfig $MONITORED_NETWORK 2>/dev/null | - awk '$0 ~ /[ ]*Link Quality./ { - sub(/.*=/,"",$2); split($2,a,"/"); - printf "quality=%.0f\n", 100*a[1]/a[2] }; - $0 ~ /[ ]*Bit Rate/ { sub(/.*[:=]/,"",$2); printf("bitrate=%s\n", $2); } - '` - eval "$out" - [ -z "$bitrate" ] && bitrate="0" - if [ -z "$quality" ] || [ "$quality" = "0" ]; then - quality="0" + if eval $BYOBU_TEST iwconfig >/dev/null 2>&1; then + # iwconfig is expected to output lines like: + # Bit Rate=54 Mb/s Tx-Power=15 dBm + # Link Quality=60/70 Signal level=-50 dBm + # the awk below tokenizes the output and prints shell evalable results + out=`iwconfig $MONITORED_NETWORK 2>/dev/null | + awk '$0 ~ /[ ]*Link Quality./ { + sub(/.*=/,"",$2); split($2,a,"/"); + printf "quality=%.0f\n", 100*a[1]/a[2] }; + $0 ~ /[ ]*Bit Rate/ { sub(/.*[:=]/,"",$2); printf("bitrate=%s\n", $2); } + '` + eval "$out" + elif eval $BYOBU_TEST iw >/dev/null 2>&1; then + local dev + for dev in $(___get_dev_list); do + # iw is expected to output lines like: + # signal: -50 dBm + # rx bitrate: 216.0 MBit/s MCS 13 40MHz + # signal to quality: https://superuser.com/a/1360447 + out=`iw dev "$dev" link 2>/dev/null | + awk '$0 ~ /^\s*signal:/ { a = 100 * ($2 + 110) / 70; + printf "quality=%.0f\n", (a > 100) ? 100 : ((a < 0) ? 0 : a); } + $0 ~ /^\s*rx bitrate:/ { printf "bitrate=%s\n", $3; } + '` + eval "$out" + [ -z "$bitrate" ] || [ -z "$quality" ] || break + done fi - if [ "$bitrate" = "0" ] || [ "$quality" = "0" ] || [ -z "$bitrate" ] || [ -z "$quality"]; then + [ -n "$bitrate" ] || bitrate=0 + [ -n "$quality" ] || quality=0 + if [ "$bitrate" -gt 0 ] && [ "$quality" -gt 0 ]; then + printf "${ICON_WIFI}"; color b C k; printf "%s" "$bitrate"; color -; color C k; printf "%s" "$ICON_MBPS"; color -; color b C k; printf "%s" "$quality"; color -; color C k; printf "%s" "$PCT"; color -- + else rm -f "$BYOBU_RUN_DIR/status.$BYOBU_BACKEND/wifi_quality"* - return fi - printf "${ICON_WIFI}"; color b C k; printf "%s" "$bitrate"; color -; color C k; printf "%s" "$ICON_MBPS"; color -; color b C k; printf "%s" "$quality"; color -; color C k; printf "%s" "$PCT"; color -- } # vi: syntax=sh ts=4 noexpandtab diff -Nru byobu-5.127/usr/share/byobu/keybindings/f-keys.tmux byobu-5.129/usr/share/byobu/keybindings/f-keys.tmux --- byobu-5.127/usr/share/byobu/keybindings/f-keys.tmux 2018-05-27 19:30:52.000000000 +0000 +++ byobu-5.129/usr/share/byobu/keybindings/f-keys.tmux 2019-06-01 20:40:30.000000000 +0000 @@ -26,12 +26,12 @@ # Byobu's Keybindings # Documented in: $BYOBU_PREFIX/share/doc/byobu/help.tmux.txt -bind-key -n F1 new-window -k -n config byobu-config -bind-key -n S-F1 new-window -k -n help "sh -c '$BYOBU_PAGER $BYOBU_PREFIX/share/doc/byobu/help.tmux.txt'" +bind-key -n F1 new-window -n config byobu-config +bind-key -n S-F1 new-window -n help "sh -c '$BYOBU_PAGER $BYOBU_PREFIX/share/doc/byobu/help.tmux.txt'" bind-key -n F2 new-window -c "#{pane_current_path}" \; rename-window "-" bind-key -n C-F2 display-panes \; split-window -h -c "#{pane_current_path}" bind-key -n S-F2 display-panes \; split-window -v -c "#{pane_current_path}" -bind-key -n C-S-F2 new-session +bind-key -n C-S-F2 new-session \; rename-window "-" bind-key -n F3 previous-window bind-key -n F4 next-window bind-key -n M-Left previous-window @@ -54,7 +54,7 @@ bind-key -n M-S-Right resize-pane -R bind-key -n F5 source $BYOBU_PREFIX/share/byobu/profiles/tmuxrc bind-key -n M-F5 run-shell '$BYOBU_PREFIX/lib/byobu/include/toggle-utf8' \; source $BYOBU_PREFIX/share/byobu/profiles/tmuxrc -bind-key -n S-F5 new-window -k "$BYOBU_PREFIX/lib/byobu/include/cycle-status" \; source $BYOBU_PREFIX/share/byobu/profiles/tmuxrc +bind-key -n S-F5 new-window "$BYOBU_PREFIX/lib/byobu/include/cycle-status" \; source $BYOBU_PREFIX/share/byobu/profiles/tmuxrc bind-key -n C-F5 send-keys ". $BYOBU_PREFIX/bin/byobu-reconnect-sockets" \; send-keys Enter bind-key -n C-S-F5 new-window -d "byobu-select-profile -r" bind-key -n F6 detach @@ -68,9 +68,9 @@ bind-key -n F8 command-prompt -p "(rename-window) " "rename-window '%%'" bind-key -n C-F8 command-prompt -p "(rename-session) " "rename-session '%%'" bind-key -n S-F8 next-layout -bind-key -n M-S-F8 new-window -k "byobu-layout restore; clear; $SHELL" +bind-key -n M-S-F8 new-window "byobu-layout restore; clear; $SHELL" bind-key -n C-S-F8 command-prompt -p "Save byobu layout as:" "run-shell \"byobu-layout save '%%'\"" -bind-key -n F9 new-window -k -n config byobu-config +bind-key -n F9 new-window -n config byobu-config bind-key -n S-F9 command-prompt -p "Send command to all panes:" "run-shell \"$BYOBU_PREFIX/lib/byobu/include/tmux-send-command-to-all-panes '%%'\"" bind-key -n C-F9 command-prompt -p "Send command to all windows:" "run-shell \"$BYOBU_PREFIX/lib/byobu/include/tmux-send-command-to-all-windows '%%'\"" bind-key -n M-F9 display-panes \; setw synchronize-panes diff -Nru byobu-5.127/usr/share/byobu/profiles/bashrc byobu-5.129/usr/share/byobu/profiles/bashrc --- byobu-5.127/usr/share/byobu/profiles/bashrc 2018-08-12 16:32:10.000000000 +0000 +++ byobu-5.129/usr/share/byobu/profiles/bashrc 2019-03-19 02:30:04.000000000 +0000 @@ -54,7 +54,7 @@ ;; *) # Use Googley colors (blue / red / yellow / blue / green / red ) - PS1="${debian_chroot:+($debian_chroot)}\[\e[31m\]\$(byobu_prompt_status)\[\e[38;5;69m\]\u\[\e[38;5;214m\]@\[\e[38;5;167m\]\h\[\e[38;5;214m\]:\[\e[38;5;71m\]\w\[\e[38;5;214m\]\$(byobu_prompt_symbol)\e[00m\] " + PS1="${debian_chroot:+($debian_chroot)}\[\e[31m\]\$(byobu_prompt_status)\[\e[38;5;69m\]\u\[\e[38;5;214m\]@\[\e[38;5;167m\]\h\[\e[38;5;214m\]:\[\e[38;5;71m\]\w\[\e[38;5;214m\]\$(byobu_prompt_symbol)\[\e[00m\] " ;; esac fi diff -Nru byobu-5.127/usr/share/byobu/profiles/tmux byobu-5.129/usr/share/byobu/profiles/tmux --- byobu-5.127/usr/share/byobu/profiles/tmux 2018-08-12 15:52:36.000000000 +0000 +++ byobu-5.129/usr/share/byobu/profiles/tmux 2019-06-01 21:52:10.000000000 +0000 @@ -39,9 +39,8 @@ #set-option -g set-titles on #set-option -g set-titles-string '#(whoami)@#H - byobu (#S)' -set-option -g pane-active-border-bg $BYOBU_HIGHLIGHT -set-option -g pane-active-border-fg $BYOBU_HIGHLIGHT -set-option -g pane-border-fg $BYOBU_ACCENT +set-option -g pane-active-border-style bg=$BYOBU_HIGHLIGHT,fg=$BYOBU_HIGHLIGHT +set-option -g pane-border-style fg=$BYOBU_ACCENT set-option -g history-limit 100000 set-option -g display-panes-time 150 set-option -g display-panes-colour $BYOBU_ACCENT @@ -49,21 +48,12 @@ set-option -g clock-mode-colour $BYOBU_ACCENT set-option -g clock-mode-style 24 set-option -g mode-keys vi -set-option -g mode-bg $BYOBU_ACCENT -set-option -g mode-fg $BYOBU_LIGHT +set-option -g mode-style bg=$BYOBU_ACCENT,fg=$BYOBU_LIGHT -set-window-option -g window-status-attr default -set-window-option -g window-status-bg $BYOBU_DARK -set-window-option -g window-status-fg $BYOBU_LIGHT -set-window-option -g window-status-current-attr reverse -set-window-option -g window-status-current-bg $BYOBU_DARK -set-window-option -g window-status-current-fg $BYOBU_LIGHT -#set-window-option -g window-status-alert-bg $BYOBU_DARK -#set-window-option -g window-status-alert-fg $BYOBU_LIGHT -#set-window-option -g window-status-alert-attr bold -set-window-option -g window-status-activity-bg $BYOBU_DARK -set-window-option -g window-status-activity-fg $BYOBU_LIGHT -set-window-option -g window-status-activity-attr bold +set-window-option -g window-status-style default +set-window-option -g window-status-style bg=$BYOBU_DARK,fg=$BYOBU_LIGHT +set-window-option -g window-status-current-style bg=$BYOBU_DARK,fg=$BYOBU_LIGHT,reverse +set-window-option -g window-status-activity-style bg=$BYOBU_DARK,fg=$BYOBU_LIGHT,bold set-window-option -g automatic-rename on set-window-option -g aggressive-resize on set-window-option -g monitor-activity on @@ -79,12 +69,10 @@ #set -g default-command 'exec byobu-shell' set -g default-command $SHELL -set -g status-bg $BYOBU_DARK -set -g status-fg $BYOBU_LIGHT +set -g status-style bg=$BYOBU_DARK,fg=$BYOBU_LIGHT set -g status-interval 1 set -g status-left-length 256 set -g status-right-length 256 set -g status-left '#(byobu-status tmux_left)' set -g status-right '#(byobu-status tmux_right)'$BYOBU_DATE$BYOBU_TIME -set -g message-bg $BYOBU_ACCENT -set -g message-fg white +set -g message-style bg=$BYOBU_ACCENT,fg=white