>>>>> On Wed, 11 Dec 2024, Florian Schmaus wrote:
> --- a/eclass/texlive-module.eclass
> +++ b/eclass/texlive-module.eclass
> @@ -79,7 +79,7 @@ esac
> if [[ -z ${_TEXLIVE_MODULE_ECLASS} ]]; then
> _TEXLIVE_MODULE_ECLASS=1
>
> -inherit texlive-common
> +inherit eapi9-pipestatus texlive-common
>
> HOMEPAGE="https://www.tug.org/texlive/"
>
> @@ -537,16 +537,15 @@ texlive-module_src_install() {
> grep_expressions+=(-e "/${f//./\\.}\$")
> done
>
> + local status
> + # "success-status aware grep", returning exit status 0
> instead of 1.
> + sgrep() { grep "$@"; return "$(( $? <= 1 ? 0 : $? ))"; }
"sgrep" is rather generic as a function name and prone to name clashes.
I suggest "_tl_grep" instead.
> ebegin "Installing man pages"
> find texmf-dist/doc/man -type f -name '*.[0-9n]' -print
> |
> - grep -v "${grep_expressions[@]}" |
> + sgrep -v "${grep_expressions[@]}" |
> xargs -d '\n' --no-run-if-empty nonfatal doman
> - local pipestatus="${PIPESTATUS[*]}"
> - # The grep in the middle of the pipe may return 1 in
> case
> - # everything from the input is dropped.
> - # See https://bugs.gentoo.org/931994
> - [[ ${pipestatus} == "0 "[01]" 0" ]]
> - eend $? || die "error installing man pages (pipestatus:
> ${pipestatus})"
> + status=$(pipestatus -v)
> + eend $? || die "error installing man pages (PIPESTATUS:
> ${status})"
>
> # Delete all man pages under texmf-dist/doc/man
> find texmf-dist/doc/man -type f -name '*.[0-9n]'
> -delete ||
Otherwise LGTM.
signature.asc
Description: PGP signature
