summaryrefslogtreecommitdiff
path: root/app-shells
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-04-08 08:43:12 +0100
committerV3n3RiX <venerix@koprulu.sector>2025-04-08 08:43:12 +0100
commite81d2dd033df3a61b874a9a37f951ca05eead86f (patch)
tree82bfb1314b75b6c04de41a378a4838b7a18b0d68 /app-shells
parent288d9455931660abb6dfa534a78d45c7fb901477 (diff)
gentoo auto-resync : 08:04:2025 - 08:43:11
Diffstat (limited to 'app-shells')
-rw-r--r--app-shells/Manifest.gzbin10641 -> 10637 bytes
-rw-r--r--app-shells/bash/Manifest3
-rw-r--r--app-shells/bash/bash-5.3_rc1.ebuild410
-rw-r--r--app-shells/yash/Manifest4
-rw-r--r--app-shells/yash/yash-2.57.ebuild35
-rw-r--r--app-shells/yash/yash-2.58.1.ebuild2
6 files changed, 415 insertions, 39 deletions
diff --git a/app-shells/Manifest.gz b/app-shells/Manifest.gz
index c0c476da988a..3d8d28629845 100644
--- a/app-shells/Manifest.gz
+++ b/app-shells/Manifest.gz
Binary files differ
diff --git a/app-shells/bash/Manifest b/app-shells/bash/Manifest
index e8717ad8f3ae..4e0f7bce0612 100644
--- a/app-shells/bash/Manifest
+++ b/app-shells/bash/Manifest
@@ -41,6 +41,8 @@ DIST bash-5.2.tar.gz 10950833 BLAKE2B 51b196e710794ebad8eac28c31c93eb99ac1a7db30
DIST bash-5.2.tar.gz.sig 95 BLAKE2B 2991b7c46ef1cdca08062f419be47fca7551f4c5d9aad8a5c1da74974f5e7707d23914b4cecf9b6c9610471146b2c49b611bb62a5d974f1c37cceb77b719851c SHA512 a161664f124f906be32709f66702f8f780e6d52e558ea45e71ec60a959c9435ff68477ee65a0a9f6c0051d5592f5044fb3b410cf3cd3ae5a8a323789b01be258
DIST bash-5.3-beta.tar.gz 10667630 BLAKE2B d6d3a1efd5ed69b131e2831e35c4a620968132e7d9da079de155decb4d3c736cd6c9f1180523e85dd41aeecdb9b380e4768bc551afafaee478168c462ce90929 SHA512 f8f02b4a90312c8e7c589efd1a0a43a4db3bcb47d19cb95190961e4ae254b2d6d26472197ce216868d914fe1adf62741f927552239559a1c3b2c64dfcfaa8cb0
DIST bash-5.3-beta.tar.gz.sig 94 BLAKE2B a4b85d5755e200abddd5669c3d21b1ee6be8036b27934e25473c14b15ffc1bc7cbbd5a94f39a0dc6bf6050908590509f0ba39d28c33947154cc966e11d454c8c SHA512 72184ca2afe3d0c8c2165516499a61da2aecc0c8c83661cab0038c3d849623115729d2ade73c4b5973ea9b5e8169af4bc2aea51f0b70356af26342285adab2f5
+DIST bash-5.3-rc1.tar.gz 10742642 BLAKE2B 846414fe545da1ee62b541a8861d68e1dc57114276d40c6af2a9ab1f91cedb220d060f1bd81a811d6dacd841cd1b66e0ed7d8462b3c7066ad204f3786d6af0ec SHA512 16a74fcb31a8ea20cf9505a8cee584a02baed1d2c47b75556e4ae6752712db8f9e0b4b202d2cbe77990fec1ff141ff35e410d4495887ed90f5457c032079c5e5
+DIST bash-5.3-rc1.tar.gz.sig 95 BLAKE2B cc7916f92eddd881ac4d791918b7bb579396df4badbd671a7d0664fd814cee37327dce31d288a8fb03bc66a23536873b5fcd72f2e08e294b9ff9f2ef889741e3 SHA512 a275ff17f9318b5626450eeeb9f49157c9b20df974e004adb26f6585c84deea8d68fc0e1670f990096675ecadd652b58895f74c4e40c8e142a3c2ed414145248
DIST bash-5.3_beta_p20250331-a6767763de5e7859107711b166a64a9e4a77a8ae.tar.gz 15771417 BLAKE2B 79257460482c2d6fca55bb8101c0fbfcc9f0810f3e0e54eb8e94e352e87eea2c54873e2822caa963acb752f1c4156780398e4bf44b57986a2b2f600919149094 SHA512 850ae02f4e924165ec75a71fdd5956e13f4ee40916e5a7854ff90cfde6cd73124a46cb4c8a89f750fc78eb912905835a9b303b0f5febbd40666678af81f0f1fa
DIST bash-5.3_beta_p20250404-2e113467f061587a3475b692d25ca449717834c8.tar.gz 15769616 BLAKE2B f1bd12beaff9d72675ddb58a5454da9414c30ae2e0170c971094142eaae43f8b56f92489fafb373a3df2ab76029cd78eddf103ac08c73de169375de9383b971e SHA512 03ba3aabc4e91bcea5cb99b56dbd6e7110801fc5d640514283058c44b64e6448f678caca350f7887657ede3dfe7541df9a9aaec1e5f66047fff52a154da14694
DIST bash205b-001 1132 BLAKE2B 0c5eef29777d54ef05957ea3d63b1556fb380bd20c238dc28993d822b37bc4e78ff4048ad069f6b8cd25da77ccdeb7aecd86c4349cb9d81e5e94c7001eeae5e6 SHA512 5ce4357468821b05e747201f3aa57225ad8f540c9e2c87051720490e039c30b478b9b662a68f14a0800fefe40184e4495e2645665200f9d75e9a115b2ac08071
@@ -482,5 +484,6 @@ EBUILD bash-5.2_p37.ebuild 11864 BLAKE2B fbc51a614a3cd31d434e578600c4b4183520e00
EBUILD bash-5.3_beta.ebuild 12151 BLAKE2B 5cf02450b8bce041d6f302c2c16b5c722595eafc6db3a2ca1e71828fc13024ec5a43c66112edf885668c64dc4ad4b5806586105d202d6da81374077c1ee54934 SHA512 601a3ed600d8ee0c5be161e8f092083e922c2c85f9e9bedc92ffb15e71aeaae699db6657fa88db3471d781820951bf1b618e2ed511fb832d713975eff1a20913
EBUILD bash-5.3_beta_p20250331.ebuild 12243 BLAKE2B f6d4d4edc23d97ad4dc446f0ac4fda6b108bde2acd5571f5143a1e72e6efeae7ab8cab3db3e376e37661d7dc2b677c1366bddbc0d2e0a3116306216996a24f4c SHA512 ff32253622d567ef51c1e1726228fc43b5d83836122c5ab0e4bd0e4a5d5c6dbeb1f06d532d1a8bab8d3064727be07e46790a7284bad988663c8e5f14dc9370a8
EBUILD bash-5.3_beta_p20250404.ebuild 12243 BLAKE2B 6059d7a85c8562a731c1bc28d19642bafe5ee9860e042b51003fdc431f2721af209355e757be1304ece1060faffc29f0e56813ca65f4bc58db159ada72528b7a SHA512 5352b0afbd55dfc3fe2ee97b2987a52c3c284e0e75bddbef07e27908254d48a53c3c2d2b55e80483414cc820dcce6669ec9121f286759ea5245ac1ad5ad3629b
+EBUILD bash-5.3_rc1.ebuild 12242 BLAKE2B f58b81ab5d8b149052f3a9ce22709716b3adb118e86216a4597df24a4dd734b4f7975427ea23a381d7b4af73e1df8fc168b466e192e60fbabbf5dbb79c311063 SHA512 52f23de08cfc9bb96e5117cbdf6e63c38095025908e9ffd4e830737056dc053d97f13d8f9ff5d6ffd73803a19cfc7bbb30292c17dc23e7c00dfe7c538d4dcb76
EBUILD bash-9999.ebuild 12038 BLAKE2B f9460ae9aed945ed02ea4e7e53f5ea9e74d5acd466694fdd204aa59e71271eef04d44ea56a5373cb4049dd8fdc00fec2faced0173d15285ee22aaa903956b147 SHA512 37876e786d586618050f0b9d64445478202dd4bf729114052195b525ce2bb495dfe33149262a1c5637ce8ed5ba5e2107761ad16dd9e8fe3362722fcd0e7c6dcc
MISC metadata.xml 1009 BLAKE2B f71587b0a6d05b907f82b26be93b071290d91dc8f612f7b008a05eaa94d45be2ef8c1d992b7ac886648a9dcf964c30e8d9a7aff90d44835beb452e0d635b9533 SHA512 8aa1cb4c3206a76d10181394a91c315967fd9d3b359194f430f075fdd5a0b4b32149eec36b85412ef7e84b55e7b01955c75486b2df82b392a5acb3df8229a88d
diff --git a/app-shells/bash/bash-5.3_rc1.ebuild b/app-shells/bash/bash-5.3_rc1.ebuild
new file mode 100644
index 000000000000..d495d9e3b911
--- /dev/null
+++ b/app-shells/bash/bash-5.3_rc1.ebuild
@@ -0,0 +1,410 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/chetramey.asc
+inherit flag-o-matic toolchain-funcs prefix verify-sig
+
+# Uncomment if we have a patchset.
+#GENTOO_PATCH_DEV="sam"
+#GENTOO_PATCH_VER="${PV}"
+
+MY_PV=${PV/_p*}
+MY_PV=${MY_PV/_/-}
+MY_P=${PN}-${MY_PV}
+MY_PATCHES=()
+
+# Determine the patchlevel.
+case ${PV} in
+ 9999|*_alpha*|*_beta*|*_rc*)
+ # Set a negative patchlevel to indicate that it's a pre-release.
+ PLEVEL=-1
+ ;;
+ *_p*)
+ PLEVEL=${PV##*_p}
+ ;;
+ *)
+ PLEVEL=0
+esac
+
+# The version of readline this bash normally ships with. Note that we only use
+# the bundled copy of readline for pre-releases.
+READLINE_VER="8.3_beta"
+
+DESCRIPTION="The standard GNU Bourne again shell"
+HOMEPAGE="https://tiswww.case.edu/php/chet/bash/bashtop.html https://git.savannah.gnu.org/cgit/bash.git"
+
+if [[ ${PV} == 9999 ]]; then
+ EGIT_REPO_URI="https://git.savannah.gnu.org/git/bash.git"
+ EGIT_BRANCH=devel
+ inherit git-r3
+elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then
+ # It can be useful to have snapshots in the pre-release period once
+ # the first alpha is out, as various bugs get reported and fixed from
+ # the alpha, and the next pre-release is usually quite far away.
+ #
+ # i.e. if it's worth packaging the alpha, it's worth packaging a followup.
+ BASH_COMMIT="2e113467f061587a3475b692d25ca449717834c8"
+ SRC_URI="https://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-${BASH_COMMIT}.tar.gz -> ${P}-${BASH_COMMIT}.tar.gz"
+ S=${WORKDIR}/${PN}-${BASH_COMMIT}
+else
+ my_urls=( {'mirror://gnu/bash','ftp://ftp.cwru.edu/pub/bash'}/"${MY_P}.tar.gz" )
+
+ # bash-5.1 -> bash51
+ my_p=${PN}$(ver_cut 1-2) my_p=${my_p/.}
+
+ for (( my_patch_idx = 1; my_patch_idx <= PLEVEL; my_patch_idx++ )); do
+ printf -v my_patch_ver %s-%03d "${my_p}" "${my_patch_idx}"
+ my_urls+=( {'mirror://gnu/bash','ftp://ftp.cwru.edu/pub/bash'}/"${MY_P}-patches/${my_patch_ver}" )
+ MY_PATCHES+=( "${DISTDIR}/${my_patch_ver}" )
+ done
+
+ SRC_URI="${my_urls[*]} verify-sig? ( ${my_urls[*]/%/.sig} )"
+ S=${WORKDIR}/${MY_P}
+
+ unset -v my_urls my_p my_patch_idx my_patch_ver
+fi
+
+if [[ ${GENTOO_PATCH_VER} ]]; then
+ SRC_URI+=" https://dev.gentoo.org/~${GENTOO_PATCH_DEV:?}/distfiles/${CATEGORY}/${PN}/${PN}-${GENTOO_PATCH_VER:?}-patches.tar.xz"
+fi
+
+LICENSE="GPL-3+"
+SLOT="0"
+if (( PLEVEL >= 0 )); then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+IUSE="afs bashlogger examples mem-scramble +net nls plugins pgo +readline"
+
+DEPEND="
+ >=sys-libs/ncurses-5.2-r2:=
+ nls? ( virtual/libintl )
+"
+if (( PLEVEL >= 0 )); then
+ DEPEND+=" readline? ( >=sys-libs/readline-${READLINE_VER}:= )"
+fi
+RDEPEND="
+ ${DEPEND}
+"
+# We only need bison (yacc) when the .y files get patched (bash42-005, bash51-011).
+BDEPEND="
+ pgo? ( dev-util/gperf )
+ verify-sig? ( sec-keys/openpgp-keys-chetramey )
+"
+
+# EAPI 8 tries to append it but it doesn't exist here.
+QA_CONFIGURE_OPTIONS="--disable-static"
+
+PATCHES=(
+ #"${WORKDIR}"/${PN}-${GENTOO_PATCH_VER}/
+
+ # Patches to or from Chet, posted to the bug-bash mailing list.
+ "${FILESDIR}/${PN}-5.0-syslog-history-extern.patch"
+)
+
+pkg_setup() {
+ # bug #7332
+ if is-flag -malign-double; then
+ eerror "Detected bad CFLAGS '-malign-double'. Do not use this"
+ eerror "as it breaks LFS (struct stat64) on x86."
+ die "remove -malign-double from your CFLAGS mr ricer"
+ fi
+
+ if use bashlogger; then
+ ewarn "The logging patch should ONLY be used in restricted (i.e. honeypot) envs."
+ ewarn "This will log ALL output you enter into the shell, you have been warned."
+ fi
+}
+
+src_unpack() {
+ local patch
+
+ if [[ ${PV} == 9999 ]]; then
+ git-r3_src_unpack
+ elif (( PLEVEL < 0 )) && [[ ${PV} == *_p* ]] ; then
+ default
+ else
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}/${MY_P}.tar.gz"{,.sig}
+
+ for patch in "${MY_PATCHES[@]}"; do
+ verify-sig_verify_detached "${patch}"{,.sig}
+ done
+ fi
+
+ unpack "${MY_P}.tar.gz"
+
+ if [[ ${GENTOO_PATCH_VER} ]]; then
+ unpack "${PN}-${GENTOO_PATCH_VER}-patches.tar.xz"
+ fi
+ fi
+}
+
+src_prepare() {
+ # Include official patches.
+ (( PLEVEL > 0 )) && eapply -p0 "${MY_PATCHES[@]}"
+
+ # Clean out local libs so we know we use system ones w/releases. The
+ # touch utility is invoked for the benefit of config.status.
+ if (( PLEVEL >= 0 )); then
+ rm -rf lib/{readline,termcap}/* \
+ && touch lib/{readline,termcap}/Makefile.in \
+ && sed -i -E 's:\$[{(](RL|HIST)_LIBSRC[)}]/[[:alpha:]_-]*\.h::g' Makefile.in \
+ || die
+ fi
+
+ # Prefixify hardcoded path names. No-op for non-prefix.
+ hprefixify pathnames.h.in
+
+ # Avoid regenerating docs after patches, bug #407985.
+ sed -i -E '/^(HS|RL)USER/s:=.*:=:' doc/Makefile.in \
+ && touch -r . doc/* \
+ || die
+
+ # Sometimes hangs (more noticeable w/ pgo), bug #907403.
+ rm tests/run-jobs || die
+
+ eapply -p0 "${PATCHES[@]}"
+ eapply_user
+}
+
+src_configure() {
+ local -a myconf
+
+ # Upstream only test with Bison and require GNUisms like YYEOF and
+ # YYERRCODE. The former at least may be in POSIX soon:
+ # https://www.austingroupbugs.net/view.php?id=1269.
+ # configure warns on use of non-Bison but doesn't abort. The result
+ # may misbehave at runtime.
+ unset -v YACC
+
+ myconf=(
+ --disable-profiling
+
+ # Force linking with system curses ... the bundled termcap lib
+ # sucks bad compared to ncurses. For the most part, ncurses
+ # is here because readline needs it. But bash itself calls
+ # ncurses in one or two small places :(.
+ --with-curses
+
+ $(use_enable mem-scramble)
+ $(use_enable net net-redirections)
+ $(use_enable readline)
+ $(use_enable readline bang-history)
+ $(use_enable readline history)
+ $(use_with afs)
+ $(use_with mem-scramble bash-malloc)
+ )
+
+ # For descriptions of these, see config-top.h.
+ # bashrc/#26952 bash_logout/#90488 ssh/#24762 mktemp/#574426
+ append-cppflags \
+ -DDEFAULT_PATH_VALUE=\'\""${EPREFIX}"/usr/local/sbin:"${EPREFIX}"/usr/local/bin:"${EPREFIX}"/usr/sbin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/bin\"\' \
+ -DSTANDARD_UTILS_PATH=\'\""${EPREFIX}"/bin:"${EPREFIX}"/usr/bin:"${EPREFIX}"/sbin:"${EPREFIX}"/usr/sbin\"\' \
+ -DSYS_BASHRC=\'\""${EPREFIX}"/etc/bash/bashrc\"\' \
+ -DSYS_BASH_LOGOUT=\'\""${EPREFIX}"/etc/bash/bash_logout\"\' \
+ -DNON_INTERACTIVE_LOGIN_SHELLS \
+ -DSSH_SOURCE_BASHRC \
+ $(use bashlogger && echo -DSYSLOG_HISTORY)
+
+ use nls || myconf+=( --disable-nls )
+
+ if (( PLEVEL >= 0 )); then
+ # Historically, we always used the builtin readline, but since
+ # our handling of SONAME upgrades has gotten much more stable
+ # in the PM (and the readline ebuild itself preserves the old
+ # libs during upgrades), linking against the system copy should
+ # be safe.
+ # Exact cached version here doesn't really matter as long as it
+ # is at least what's in the DEPEND up above.
+ export ac_cv_rl_version=${READLINE_VER%%_*}
+
+ # Use system readline only with released versions.
+ myconf+=( --with-installed-readline=. )
+ fi
+
+ if use plugins; then
+ append-ldflags "-Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/bash"
+ else
+ # Disable the plugins logic by hand since bash doesn't provide
+ # a way of doing it.
+ export ac_cv_func_dl{close,open,sym}=no \
+ ac_cv_lib_dl_dlopen=no ac_cv_header_dlfcn_h=no
+
+ sed -i -e '/LOCAL_LDFLAGS=/s:-rdynamic::' configure || die
+ fi
+
+ # bug #444070
+ tc-export AR
+
+ econf "${myconf[@]}"
+}
+
+src_compile() {
+ local -a pgo_generate_flags pgo_use_flags
+ local flag
+
+ # -fprofile-partial-training because upstream notes the test suite isn't
+ # super comprehensive.
+ # https://documentation.suse.com/sbp/all/html/SBP-GCC-10/index.html#sec-gcc10-pgo
+ if use pgo; then
+ pgo_generate_flags=(
+ -fprofile-update=atomic
+ -fprofile-dir="${T}"/pgo
+ -fprofile-generate="${T}"/pgo
+ )
+ pgo_use_flags=(
+ -fprofile-use="${T}"/pgo
+ -fprofile-dir="${T}"/pgo
+ )
+ if flag=$(test-flags-CC -fprofile-partial-training); then
+ pgo_generate_flags+=( "${flag}" )
+ pgo_use_flags+=( "${flag}" )
+ fi
+ fi
+
+ # builtins/evalstring.c needs y.tab.h but can't (easily) specify the dep on it from above
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" y.tab.h
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}"
+ use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" all others
+
+ # Build Bash and run its tests to generate profiles.
+ if (( ${#pgo_generate_flags[@]} )); then
+ # Used in test suite.
+ unset -v A
+
+ emake CFLAGS="${CFLAGS} ${pgo_generate_flags[*]}" -k check
+
+ if tc-is-clang; then
+ llvm-profdata merge "${T}"/pgo --output="${T}"/pgo/default.profdata || die
+ fi
+
+ # Rebuild Bash using the profiling data we just generated.
+ emake clean
+ emake CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" y.tab.h
+ emake CFLAGS="${CFLAGS} ${pgo_use_flags[*]}"
+ use plugins && emake -C examples/loadables CFLAGS="${CFLAGS} ${pgo_use_flags[*]}" all others
+ fi
+}
+
+src_test() {
+ # Used in test suite.
+ unset -v A
+
+ default
+}
+
+src_install() {
+ local d f
+
+ default
+
+ my_prefixify() {
+ while read -r; do
+ if [[ $REPLY == *$1* ]]; then
+ REPLY=${REPLY/"/etc/"/"${EPREFIX}/etc/"}
+ fi
+ printf '%s\n' "${REPLY}" || ! break
+ done < "$2" || die
+ }
+
+ dodir /bin
+ mv -- "${ED}"/usr/bin/bash "${ED}"/bin/ || die
+ dosym bash /bin/rbash
+
+ insinto /etc/bash
+ doins "${FILESDIR}"/bash_logout
+ my_prefixify bashrc.d "${FILESDIR}"/bashrc-r1 | newins - bashrc
+
+ insinto /etc/bash/bashrc.d
+ my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color.bash | newins - 10-gentoo-color.bash
+ newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r1.bash 10-gentoo-title.bash
+ if [[ ! ${EPREFIX} ]]; then
+ doins "${FILESDIR}"/bashrc.d/15-gentoo-bashrc-check.bash
+ fi
+
+ insinto /etc/skel
+ for f in bash{_logout,_profile,rc}; do
+ newins "${FILESDIR}/dot-${f}" ".${f}"
+ done
+
+ if use plugins; then
+ exeinto "/usr/$(get_libdir)/bash"
+ set -- examples/loadables/*.o
+ doexe "${@%.o}"
+
+ insinto /usr/include/bash-plugins
+ doins *.h builtins/*.h include/*.h lib/{glob/glob.h,tilde/tilde.h}
+ fi
+
+ if use examples; then
+ for d in examples/{functions,misc,scripts,startup-files}; do
+ exeinto "/usr/share/doc/${PF}/${d}"
+ docinto "${d}"
+ for f in "${d}"/*; do
+ if [[ ${f##*/} != @(PERMISSION|*README) ]]; then
+ doexe "${f}"
+ else
+ dodoc "${f}"
+ fi
+ done
+ done
+ fi
+
+ # Install bash_builtins.1 and rbash.1.
+ emake -C doc DESTDIR="${D}" install_builtins
+ sed 's:bash\.1:man1/&:' doc/rbash.1 > "${T}"/rbash.1 || die
+ doman "${T}"/rbash.1
+
+ newdoc CWRU/changelog ChangeLog
+ dosym bash.info /usr/share/info/bashref.info
+}
+
+pkg_preinst() {
+ if [[ -e ${EROOT}/etc/bashrc ]] && [[ ! -d ${EROOT}/etc/bash ]]; then
+ mkdir -p -- "${EROOT}"/etc/bash \
+ && mv -f -- "${EROOT}"/etc/bashrc "${EROOT}"/etc/bash/ \
+ || die
+ fi
+}
+
+pkg_postinst() {
+ local old_ver
+
+ # If /bin/sh does not exist, provide it.
+ if [[ ! -e ${EROOT}/bin/sh ]]; then
+ ln -sf -- bash "${EROOT}"/bin/sh || die
+ fi
+
+ read -r old_ver <<<"${REPLACING_VERSIONS}"
+ if [[ ! $old_ver ]]; then
+ :
+ elif ver_test "$old_ver" -ge "5.2" && ver_test "$old_ver" -ge "5.2_p26-r8"; then
+ return
+ fi
+
+ while read -r; do ewarn "${REPLY}"; done <<'EOF'
+Files under /etc/bash/bashrc.d must now have a suffix of .sh or .bash.
+
+Gentoo now defaults to defining PROMPT_COMMAND as an array. Depending on the
+characteristics of the operating environment, it may contain a command to set
+the terminal's window title. Those who were already choosing to customise the
+PROMPT_COMMAND variable are now advised to append their commands like so:
+
+PROMPT_COMMAND+=('custom command goes here')
+
+Gentoo no longer defaults to having bash set the window title in the case
+that the terminal is controlled by sshd(8), unless screen is launched on the
+remote side or the terminal reliably supports saving and restoring the title
+(as alacritty, foot and tmux do). Those wanting for the title to be set
+regardless may adjust ~/.bashrc - or create a custom /etc/bash/bashrc.d
+drop-in - to set PROMPT_COMMMAND like so:
+
+PROMPT_COMMAND=(genfun_set_win_title)
+
+Those who would prefer for bash never to interfere with the window title may
+now opt out of the default title setting behaviour, either with the "unset -v
+PROMPT_COMMAND" command or by re-defining PROMPT_COMMAND as desired.
+EOF
+}
diff --git a/app-shells/yash/Manifest b/app-shells/yash/Manifest
index 5b46c908e180..2d85edd818a8 100644
--- a/app-shells/yash/Manifest
+++ b/app-shells/yash/Manifest
@@ -1,5 +1,3 @@
-DIST yash-2.57.tar.xz 771228 BLAKE2B ea11d63c013a5b967ff32984e33b2b0113e3101b233d5923e902a15d1f1b53142f4266dd54df85776dd7ad45f4045c5cee500e7de764e92d2e2e87b7e2fbf19a SHA512 6604ce54f698740d99e4ce3e6ff93b10936353b0690871b4dd1a0ef4569fc228284f551398b4912d324c8627eccec4cd51ac58508f741eb47b315560f02bff01
DIST yash-2.58.1.tar.xz 784816 BLAKE2B e3495d60303571fef6a754df70719cab4ca71b14d198451d9e4111f4306d76450ff73cd2d4ae8ec97d0bde905e6f1e9b37c908150155b21f93f70e6f6685b1e7 SHA512 01e87d579db4ad15ff475cdb7a5360e1b1b6d0e39301e191910943f99adb6686e2462645114c68b59e3de53c5d4486748a9d070a47e3d148e6e3f84b000f1318
-EBUILD yash-2.57.ebuild 842 BLAKE2B 7c6ee25b34971087b8c64e6df95f6fc917033c0394f59a956283f711b1fd10547730ebdbda7b473469de04fe680f6f83342dbe70af3e4ecac0119ffec5169283 SHA512 13645cab3a7b5ede7f9aa434c99e2432fbb59e59c1604e9094cbf5789246b7109e8f648e4e73345e11881803a16f275c6ed3ef01b60cd0c9e34faf851cb9ed40
-EBUILD yash-2.58.1.ebuild 844 BLAKE2B d7bd18bc6657df45824fa930c6980ef5641f087c0f7de0c52d35b6c3391e3817bfb8f1211c42a24f27d6866803a2671734a20492f9d935d1dcab31eacc8bff13 SHA512 cd7c1a7a0feae86a32141c691465607a0ed0a2d22ed46743290cead505ced8e0a12e979b0654594e4fb1dab19133c95658ec410b15807dc68408b96eaf32dece
+EBUILD yash-2.58.1.ebuild 842 BLAKE2B 853ceaf3517bd729d238376c13166f6a9d4f2b762a544280a4b7cc1e1c7638c5d7747c3461468b893c38a45c76ef8d582a942b9a828b4f108835fba6fffe4d62 SHA512 1d8f3924b6d2869b4b595367f3f7384a85bb11927cdbb5a1823ff2c35321573a4d1a4f1fc9d08de143230d20c6e0a964d0e856067e9a7522f36c8fc7988f0fd1
MISC metadata.xml 1065 BLAKE2B ab9ec0ac6fbf2666a7e987b6a4cfd62f8520f541eb0d900602a782f895757d85ab07f61ca60cfab3cd6042a4e24cb311eb17a4fc163c2652f3c9b7ec4f3cafa2 SHA512 1bf5664d53623cc41a2509662889fe967b62068b27d36f30152fb59de29b46af03ea5baa1a778b2dca6232ffe3d564db37a6432f5f8cdc585a8c88e87fc9ab9f
diff --git a/app-shells/yash/yash-2.57.ebuild b/app-shells/yash/yash-2.57.ebuild
deleted file mode 100644
index 23ee161faf20..000000000000
--- a/app-shells/yash/yash-2.57.ebuild
+++ /dev/null
@@ -1,35 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="8"
-PLOCALES="en ja"
-
-inherit flag-o-matic plocale toolchain-funcs
-
-DESCRIPTION="Yash is a POSIX-compliant command line shell"
-HOMEPAGE="https://magicant.github.io/yash/"
-SRC_URI="https://github.com/magicant/${PN}/releases/download/${PV}/${P}.tar.xz"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="amd64 ~mips x86"
-IUSE="nls test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="sys-libs/ncurses:=
- nls? ( virtual/libintl )"
-DEPEND="${RDEPEND}"
-BDEPEND="nls? ( sys-devel/gettext )
- test? ( sys-apps/ed )"
-
-src_configure() {
- append-cflags -std=c99
-
- sh ./configure \
- --prefix="${EPREFIX}"/usr \
- --exec-prefix="${EPREFIX}" \
- $(use_enable nls) \
- CC="$(tc-getCC)" \
- LINGUAS="$(plocale_get_locales | sed "s/en/en@quot en@boldquot/")" \
- || die
-}
diff --git a/app-shells/yash/yash-2.58.1.ebuild b/app-shells/yash/yash-2.58.1.ebuild
index dd0a188a2e22..2f194ae7a1d9 100644
--- a/app-shells/yash/yash-2.58.1.ebuild
+++ b/app-shells/yash/yash-2.58.1.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://github.com/magicant/${PN}/releases/download/${PV}/${P}.tar.xz"
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~mips ~x86"
+KEYWORDS="amd64 ~mips x86"
IUSE="nls test"
RESTRICT="!test? ( test )"