From 946c975277bce7b11ba97bbac95c051f175ccca6 Mon Sep 17 00:00:00 2001 From: Dustin Kirkland Date: Sat, 10 Feb 2024 11:24:14 -0600 Subject: [PATCH 1/7] opening 6.12 --- debian/changelog | 10 ++++++++-- usr/bin/byobu.in | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/debian/changelog b/debian/changelog index b36066d3..816cc94e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,10 @@ -byobu (6.11) unreleased; urgency=medium +byobu (6.12) unreleased; urgency=medium + + * UNRELEASED + + -- Dustin Kirkland Sat, 10 Feb 2024 11:24:14 -0600 + +byobu (6.11-0ubuntu1) noble; urgency=medium * usr/share/byobu/profiles/bashrc: - fix BYOBU_RUN_DIR and BYOBU_PREFIX issue @@ -11,7 +17,7 @@ byobu (6.11) unreleased; urgency=medium - added support for dnf package manager - https://code.launchpad.net/~sanjay-ankur/byobu/byobu/+merge/415959 - -- Dustin Kirkland Sat, 10 Feb 2024 11:03:36 -0600 + -- Dustin Kirkland Sat, 10 Feb 2024 11:24:04 -0600 byobu (6.10-0ubuntu1) noble; urgency=medium diff --git a/usr/bin/byobu.in b/usr/bin/byobu.in index c53fb124..b04eb1ab 100755 --- a/usr/bin/byobu.in +++ b/usr/bin/byobu.in @@ -18,7 +18,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . -VERSION=6.11 +VERSION=6.12 PKG="byobu" # All sorts of things go wrong if you don't own your $HOME dir. From 0366c573a37ef5113b226cac53f0af87844cc841 Mon Sep 17 00:00:00 2001 From: Dustin Kirkland Date: Sat, 17 Feb 2024 06:19:29 -0600 Subject: [PATCH 2/7] added git branch to bash ps1 prompt --- debian/changelog | 5 +++-- usr/share/byobu/profiles/bashrc | 11 ++++++----- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/debian/changelog b/debian/changelog index 816cc94e..847f3551 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,9 @@ byobu (6.12) unreleased; urgency=medium - * UNRELEASED + * usr/share/byobu/profiles/bashrc: + - added git branch to bash ps1 prompt - -- Dustin Kirkland Sat, 10 Feb 2024 11:24:14 -0600 + -- Dustin Kirkland Sat, 17 Feb 2024 06:18:47 -0600 byobu (6.11-0ubuntu1) noble; urgency=medium diff --git a/usr/share/byobu/profiles/bashrc b/usr/share/byobu/profiles/bashrc index cf31b46b..7fa07d67 100644 --- a/usr/share/byobu/profiles/bashrc +++ b/usr/share/byobu/profiles/bashrc @@ -28,6 +28,7 @@ esac [ -d "$BYOBU_PREFIX" ] || BYOBU_PREFIX="/usr" [ -r "$BYOBU_PREFIX/lib/byobu/include/dirs" ] && . "$BYOBU_PREFIX/lib/byobu/include/dirs" +byobu_prompt_git() { git branch 2>/dev/null | sed -e "/^[^*]/d" -e "s/* \(.*\)/ (\1)/"; } byobu_prompt_status() { local e=$?; [ $e != 0 ] && echo -e " $e "; } byobu_prompt_symbol() { [ "$USER" = "root" ] && printf "%s" "#" || printf "%s" "\$"; } byobu_prompt_runtime() { @@ -51,7 +52,7 @@ byobu_prompt_runtime() { [ "$hours" = "0" ] && hours= || hours="${hours}h " [ "$minutes" = "0" ] && minutes= || minutes="${minutes}m " str="${days}${hours}${minutes}${seconds}.${microseconds}s" - printf "[%s]" "$str" 1>&2 + printf "[%s] " "$str" 1>&2 } # Requires Bash 4.x export PS0='$(printf "%s" ${EPOCHREALTIME/./} >"$BYOBU_RUN_DIR/timer.$$")' @@ -59,7 +60,7 @@ export PS0='$(printf "%s" ${EPOCHREALTIME/./} >"$BYOBU_RUN_DIR/timer.$$")' case "$BYOBU_DISTRO" in "Ubuntu") # Use Ubuntu colors (grey / orange / aubergine) - export PS1="${debian_chroot:+($debian_chroot)}\[\e[38;5;202m\]\$(byobu_prompt_status)\[\e[00m\]\$(byobu_prompt_runtime) \[\e[38;5;245m\]\u\[\e[00m\]@\[\e[38;5;172m\]\h\[\e[00m\]:\[\e[38;5;5m\]\w\[\e[00m\]\$(byobu_prompt_symbol) " + export PS1="${debian_chroot:+($debian_chroot)}\[\e[03;5;15;202m\]\$(byobu_prompt_status)\[\e[00m\]\$(byobu_prompt_runtime)\[\e[38;5;245m\]\u\[\e[00m\]@\[\e[38;5;172m\]\h\[\e[00m\]:\[\e[38;5;5m\]\w\[\e[00m\]\e[38;5;102m\]\$(byobu_prompt_git)\e[00m\]\$(byobu_prompt_symbol) " export GREP_COLORS="ms=01;38;5;202:mc=01;31:sl=:cx=:fn=01;38;5;132:ln=32:bn=32:se=00;38;5;242" export LESS_TERMCAP_mb=$(printf '\e[01;31m') # enter blinking mode – red export LESS_TERMCAP_md=$(printf '\e[01;38;5;180m') # enter double-bright mode – bold light orange @@ -75,14 +76,14 @@ case "$BYOBU_DISTRO" in fi ;; "Wolfi") - # Use Wolfi colors (pink / purple / grey) + # Use Wolfi colors (pink / purple / blue) # For reference: https://upload.wikimedia.org/wikipedia/commons/1/15/Xterm_256color_chart.svg # Convert hex to 256: https://gist.githubusercontent.com/MicahElliott/719710/raw/73d047f0a3ffc35f0655488547e7f24fa3f04ea6/colortrans.py # Use Wolfi colors (pink=170 / purple=98 / blue=63); flashing error code on previous command non-zero exit - PS1="\[\e[03;5;15;54m\]\$(byobu_prompt_status)\[\e[00m\]\$(byobu_prompt_runtime) \[\e[38;5;170m\]\u\[\e[00m\]@\[\e[38;5;98m\]\h\[\e[00m\]:\[\e[38;5;63m\]\w\[\e[00m\]\$(byobu_prompt_symbol) " + PS1="\[\e[03;5;15;54m\]\$(byobu_prompt_status)\[\e[00m\]\$(byobu_prompt_runtime)\[\e[38;5;170m\]\u\[\e[00m\]@\[\e[38;5;98m\]\h\[\e[00m\]:\[\e[38;5;63m\]\w\[\e[00m\]\e[38;5;45m\]\$(byobu_prompt_git)\e[00m\]\$(byobu_prompt_symbol) " ;; *) # 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_git)\$(byobu_prompt_symbol)\[\e[00m\] " ;; esac From cd253f0229b68d3c2cffa8d862309c6ea7019d94 Mon Sep 17 00:00:00 2001 From: Dustin Kirkland Date: Sat, 17 Feb 2024 07:29:21 -0600 Subject: [PATCH 3/7] releasing --- debian/changelog | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/debian/changelog b/debian/changelog index 847f3551..3f944579 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,9 @@ -byobu (6.12) unreleased; urgency=medium +byobu (6.12-0ubuntu1) noble; urgency=medium * usr/share/byobu/profiles/bashrc: - added git branch to bash ps1 prompt - -- Dustin Kirkland Sat, 17 Feb 2024 06:18:47 -0600 + -- Dustin Kirkland Sat, 17 Feb 2024 07:25:02 -0600 byobu (6.11-0ubuntu1) noble; urgency=medium From d315ccbd89412de186c859b485bc56b849e81792 Mon Sep 17 00:00:00 2001 From: Dustin Kirkland Date: Sat, 29 Mar 2025 11:19:22 -0500 Subject: [PATCH 4/7] added help/version option to most executables --- debian/changelog | 7 +++++++ usr/lib/byobu/include/common | 5 +++++ 2 files changed, 12 insertions(+) diff --git a/debian/changelog b/debian/changelog index 3f944579..290b754e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +byobu (6.13) unreleased; urgency=medium + + * usr/lib/byobu/include/common: + - added -v|--version and -h|--help to most executables + + -- Dustin Kirkland Tue, 17 Sep 2024 19:46:50 -0500 + byobu (6.12-0ubuntu1) noble; urgency=medium * usr/share/byobu/profiles/bashrc: diff --git a/usr/lib/byobu/include/common b/usr/lib/byobu/include/common index 04ae4f4d..9081f6cb 100755 --- a/usr/lib/byobu/include/common +++ b/usr/lib/byobu/include/common @@ -53,3 +53,8 @@ if [ -z "${BYOBU_INCLUDED_LIBS}" ]; then export BYOBU_DISTRO="$_RET" BYOBU_INCLUDED_LIBS=1 fi + +case "$1" in + -v|--version) [ "$(basename $0)" != "byobu" ] && exec byobu -v ;; + -h|--help) exec man $(basename $0) ;; +esac From 2ca86a554dc3269dd5a4a4133a71f3a3707d1ecf Mon Sep 17 00:00:00 2001 From: Dustin Kirkland Date: Sat, 29 Mar 2025 11:20:07 -0500 Subject: [PATCH 5/7] Description: strip time EPOCHREALTIME by digit not decimal separator original code stripped only by period defined decimal. Some locales separate by comma. The goal is to strip to a non-decimal, so instead only allowing digits, and using start of string ensures safety. Author: Jakub Skopal Origin: uptream, https://github.com/dustinkirkland/byobu/pull/71 Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/byobu/+bug/2052610 Reviewed-by: John Chittum Last-Update: 2025-03-03 --- usr/share/byobu/profiles/bashrc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/usr/share/byobu/profiles/bashrc b/usr/share/byobu/profiles/bashrc index 7fa07d67..1709d047 100644 --- a/usr/share/byobu/profiles/bashrc +++ b/usr/share/byobu/profiles/bashrc @@ -37,8 +37,9 @@ byobu_prompt_runtime() { local starttime endtime duration days hours minutes seconds microseconds nanoseconds str [ ! -r $BYOBU_RUN_DIR/timer.$$ ] && printf "[0.000s]" && return read starttime < $BYOBU_RUN_DIR/timer.$$ 2>/dev/null || true - endtime=${EPOCHREALTIME/./} - starttime=${starttime/./} + # strip to non-decimal time. avoids LP: #2052610 + endtime=${EPOCHREALTIME/[^0-9]/} + starttime=${starttime/[^0-9]/} duration=$((endtime - starttime)) days=$((duration/1000000/60/60/24)) hours=$((duration/1000000/60/60%24)) @@ -55,7 +56,7 @@ byobu_prompt_runtime() { printf "[%s] " "$str" 1>&2 } # Requires Bash 4.x -export PS0='$(printf "%s" ${EPOCHREALTIME/./} >"$BYOBU_RUN_DIR/timer.$$")' +export PS0='$(printf "%s" ${EPOCHREALTIME/[^0-9]/} >"$BYOBU_RUN_DIR/timer.$$")' case "$BYOBU_DISTRO" in "Ubuntu") From d647ef21383e7308fdb098e3a504bd404a6d3f50 Mon Sep 17 00:00:00 2001 From: Dustin Kirkland Date: Sat, 29 Mar 2025 19:54:52 -0500 Subject: [PATCH 6/7] fix PS1 ANSI escape sequences causing line wrap errors --- debian/changelog | 4 +++- usr/share/byobu/profiles/bashrc | 12 ++++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/debian/changelog b/debian/changelog index 290b754e..6c56fd98 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,8 +2,10 @@ byobu (6.13) unreleased; urgency=medium * usr/lib/byobu/include/common: - added -v|--version and -h|--help to most executables + * usr/share/byobu/profiles/bashrc: + - fix PS1 ANSI escape sequences causing line wrap errors - -- Dustin Kirkland Tue, 17 Sep 2024 19:46:50 -0500 + -- Dustin Kirkland Sat, 29 Mar 2025 19:53:42 -0500 byobu (6.12-0ubuntu1) noble; urgency=medium diff --git a/usr/share/byobu/profiles/bashrc b/usr/share/byobu/profiles/bashrc index 1709d047..502b55f7 100644 --- a/usr/share/byobu/profiles/bashrc +++ b/usr/share/byobu/profiles/bashrc @@ -29,7 +29,7 @@ esac [ -r "$BYOBU_PREFIX/lib/byobu/include/dirs" ] && . "$BYOBU_PREFIX/lib/byobu/include/dirs" byobu_prompt_git() { git branch 2>/dev/null | sed -e "/^[^*]/d" -e "s/* \(.*\)/ (\1)/"; } -byobu_prompt_status() { local e=$?; [ $e != 0 ] && echo -e " $e "; } +byobu_prompt_status() { printf "%s" "[$?]"; } byobu_prompt_symbol() { [ "$USER" = "root" ] && printf "%s" "#" || printf "%s" "\$"; } byobu_prompt_runtime() { # Calculate the approximate runtime of the previous command @@ -53,7 +53,7 @@ byobu_prompt_runtime() { [ "$hours" = "0" ] && hours= || hours="${hours}h " [ "$minutes" = "0" ] && minutes= || minutes="${minutes}m " str="${days}${hours}${minutes}${seconds}.${microseconds}s" - printf "[%s] " "$str" 1>&2 + printf "[%s]" "$str" 1>&2 } # Requires Bash 4.x export PS0='$(printf "%s" ${EPOCHREALTIME/[^0-9]/} >"$BYOBU_RUN_DIR/timer.$$")' @@ -61,7 +61,7 @@ export PS0='$(printf "%s" ${EPOCHREALTIME/[^0-9]/} >"$BYOBU_RUN_DIR/timer.$$")' case "$BYOBU_DISTRO" in "Ubuntu") # Use Ubuntu colors (grey / orange / aubergine) - export PS1="${debian_chroot:+($debian_chroot)}\[\e[03;5;15;202m\]\$(byobu_prompt_status)\[\e[00m\]\$(byobu_prompt_runtime)\[\e[38;5;245m\]\u\[\e[00m\]@\[\e[38;5;172m\]\h\[\e[00m\]:\[\e[38;5;5m\]\w\[\e[00m\]\e[38;5;102m\]\$(byobu_prompt_git)\e[00m\]\$(byobu_prompt_symbol) " + export PS1="\$(byobu_prompt_runtime) --> \$(byobu_prompt_status)\n\[\e[38;5;245m\]\u\[\e[00m\]@\[\e[38;5;172m\]\h\[\e[00m\]:\[\e[38;5;5m\]\w\[\e[00m\]\$(byobu_prompt_git)\$(byobu_prompt_symbol) " export GREP_COLORS="ms=01;38;5;202:mc=01;31:sl=:cx=:fn=01;38;5;132:ln=32:bn=32:se=00;38;5;242" export LESS_TERMCAP_mb=$(printf '\e[01;31m') # enter blinking mode – red export LESS_TERMCAP_md=$(printf '\e[01;38;5;180m') # enter double-bright mode – bold light orange @@ -81,10 +81,10 @@ case "$BYOBU_DISTRO" in # For reference: https://upload.wikimedia.org/wikipedia/commons/1/15/Xterm_256color_chart.svg # Convert hex to 256: https://gist.githubusercontent.com/MicahElliott/719710/raw/73d047f0a3ffc35f0655488547e7f24fa3f04ea6/colortrans.py # Use Wolfi colors (pink=170 / purple=98 / blue=63); flashing error code on previous command non-zero exit - PS1="\[\e[03;5;15;54m\]\$(byobu_prompt_status)\[\e[00m\]\$(byobu_prompt_runtime)\[\e[38;5;170m\]\u\[\e[00m\]@\[\e[38;5;98m\]\h\[\e[00m\]:\[\e[38;5;63m\]\w\[\e[00m\]\e[38;5;45m\]\$(byobu_prompt_git)\e[00m\]\$(byobu_prompt_symbol) " + export PS1="\$(byobu_prompt_runtime) --> \$(byobu_prompt_status)\n\[\e[38;5;170m\]\u\[\e[00m\]@\[\e[38;5;98m\]\h\[\e[00m\]:\[\e[38;5;63m\]\w\[\e[00m\]\$(byobu_prompt_git)\$(byobu_prompt_symbol) " ;; *) - # 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_git)\$(byobu_prompt_symbol)\[\e[00m\] " + # Use primary colors (blue / yellow / red ) + export PS1="\$(byobu_prompt_runtime) --> \$(byobu_prompt_status)\n\[\e[38;5;69m\]\u\[\e[00m\]@\[\e[38;5;214m\]\h\[\e[00m\]:\[\e[38;5;167m\]\w\[\e[00m\]\$(byobu_prompt_git)\$(byobu_prompt_symbol) " ;; esac From 34ca6fec92c6742c655ddd81a68a893ab74345ac Mon Sep 17 00:00:00 2001 From: Dustin Kirkland Date: Sat, 29 Mar 2025 19:56:22 -0500 Subject: [PATCH 7/7] releasing 6.13 --- debian/changelog | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/debian/changelog b/debian/changelog index 6c56fd98..0fa5450a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,11 +1,11 @@ -byobu (6.13) unreleased; urgency=medium +byobu (6.13-0ubuntu1) plucky; urgency=medium * usr/lib/byobu/include/common: - added -v|--version and -h|--help to most executables * usr/share/byobu/profiles/bashrc: - fix PS1 ANSI escape sequences causing line wrap errors - -- Dustin Kirkland Sat, 29 Mar 2025 19:53:42 -0500 + -- Dustin Kirkland Sat, 29 Mar 2025 19:55:23 -0500 byobu (6.12-0ubuntu1) noble; urgency=medium