diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-16 10:53:11 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-16 10:53:11 -0500 |
| commit | 8e65dc62f3f9f6b8f7b890fefedbf4ac05dfde0b (patch) | |
| tree | bb1e83c18d1cc77cdebfc5aeb9b12ad39c9787b5 /app-shells | |
| parent | f997c3ee588099e4f43e9ec845935868e3e60b8e (diff) | |
| download | baldeagleos-repo-8e65dc62f3f9f6b8f7b890fefedbf4ac05dfde0b.tar.gz baldeagleos-repo-8e65dc62f3f9f6b8f7b890fefedbf4ac05dfde0b.tar.xz baldeagleos-repo-8e65dc62f3f9f6b8f7b890fefedbf4ac05dfde0b.zip | |
Adding metadata
Diffstat (limited to 'app-shells')
26 files changed, 1254 insertions, 683 deletions
diff --git a/app-shells/bash/Manifest b/app-shells/bash/Manifest index 332795ab8e85..b9a7f261952a 100644 --- a/app-shells/bash/Manifest +++ b/app-shells/bash/Manifest @@ -467,3 +467,15 @@ DIST bash53-008 5717 BLAKE2B 7ebe5ac77d3697da01ad7beb88a8fdaeac3ac2fb671cc5151ce DIST bash53-008.sig 95 BLAKE2B 729bf597066d09ebe386832df6717c785333e05d03b14fa073949cf9404450b777bb0f63dcea47909fbcd20bdfa13b82b9c673ab53771e11347f7231820f6bfb SHA512 21e796bcdd25bdf2bd70768d93a2cb8a53dc5f070168bfbf97fc9a4312a710b422ac38cbe5925669a8e8abfebe22ce44a14a1aa7ce1770e91ad8148d74391660 DIST bash53-009 2468 BLAKE2B 09ddf6b605d409142a4107bd52c8b48a91a225d65b867b5074c8b5359d0b1012d2f50e54d1d5636b3413431cf4840d6bd34f9c84f062f3ead96eeaf912127532 SHA512 07f37cee118e510ae58ea408f9d97b942017e1378532d4e3cd5a4d7405994ddadaba5d3ddb4bbda6b375760967faa51add7f46914ba919a27c14e7036f64f3be DIST bash53-009.sig 95 BLAKE2B dcbdd9e7646ff83d94f3b5fa5d26cc9221871b6e0b95132516ca01de8a802001d6df1b5b55e8f3a9363ec0712a74bc1f73861713e8555d32dcd566bbcbad28c6 SHA512 f20bb74e3d7074425387a65678f0d4c28cedf48065a857c1b4c59ae74195f41937ea780919174945d9af5e4b83ccb3bfbfa2c4e2561a8a62f60129d79a28aefd +DIST bash53-010 1457 BLAKE2B 0ca1df76a06c59dc773e603930747000cfa249219adb79cecb173e36986ccd2b2f49ced66702abbcec25ace05bafc109e23565cd19a202ce05840516d7c3aa70 SHA512 976e23a734fbc38b8bf705b36d74c1861e5d69e3f3fbde683210ad93b1c14f59c014b3fcd4aea0b0f5b1f35bc23770abb5a741a7a25a2081816ee22da7bdedad +DIST bash53-010.sig 123 BLAKE2B eed882a0462cf09f140344b0c979b17fcf9c7dc14e8e256675c8b9b091a14ee1b92ddadfcdd30fdff5aeb567c9d7fa520de7e4681936c9cd4a3eb0f1391a8004 SHA512 5d1949733eb875f129560ae50802a82645e833437b8f7f5b3f2d8ba1e4c3244c5ddf3d04964966089567ee4ec6504afd69f44acfc809d20a95da35364d77d7c9 +DIST bash53-011 2251 BLAKE2B 21fe0e08c06257ea415c4ff697a44251460eb636667300cbb3946c77bbbdb67c667fd20bd561bb7635ee3917b13d0860234c6c159d786542e8403e7cedeba986 SHA512 10da4ad156c83a18ce023845339399fd60f627292af15345612c88764a98259231f7f3a75f9d7820beea34ba6b25cb151d2abca8ce871d07e29e32dcee8adb64 +DIST bash53-011.sig 123 BLAKE2B e857b08c4f76d03f7ee3b0a6f4f5186621b81dfa5ed82b656ec6f3b559173abb4e800013c9e29c84e836128fc5ff6cafe0507aabce58e019db3dfa5da2f4c075 SHA512 27b9b25e5d81976b45b88a59d6731adbf18f00c539197a47a4f73651e14baa9a70b14602cace84bcb6cd1515159c88868bec338c15ad11e973ca8da56d565a4d +DIST bash53-012 2378 BLAKE2B bb3e4ef57170185d3e0be91211632cb5c9a776a71848d2b44a13982bc91f68c2f07ed0aa52b377004f1b872a2b38e5292970d738bdda13fffcd0120c77c4042d SHA512 e178cd27f1db5d7607ec90bb4305059d996cf95486a1e5e3b4d76f37811a0320433a2a2900e50c5704b199fae946280edb50daedb8ab8aabed9ec83dc2540d2b +DIST bash53-012.sig 123 BLAKE2B 14d13fd1abf139f8779d6ef401882274d0e2b57eea155ec617c5d76f692bdd0787ad0b41761bb5369bf22088110cf4a070a5a2e41fc0c932bf9bdbfe526010cd SHA512 53660adcbca8ed207aa3461524e2dced62f5a9c32f664243b33bbd08d22d5bd64f3ca16c5d40cb9ffe6244a07662426c2cc65840069a4eeca0288796ae505c0a +DIST bash53-013 1467 BLAKE2B 133ee6faf3e62fa5f8b99aafef114fc2038dfa96bad769bf9ab2f7129d5d52f19d7d3ca1b3e7ac1d12c883ed276ac06b832c61f5aea134de184a6e3bb95cf4fa SHA512 a973b7d9c37dc1b271fe1efa3afe3b700c1bebbf9f72e6e4e6a72a8d1f50f7875d82ee26af335e26d20883376d89c78f14b1901a0a70a8f9a9b2418df40f71fc +DIST bash53-013.sig 123 BLAKE2B 952840295e69e6f127f4c27719365bf56fb37568cad2d7de0eca3840a4f342fe675753689014e5d305687a1b2f46ddc1b8ce334766fe961f7032627b4adca834 SHA512 6754bba760962601440ed82d798e082073528b69408c598af9b1e523e3454b363a9d03067ade033613d9a2fb7baaf94856ce6e2761af81898a95f028bc18a99a +DIST bash53-014 2229 BLAKE2B cb525fe154e792c467e06f0d930a09466f6f3cf5a688bf13abd7bbb64410f93f6c797e186609f9540c64355d5fd78d0be4473348d948907284bf631f2b60a381 SHA512 7beb4a1c39b126189a94deb12d5065b571196f27abdd8ae9c9b340ffccc1f52ed9fec31a475b72fed661097d081b1a93d088fabe53c45c8b2cc286b831c16977 +DIST bash53-014.sig 123 BLAKE2B 844560e7c4e1cc3335c1abe93391488cafa3338c69f67e51f49ce49cecdabf03be5c9e2d6c8b31b0dab2a52558f8ba5cde33841bba4b7a8c5688b0ca6d812e57 SHA512 bbf798db784109068d8fdc9e4e0bef4f6d12449b92efece20b157442bc959d39a595fb567784ef77b9cae9f1cd93204c49a4e163ca1b84408dbcf1b3eb25c24a +DIST bash53-015 2151 BLAKE2B 5d333c73b891910df4bf13c28fa0cc493dcadadb5c51a240501c5ab450b83673d75baece5c8112b937520cacfc726248ede1d30dba6b60075b88408b585b9f3f SHA512 812fbffd1b755cc9bbf730a4632f68a573351c4eeb5a4f495fa8f2f4dd7dbe1587dd22aed0f9c4d5c941130489ecc3def96068c77cc142680326ba8785862432 +DIST bash53-015.sig 123 BLAKE2B 5e6c7ca967594097aef625a9146654867715dd850ca2116d46a0d3f5f31c8fbd0028c02d6b0dc9be9014710762f9a28506d8bbd6597c113b8bcd341d98e9a2c0 SHA512 33802e00732d4846c83da5fe178d5efb1f140adab510ff2d8135c70ee106e1204bffe7176ed0c244c870084c527ae76921793ace6ad80c7900662ccbd5d2ed07 diff --git a/app-shells/bash/bash-5.3_p12.ebuild b/app-shells/bash/bash-5.3_p12.ebuild new file mode 100644 index 000000000000..e42f6276d059 --- /dev/null +++ b/app-shells/bash/bash-5.3_p12.ebuild @@ -0,0 +1,485 @@ +# Copyright 1999-2026 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. See https://ftp.gnu.org/gnu/bash/bash-5.3-patches/. +case ${PV} in + 9999|*_alpha*|*_beta*|*_rc*) + # Set a negative patchlevel to indicate that it's a pre-release. + PLEVEL=-1 + if [[ ${PV} =~ _pre[0-9]{8}$ ]]; then + BASH_COMMIT= + fi + ;; + *_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" + +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 )) && [[ ${BASH_COMMIT} ]]; 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. + 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/${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/${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 ~arm64-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}/ + + # bug #971782 + "${FILESDIR}"/${PN}-5.3_p9-general-workaround-aliasing-violation-in-REVERSE_LIS.patch + + # bug #965423, bug #970713 + "${FILESDIR}"/${PN}-5.3_p9-pid-reuse.patch + + # 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 )) && [[ ${BASH_COMMIT} ]]; 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[@]}" + + # 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. Chet also advises against use of byacc: + # https://lists.gnu.org/archive/html/bug-bash/2025-08/msg00115.html + unset -v YACC + + if tc-is-cross-compiler; then + # https://lists.gnu.org/archive/html/bug-bash/2025-05/msg00029.html + export CFLAGS_FOR_BUILD="${BUILD_CFLAGS} -std=gnu17" + + if use kernel_Hurd ; then + # Necessary for cross-built bash for Hurd, otherwise + # config.status generation at end of configure will hang + # natively. + # + # https://lists.debian.org/debian-cross/2023/11/msg00000.html + # https://lists.gnu.org/archive/html/bug-bash/2024-11/msg00202.html + # https://lists.gnu.org/archive/html/bug-bash/2005-04/msg00074.html + cat <<-EOF > builtins/psize.sh || die + #!/bin/sh + echo "#define PIPESIZE 16384" + EOF + chmod +x builtins/psize.sh || die + fi + fi + + 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\"\' \ + -DDEFAULT_LOADABLE_BUILTINS_PATH=\'\""${EPREFIX}"/usr/local/$(get_libdir)/bash:"${EPREFIX}"/usr/$(get_libdir)/bash\"\' \ + -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 + + 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[*]}" + 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-r2 | newins - bashrc + + insinto /etc/bash/bashrc.d + my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color-r2.bash | newins - 10-gentoo-color.bash + newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r3.bash 10-gentoo-title.bash + + insinto /etc/profile.d + doins "${FILESDIR}/profile.d/00-prompt-command.sh" + + insinto /etc/skel + for f in bash{_logout,_profile,rc}; do + newins "${FILESDIR}/skel/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 IFS old_ver ver + local -a versions + + # If /bin/sh does not exist, provide it. + if [[ ! -e ${EROOT}/bin/sh ]]; then + ln -sf -- bash "${EROOT}"/bin/sh || die + fi + + if [[ -e ${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash ]]; then + ewarn "The following file is no longer packaged and can safely be deleted:" + ewarn "${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash" + fi + + read -rd '' -a versions <<<"${REPLACING_VERSIONS}" + for ver in "${versions[@]}"; do + if [[ ! ${old_ver} ]] || ver_test "${ver}" -lt "${old_ver}"; then + old_ver=${ver} + fi + done + + if [[ ! ${old_ver} ]]; then + return + fi + + { + if ver_test "${old_ver}" -ge "5.2" \ + && ver_test "${old_ver}" -ge "5.2_p26-r8" + then + : + elif ver_test "${old_ver}" -lt "5.2" \ + && ver_test "${old_ver}" -ge "5.1_p16-r8" + then + : + else + cat <<'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 + fi + + if ver_test "${old_ver}" -ge "5.3" \ + && ver_test "${old_ver}" -ge "5.3_p3-r3" + then + : + elif ver_test "${old_ver}" -lt "5.3" \ + && ver_test "${old_ver}" -ge "5.2_p37-r5" + then + : + else + cat <<'EOF' +The window title setting behaviour has been improved. It is now formatted as +"\u@\h \W", in accordance with the prompting mechanism of bash. For example, +after switching to the home directory, the current working directory will be +shown as the <tilde> character. + +The value of PROMPT_DIRTRIM is now respected. If this variable is unset, the +use of the \W prompt string escape will prevail, with the current working +directory typically being shown as its basename. If set to 0 or greater, \w +will be used instead, which may be trimmed. This also means that the title +can be made to show the full path by setting PROMPT_DIRTRIM=0. + +For further information, run info '(bash)Bash Variables' or visit +https://www.gnu.org/software/bash/manual/bash.html#index-PROMPT_005fDIRTRIM. +EOF + fi + } \ + | if [[ ${COLUMNS} == [1-9]*([0-9]) ]] && (( COLUMNS > 80 )); then + fmt -w "$(( COLUMNS - 3 ))" + else + cat + fi \ + | while read -r; do + ewarn "${REPLY}" + done +} diff --git a/app-shells/bash/bash-5.3_p15.ebuild b/app-shells/bash/bash-5.3_p15.ebuild new file mode 100644 index 000000000000..e42f6276d059 --- /dev/null +++ b/app-shells/bash/bash-5.3_p15.ebuild @@ -0,0 +1,485 @@ +# Copyright 1999-2026 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. See https://ftp.gnu.org/gnu/bash/bash-5.3-patches/. +case ${PV} in + 9999|*_alpha*|*_beta*|*_rc*) + # Set a negative patchlevel to indicate that it's a pre-release. + PLEVEL=-1 + if [[ ${PV} =~ _pre[0-9]{8}$ ]]; then + BASH_COMMIT= + fi + ;; + *_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" + +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 )) && [[ ${BASH_COMMIT} ]]; 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. + 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/${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/${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 ~arm64-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}/ + + # bug #971782 + "${FILESDIR}"/${PN}-5.3_p9-general-workaround-aliasing-violation-in-REVERSE_LIS.patch + + # bug #965423, bug #970713 + "${FILESDIR}"/${PN}-5.3_p9-pid-reuse.patch + + # 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 )) && [[ ${BASH_COMMIT} ]]; 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[@]}" + + # 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. Chet also advises against use of byacc: + # https://lists.gnu.org/archive/html/bug-bash/2025-08/msg00115.html + unset -v YACC + + if tc-is-cross-compiler; then + # https://lists.gnu.org/archive/html/bug-bash/2025-05/msg00029.html + export CFLAGS_FOR_BUILD="${BUILD_CFLAGS} -std=gnu17" + + if use kernel_Hurd ; then + # Necessary for cross-built bash for Hurd, otherwise + # config.status generation at end of configure will hang + # natively. + # + # https://lists.debian.org/debian-cross/2023/11/msg00000.html + # https://lists.gnu.org/archive/html/bug-bash/2024-11/msg00202.html + # https://lists.gnu.org/archive/html/bug-bash/2005-04/msg00074.html + cat <<-EOF > builtins/psize.sh || die + #!/bin/sh + echo "#define PIPESIZE 16384" + EOF + chmod +x builtins/psize.sh || die + fi + fi + + 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\"\' \ + -DDEFAULT_LOADABLE_BUILTINS_PATH=\'\""${EPREFIX}"/usr/local/$(get_libdir)/bash:"${EPREFIX}"/usr/$(get_libdir)/bash\"\' \ + -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 + + 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[*]}" + 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-r2 | newins - bashrc + + insinto /etc/bash/bashrc.d + my_prefixify DIR_COLORS "${FILESDIR}"/bashrc.d/10-gentoo-color-r2.bash | newins - 10-gentoo-color.bash + newins "${FILESDIR}"/bashrc.d/10-gentoo-title-r3.bash 10-gentoo-title.bash + + insinto /etc/profile.d + doins "${FILESDIR}/profile.d/00-prompt-command.sh" + + insinto /etc/skel + for f in bash{_logout,_profile,rc}; do + newins "${FILESDIR}/skel/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 IFS old_ver ver + local -a versions + + # If /bin/sh does not exist, provide it. + if [[ ! -e ${EROOT}/bin/sh ]]; then + ln -sf -- bash "${EROOT}"/bin/sh || die + fi + + if [[ -e ${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash ]]; then + ewarn "The following file is no longer packaged and can safely be deleted:" + ewarn "${EROOT}/etc/bash/bashrc.d/15-gentoo-bashrc-check.bash" + fi + + read -rd '' -a versions <<<"${REPLACING_VERSIONS}" + for ver in "${versions[@]}"; do + if [[ ! ${old_ver} ]] || ver_test "${ver}" -lt "${old_ver}"; then + old_ver=${ver} + fi + done + + if [[ ! ${old_ver} ]]; then + return + fi + + { + if ver_test "${old_ver}" -ge "5.2" \ + && ver_test "${old_ver}" -ge "5.2_p26-r8" + then + : + elif ver_test "${old_ver}" -lt "5.2" \ + && ver_test "${old_ver}" -ge "5.1_p16-r8" + then + : + else + cat <<'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 + fi + + if ver_test "${old_ver}" -ge "5.3" \ + && ver_test "${old_ver}" -ge "5.3_p3-r3" + then + : + elif ver_test "${old_ver}" -lt "5.3" \ + && ver_test "${old_ver}" -ge "5.2_p37-r5" + then + : + else + cat <<'EOF' +The window title setting behaviour has been improved. It is now formatted as +"\u@\h \W", in accordance with the prompting mechanism of bash. For example, +after switching to the home directory, the current working directory will be +shown as the <tilde> character. + +The value of PROMPT_DIRTRIM is now respected. If this variable is unset, the +use of the \W prompt string escape will prevail, with the current working +directory typically being shown as its basename. If set to 0 or greater, \w +will be used instead, which may be trimmed. This also means that the title +can be made to show the full path by setting PROMPT_DIRTRIM=0. + +For further information, run info '(bash)Bash Variables' or visit +https://www.gnu.org/software/bash/manual/bash.html#index-PROMPT_005fDIRTRIM. +EOF + fi + } \ + | if [[ ${COLUMNS} == [1-9]*([0-9]) ]] && (( COLUMNS > 80 )); then + fmt -w "$(( COLUMNS - 3 ))" + else + cat + fi \ + | while read -r; do + ewarn "${REPLY}" + done +} diff --git a/app-shells/carapace/Manifest b/app-shells/carapace/Manifest index dd5a7f86efb1..52896d1dd3bf 100644 --- a/app-shells/carapace/Manifest +++ b/app-shells/carapace/Manifest @@ -1,6 +1,6 @@ -DIST carapace-1.6.3.tar.gz 21286084 BLAKE2B 2bfe8d5c0d8819b701b20a1de89e3592bede8ac65bf4bde826f22dfe790fb5a809ea263db3914c7ab606ead7f7c86d5d6ac649bf8f9b6c349e3602ee5adf9a0b SHA512 34f12424139c7f28afbceb349162a47e85513304829f9c36dcfa2037d713411f00c3944f0174e9a3cc396203f9738e5d5299a82dccc6cdb22fe4386568775aa6 -DIST carapace-1.6.3.tar.xz 300352 BLAKE2B 80ac854b6df4c461f127ac08bf91e6c90adb3216359be964cbcdf4b4ea7383d1415f188b1eedfc07df5a976bb9492e4d2ee540066498fbfe0534d42855125e4a SHA512 d425011a9f8367a49ed5f0c3ccbfd6013c82bf9b5af5405d3205499a0043b823a231f8f80bea3015560f62cf3825117e9b00247f46a993b9e13cc30a23492d40 DIST carapace-1.6.4.tar.gz 21349585 BLAKE2B f599efe29d6c6aca24606aea2d4c346980c8f27d4bf31199c59a440ac2a869006f41319300eef0a12e9f8d8d4ddacf647516cee0e8ef5c791be147f6f79c05db SHA512 037c7cbf8d3fd674b14699207ecd346fe8162897e0ef0e3c4868f7c09a92b4f90d97485994947598687963d0ce30e9770373a1be1e98a41db2d2d4bf39fc5ea5 DIST carapace-1.6.4.tar.xz 304200 BLAKE2B 2c9d019a8e910dee998fe3df8460590a6156339969a8f68d1a58137fc65bdd7a02b97fc4515bbc725f41ed4bf467b19210bce3bb06986205f263a59f68f43ba6 SHA512 b366b8a09c443415e9b369d7c311b0266feb08e8ea4cbc64429038883ad3eaafbaca1be822f5c9080ee04bd7557b6585ef465f16adfd6c2189a1357680d4ec2d DIST carapace-1.6.6.tar.gz 21758235 BLAKE2B 0f8f8e487c8043da76b327e9ad4d923760ae531e2bc00e140ad502d0da44340b95e2d8ebd34eca49c87f56ed80c68c281636aa47d269af9e09b368e05b1c7560 SHA512 002fabf917a65ad75c13598d3ee00a49b9cae1e8ad92ebee431cc29efd9c37b396b06e925709150e20617e489e45ed003a3868e4faec9da42416280e72180858 DIST carapace-1.6.6.tar.xz 310024 BLAKE2B 9a0297c21852fe86ff5848662e20c1f70b618990e9c43ef9f3af72df61c422f1f7ee04d45ecb61be754782ceababd714370b4652b6dfec5f00ae02b5cce33e79 SHA512 d22bc02e950f537da6569a43e371e6c07439347f09908beb04d622cf51c02dac6759b2a957574bdc04918b7fa84a7312db56d71ba5ded8d0fff2ab3239bb8587 +DIST carapace-1.7.0.tar.gz 23217032 BLAKE2B 9e7d59969ac4d1c32d2904e4ddfec33b64f714c93307abf74e71ab356912aec77632e47b834f365091b906a308865add0d13ebb9b740cb34e03d60afb1616145 SHA512 e73e8aaa9553936e0e76420b53b5a0267575039af051c91284d427076222c19338684b4a7585746b418768d10063e709a1df4da98ad53e3c1313af8ce66e017b +DIST carapace-1.7.0.tar.xz 311076 BLAKE2B 299478b3ed2906096edf1aeb5d224777acff508b56195d5a417362627c556023f0380e8b0c34c8fffe40136b70dbee61b79dd3132aeb37ed70e3bdfb6bd88da3 SHA512 cfc47c03b4772337129bf3a8d02005d5e962088713325b96efa74f85d527e590c39b3f5a6e51a32271ec356bdf248d7617e1dcd4736d8e8b3d860d3f47450bb7 diff --git a/app-shells/carapace/carapace-1.6.3.ebuild b/app-shells/carapace/carapace-1.7.0.ebuild index b7078d127971..566813958444 100644 --- a/app-shells/carapace/carapace-1.6.3.ebuild +++ b/app-shells/carapace/carapace-1.7.0.ebuild @@ -19,7 +19,7 @@ SLOT="0" KEYWORDS="~amd64" BDEPEND=" - >=dev-lang/go-1.23.1 + >=dev-lang/go-1.26.2 " DOCS=( @@ -32,7 +32,7 @@ HTML_DOCS=( src_compile() { pushd "cmd/${PN}" ego generate ./... - ego build -ldflags="-s -w" -tags release + ego build -tags release } src_install() { diff --git a/app-shells/dash/Manifest b/app-shells/dash/Manifest index fab4068e75d7..d82451665025 100644 --- a/app-shells/dash/Manifest +++ b/app-shells/dash/Manifest @@ -1,4 +1,2 @@ DIST dash-0.5.12.tar.gz 246054 BLAKE2B f4c5e7088d7b591e0890a0e1363ef4f70074f4033ae34d3f82d71379cee78876e1e89b5d8e4afa3ce9380f8d94c3e8970c480a21257f87706112dd883667893e SHA512 13bd262be0089260cbd13530a9cf34690c0abeb2f1920eb5e61be7951b716f9f335b86279d425dbfae56cbd49231a8fdffdff70601a5177da3d543be6fc5eb17 -DIST dash-0.5.13.2.tar.gz 260947 BLAKE2B 56d2ac2c716a0cb07d995cea30e85185a2f211da2014735f0bffa68498ee191fa47e059342e67d7f8394d9f39d7fa17db77d9313309d5a2faff1f0775d767b77 SHA512 7e9a06409eec925fc83c81192cab420a76ec25821f0a4cec8db4a93b00e51d343438b8cfe56069b4d7fb185f529d1b5171a7603525de00a7852298425b2f433f -DIST dash-0.5.13.3.tar.gz 261024 BLAKE2B f2a4d2b16db637c841e0c5752a5f617e60aecdb958bc5ef0bde29ee22034ff5dc7aa1b502a0b8d78d764757b978c6c7e8a6aff15769867d4b92856bfc6467c74 SHA512 4f463ea9d9bd72cb9852578a43ce04a211e2e775782f4cb6b2af328d51f80fcf9cff3255c519f60027f7b0d8b9d3c9ebed100925bf6324bbef81381ebd3c77ae DIST dash-0.5.13.4.tar.gz 261171 BLAKE2B 3c774e3e084c9f6c3b3e2cbb44d915c579379bdeccb9c0974bb6424d371ada06e3387df518ffbb5ba1e9722860d390fc014a9d84833d11dd814a403f3e96cee6 SHA512 383d0ea8316fea3ce523dc535173a94a22e58bfaec2dec3309d3496a864e5e67711965563db82e7e181f8d7b67a25033107b4c9453c3d6b3820c6586d1f99675 diff --git a/app-shells/dash/dash-0.5.13.3.ebuild b/app-shells/dash/dash-0.5.13.3.ebuild deleted file mode 100644 index 5b4ce4aff4e3..000000000000 --- a/app-shells/dash/dash-0.5.13.3.ebuild +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit flag-o-matic toolchain-funcs - -DESCRIPTION="Debian Almquist Shell" -HOMEPAGE="http://gondor.apana.org.au/~herbert/dash/" -if [[ ${PV} == 9999 ]] ; then - EGIT_REPO_URI="https://git.kernel.org/pub/scm/utils/dash/dash.git" - inherit autotools git-r3 -else - SRC_URI="http://gondor.apana.org.au/~herbert/dash/files/${P}.tar.gz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" -fi - -LICENSE="BSD" -SLOT="0" -IUSE="libedit static" - -BDEPEND="virtual/pkgconfig" -RDEPEND="!static? ( libedit? ( dev-libs/libedit ) )" -DEPEND=" - ${RDEPEND} - libedit? ( static? ( dev-libs/libedit[static-libs] ) ) -" - -src_prepare() { - default - - [[ ${PV} == 9999 ]] && eautoreconf - - # Use pkg-config for libedit linkage - sed -i \ - -e "/LIBS/s:-ledit:\`$(tc-getPKG_CONFIG) --libs libedit $(usex static --static '')\`:" \ - configure || die -} - -src_configure() { - if [[ ${CHOST} == *-solaris* ]] ; then - # don't redefine stat, open, dirent, etc. on Solaris - export ac_cv_func_stat64=yes - export ac_cv_func_open64=yes - fi - - if [[ ${CHOST} == powerpc-*-darwin* ]] ; then - sed -i -e 's/= stpncpy(s, \([^,]\+\), \([0-9]\+\))/+= snprintf(s, \2, "%s", \1)/' \ - src/jobs.c || die - fi - - use static && append-ldflags -static - - append-cppflags -DJOBS=$(usex libedit 1 0) - - # Do not pass --enable-glob due to #443552. - local myeconfargs=( - CC_FOR_BUILD="$(tc-getBUILD_CC)" - --bindir="${EPREFIX}"/bin - --enable-fnmatch - $(use_with libedit) - ) - - econf "${myeconfargs[@]}" -} diff --git a/app-shells/dash/dash-0.5.13.2.ebuild b/app-shells/dash/dash-0.5.13.4-r1.ebuild index 5b4ce4aff4e3..ef005b7048db 100644 --- a/app-shells/dash/dash-0.5.13.2.ebuild +++ b/app-shells/dash/dash-0.5.13.4-r1.ebuild @@ -26,6 +26,11 @@ DEPEND=" libedit? ( static? ( dev-libs/libedit[static-libs] ) ) " +PATCHES=( + "${FILESDIR}"/0001-builtin-Fix-octal-escapes-in-dollar-single-quotes.patch + "${FILESDIR}"/0002-builtin-Fix-unaligned-access-in-conv_escape.patch +) + src_prepare() { default diff --git a/app-shells/dash/files/0001-builtin-Fix-octal-escapes-in-dollar-single-quotes.patch b/app-shells/dash/files/0001-builtin-Fix-octal-escapes-in-dollar-single-quotes.patch new file mode 100644 index 000000000000..63da50ae880a --- /dev/null +++ b/app-shells/dash/files/0001-builtin-Fix-octal-escapes-in-dollar-single-quotes.patch @@ -0,0 +1,88 @@ +From cd610905162812ca7dcf246b3dc46bce5e28e7cb Mon Sep 17 00:00:00 2001 +Message-ID: <cd610905162812ca7dcf246b3dc46bce5e28e7cb.1781226895.git.sam@gentoo.org> +From: Kerin Millar <kfm@plushkava.net> +Date: Sun, 31 May 2026 13:36:09 +0800 +Subject: [PATCH 1/2] builtin: Fix octal escapes in dollar-single-quotes + +The test suite of gentoo-functions recently uncovered a bug concerning +the handling of octal escape sequences within dollar-single-quotes. +Here is a reproducer: + + $ dash -c "x=\$'\\201'; printf '%s' \"\$x\"" | od -An -tx1 + 88 + +That is, despite the input being 0x81, the output is 0x88. Indeed, any +input between 0x81..0x88 is adversely affected and some - such as 0x82 - +induce a segfault. + +I noticed the following macros in src/parser.h: + + #define CTL_FIRST -127 /* first 'special' character */ + #define CTLESC -127 /* escape next character */ + #define CTL_LAST -120 /* last 'special' character */ + +Reinterpreted as unsigned char, the CTL_FIRST..CTL_LAST range maps +exactly to 0x81..0x88: + + $ perl -e 'printf "%x\0", $_ & 0xFF for -127..-120' | xargs -0 + 81 82 83 84 85 86 87 88 + +From this, I was able to deduce that all of these bytes must be preceded +by CTLESC in order to be taken literally. Make it so. + +Link: https://gitweb.gentoo.org/proj/gentoo-functions.git/commit/?id=947090fb7704 +Signed-off-by: Kerin Millar <kfm@plushkava.net> + +The escape should also be applied to \x sequences. In fact \x81 +was totally broken as it produced a multi-byte character. Fix this +by merging these two code paths. + +Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> +--- + src/bltin/printf.c | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/src/bltin/printf.c b/src/bltin/printf.c +index 106aecd..671e781 100644 +--- a/src/bltin/printf.c ++++ b/src/bltin/printf.c +@@ -332,6 +332,7 @@ unsigned conv_escape(char *str0, char *out0, bool mbchar) + char *out = out0; + char *str = str0; + unsigned value; ++ int och; + int ch; + + ch = *str; +@@ -359,12 +360,18 @@ unsigned conv_escape(char *str0, char *out0, bool mbchar) + } + + str--; ++ ++check_value: ++ if (mbchar && (signed char)value >= CTL_FIRST && ++ (signed char)value <= CTL_LAST) ++ USTPUTC(CTLESC, out); + break; + + case 'x': + ch = 2; + + hex: ++ och = ch; + value = 0; + do { + int c = *++str; +@@ -391,6 +398,9 @@ hex: + if (value < 0x80) + break; + ++ if (och <= 2) ++ goto check_value; ++ + if (value < 0x110000) { + int mboff = (mbchar - 1) * 2; + unsigned uni = value; +-- +2.54.0 + diff --git a/app-shells/dash/files/0002-builtin-Fix-unaligned-access-in-conv_escape.patch b/app-shells/dash/files/0002-builtin-Fix-unaligned-access-in-conv_escape.patch new file mode 100644 index 000000000000..05a92a295021 --- /dev/null +++ b/app-shells/dash/files/0002-builtin-Fix-unaligned-access-in-conv_escape.patch @@ -0,0 +1,35 @@ +From 28c4d5b126e336f1632c074fa002969ff42e7a51 Mon Sep 17 00:00:00 2001 +Message-ID: <28c4d5b126e336f1632c074fa002969ff42e7a51.1781226895.git.sam@gentoo.org> +In-Reply-To: <cd610905162812ca7dcf246b3dc46bce5e28e7cb.1781226895.git.sam@gentoo.org> +References: <cd610905162812ca7dcf246b3dc46bce5e28e7cb.1781226895.git.sam@gentoo.org> +From: Herbert Xu <herbert@gondor.apana.org.au> +Date: Sun, 31 May 2026 13:51:02 +0800 +Subject: [PATCH 2/2] builtin: Fix unaligned access in conv_escape + +When writing out the unicode character in conv_escape, use memcpy +instead of direct assignment as the output buffer may not be aligned +sufficiently. + +Reported-by: Nathan Mills <the.true.nathan.mills@gmail.com> +Fixes: 776424a8f915 ("parser: Add dollar single quote") +Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> +--- + src/bltin/printf.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/bltin/printf.c b/src/bltin/printf.c +index 671e781..c2c3615 100644 +--- a/src/bltin/printf.c ++++ b/src/bltin/printf.c +@@ -429,7 +429,7 @@ hex: + USTPUTC(CTLMBCHAR, out); + USTPUTC(len, out); + STADJUST(mboff, out); +- *(uint32_t *)out = value; ++ memcpy(out, &value, 4); + STADJUST(len, out); + USTPUTC(len, out); + USTPUTC(CTLMBCHAR, out); +-- +2.54.0 + diff --git a/app-shells/fzf/fzf-0.72.0.ebuild b/app-shells/fzf/fzf-0.72.0.ebuild index cb1f5138bb1e..f7f918b4199f 100644 --- a/app-shells/fzf/fzf-0.72.0.ebuild +++ b/app-shells/fzf/fzf-0.72.0.ebuild @@ -17,7 +17,7 @@ LICENSE="MIT BSD-with-disclosure" # Dependent licenses LICENSE+=" BSD MIT" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 ~arm arm64 ~ppc64 ~riscv x86" src_compile() { local go_ldflags=( diff --git a/app-shells/platyps/Manifest b/app-shells/platyps/Manifest index d1a9b43f552b..f7c210d9d412 100644 --- a/app-shells/platyps/Manifest +++ b/app-shells/platyps/Manifest @@ -1,11 +1,13 @@ DIST dotnet-xunit.2.3.1.nupkg 774955 BLAKE2B 338a47a377be9bb1edc7bebd765d2d9e740307358bd03ab3f18153f21ad00a7a3cbbb7de0341ae96c0b4355e6f3a41b0e40692d73bd1bfb67d531f054ee0c60c SHA512 2f0ee05b38a7674b4e1826a1284dbf18e2d122ae3f5f741150b318669ad1ebedb03e22a7c5c35d8b43c3a7a1a70ec8253eeb0b74915eb81309bcd998218dcdb8 DIST libuv.1.9.0.nupkg 1270373 BLAKE2B c20e78a6c8cac53a66968af0eabeb270c84987f2e1e118325034ab07e7d08784c58b60c5ee70b3fc0cae05410da66b446e94b112eda9957bcabce1417394c053 SHA512 75fc28894498f492bdf5db6c599e40059e7a8c5417ba71bd6b4a87416b0f669611f6dd98dae1da4c0b1e076598724914514c87d4cc92ed51197e5a251b94ecc3 +DIST markdig.signed.0.33.0.nupkg 890574 BLAKE2B bf8d357fba12947114f8f499759fc958b3e6e68f76d2f17bcce270b49503eb23bf605e58d163cf15d9b597c1193374bdb733349105a437f0aec6c86af4f4995f SHA512 a5872831d94628712dadeedc793514278c46b3428ebd2da7e78cd301833b609c9dcad30f57fb15578654d0fff678ea5e91edcdd998760484309437af6bd7ec70 DIST microsoft.codeanalysis.analyzers.1.1.0.nupkg 102426 BLAKE2B a0b94d8d6036e8d1da75d12c60db77f5166aadb04e179607ad850782d3a602a62f3612798120ba29edb40588ccd277f1c400f87887c42933470eb7f5454ff6f6 SHA512 12d7a033ec66d072c9249677fb0712446290991a587b180e6d18ffef0eb97b738443fe69098370984ee56eba9f6ca0bbe57d11ac59d41a32d137c7f9a6734aac DIST microsoft.codeanalysis.common.1.3.0.nupkg 3145733 BLAKE2B 22695ee9f2a6cd1bdb7f9a68fd9d8c1c8610580eac96b1f031c11629fdb44ebde10d3394b70af4dfc798c9e3dbd658a46af3c9abc8308eb8f5c03c53e653071b SHA512 ae29716477d0f7a34fc43298a8e71685362cef144def7d1554dcdac5efcd49686e8e03aaad411d972ebb087bd4529106683258ea201826d81aca1b8071ab218e DIST microsoft.codeanalysis.csharp.1.3.0.nupkg 5754312 BLAKE2B 6e1197a35a17c6c81dd58fe787555429a2af3b3bd832b951f2434e565704d8cce6f10692c79f21b74ad66773c60e144bdef7bfc4ed090c650534b30f4e68b2fe SHA512 1f08f8902b8e21c0e72ffa7d40946a028c843e1a1d510f9038304a2a8c7feefb2dcfb94697210ee28cb98c3283a06cb45751458f87e5c6fcb86fe02d1e4113c0 DIST microsoft.codeanalysis.visualbasic.1.3.0.nupkg 6956584 BLAKE2B e2f7f898c319742e71ee02494c3fde394dfbc1773e597892f558804f322cdcd01f803fb48f80fda82ca168be0526c52fb692e3b30dac53f8d6b704af15c984a5 SHA512 141b616d7a6c7b533083271d56ce0adf23003c3328d7637e31b09a2bdd33a8357108555be7926d6486671a1bceca059e0d90bec8db8588d9673b70b1c91136c4 DIST microsoft.codecoverage.1.0.3.nupkg 26048 BLAKE2B cf1224b5edefe10192281a801088aa6feb6ef41d4176f4d3491f10014e3e31644208e5434f4304775baac51657888d7353b09a5b6ac82712fb5821418dc7578d SHA512 0a613ebb8dd329f03874b9257b637002bc19f6a02f3c30bff23cd30c623174023afb9954f092a6f70445f18202cf944cb4b7be8f33263e6d3faf5030a3ace889 DIST microsoft.csharp.4.0.1.nupkg 462346 BLAKE2B 209ccebc9103b803d26ea1f0232245c3cd231078b03a83a0011a2a79a1a8a324a72c5b3fda94b2686fff170932f366e165f81a36a70df590a39c45d70778e4be SHA512 c0e75a9162f28ba4c4572c8fac4fd4c8c97d6d3505a37683646ba5f7e5f6ac0da69d5200d2646054de90e8e08f893a10e514591b69b8273640842b2cf90bddec +DIST microsoft.csharp.4.7.0.nupkg 627100 BLAKE2B 114a5af7151feb80785619d54caf5f928558a034254b5c2e185820a441f017705c933b0d66a31d395ce516a81f97655cfeca46e37397082b1b5d6ac6f507301a SHA512 2c96988515f95714d4b83f5650f183dc6a564e0b3cf5255fa0e3ef48476debab4bde542f9f2f6c47f6620b7a71d6a515e4415e6d2e388b60817a29621d5690df DIST microsoft.dotnet.platformabstractions.1.0.3.nupkg 35945 BLAKE2B f3fa8026a1db173fa03a2fd946cb2bfd840e035c8f63fd5716f3a78a1ddaabc1d400ca17b1fd700f733e6e5d83598622a54a1f053745470077231420da540400 SHA512 f8085e46fba2769ced0b79abd8fba41bc6e32aab73c06299ce7653bf629520b9eabdab8591306b7b0814bd4b3e1584907b4b84c85244015b010b91beb5544b03 DIST microsoft.extensions.dependencymodel.1.0.3.nupkg 94484 BLAKE2B 7474c1bcc8ddad53cbc547d01d946b78f97984f4efc507573b4dc17d2928c0cce166f5e10633e9524c8ae2c13621b21effe9413ffc9ba79554d44830fa0f66b2 SHA512 a23f0feb4cb602dc3d1819beeb2e28f1c4e48e4814642d7ded31f81a6b00912293d7fc7e88f232f0ce6e76001ad14a1f2efa52d1a081fc57e00aa804d759b780 DIST microsoft.net.test.sdk.15.5.0.nupkg 17241 BLAKE2B e160fb967a383f49ee9ea2e720d7bc9b2743bfffbc1478da8abdc6e98895d5e72132059f392dca5b8a7c10242f6e0adba698aea70786988f695790f962214ce4 SHA512 1018a1c362ef5b18d30a577cd37dffdaf88ab90ff7e13d08d0c97a1a9d6b60fa33526737f75b9892d9bed2e4da5d16a7e2b575e307b3fa5bcdb611792daaf4b2 @@ -27,6 +29,7 @@ DIST microsoft.netcore.targets.1.1.0.nupkg 18162 BLAKE2B 419d19e0da934ab4b9db75d DIST microsoft.netcore.windows.apisets.1.0.1.nupkg 17111 BLAKE2B 617169cecc24f0b79a1ee6f46bf70eb7cc9f5a0260afbbc4fd91f6c73caec4a6dda9e9478a77badafe6d184ec38bf7039a990f516d8d533b8580fdeae25dc746 SHA512 dded90be87a317a63be78ef9920a8a8d76c80e3466cf3aeeccfc4d795d5e2556a119dd05efebe6dedcc37d6d7aacaa2644ebfbda6c4f6b541f4cabeb9cdb2eff DIST microsoft.netframework.referenceassemblies.1.0.3.nupkg 20961 BLAKE2B 8632244fc71708fbb2a56331c8642a12782baeebda676b1b8d3ada50788e0725a7572cf0ed1c296c4cad3fb8bdd669871c90f963b9c8da6eff796fd30ba768e2 SHA512 e3b8317b290696a380a32abdd9e75e71ddae68049769beb895024c34089f41262aeddf53e30984330b1293f013e34d854a83223ae1e2afe417186795da8dc148 DIST microsoft.netframework.referenceassemblies.net451.1.0.3.nupkg 19872410 BLAKE2B cad71df59e92d775c131327ae723ea7022335d27e110b0feb17a8a1e2a8dee6c2e09b4ef72bb234898d99a8165ff77d3ea1b82d7d6dc18803a01f9230a5cb63d SHA512 7d2d90c31c7725ba09d9a50292730674cd7749a60bb20bab5de86ff8ba799676e5fe52b0b47e794bfb88dcaeca4411f90aa1b12ea05f59626f033fde952f4008 +DIST microsoft.netframework.referenceassemblies.net472.1.0.3.nupkg 20790130 BLAKE2B 999c125813f55751abb2b05862b783c4c4aa634ecdd29b640649dfd51892649b8f3dc2fa702e8b97026d7bdff2bf052ccc794dbfb2881bde994d14f5beaf27b0 SHA512 3ef64aa456edb31b49062ea1272cedfe268aef5a8676ef66355a494f8dfe8b55a9db7ca6e7b615b9023e0449ceffdf4ada9c4f304818b73eb69fbc99144822d8 DIST microsoft.testplatform.objectmodel.15.5.0.nupkg 1084475 BLAKE2B 8715ae7e6a2a29b9e075c0200da53c0c02cea59c487f1744d0a18f7a33361d6e2ac99fac9086acfc77181155c46fda7439dfe06f4b6d96918c0b78345d909112 SHA512 18021c65d5419124ebd657340c92202adea77774f54c91f3c6df35ba2bd7e3575a0544677fa93e3355756f3dc885aa4b7708ee249d5d18a0a4a193c4c2d8697b DIST microsoft.testplatform.testhost.15.5.0.nupkg 4207684 BLAKE2B 8669a1b0de340aff4cafeabf6046879091f257f2e15c328245c9ce11d93b54c210234a313e79af13e030ef1d2c6fe22dc2735a0e43344be56d1c7952bd95b4ba SHA512 feba5fe6950a00efb8e1773632cf635df81c180f2d2da77ce903ef8195fd9b1c26dfe5984475076e7483826823d2aa6e03043dbd440ce6de4f21ad4a3b972b28 DIST microsoft.visualbasic.10.0.1.nupkg 338094 BLAKE2B 9ec325fc69141e52e446eecd2cea1f4c4916705f8ba3bcf955c74b5828ec9aba13fa72194242c94d47ec26722cc75eea7554c3ab0ebbe2b9addc3d002aa5b512 SHA512 6ba8407fc013e5bea5614036f889fcf2983af3dc0a74a42d8d20498f9146cacba5cb7c236399ef58dde9c0a3612d0d95e8ab43fb42bb9fa427895e8d68dc8347 @@ -38,6 +41,8 @@ DIST netstandard.library.1.6.1.nupkg 17360 BLAKE2B 02badd3473451f83997f0b66d05f1 DIST netstandard.library.2.0.0.nupkg 3143842 BLAKE2B 7e3fc865e7893fb531b21e2ca791b788af01481316e49a79c4676050c2b8ad413fd8a4ef9890557582ec8b9741c8aa01b080b8d2caa16e02bfff2a7b38777989 SHA512 e3d64072b9cd9f9e86209c06a22688ecda7070427c9a35327d2a9560824c0e1381ccf7bc1d21d2ef8b301761f4bfc7f38fba712df7188d2f4fe4f748aac4d0c7 DIST newtonsoft.json.9.0.1.nupkg 1613054 BLAKE2B 56918db57c3786cff0548b642195521ef203246a6b2ed010186ccae230af3b0c913ace4b2a3319bf94c6e47647b9c5ad7b017e3b50d35e6654b4d5b987643739 SHA512 da8917a5347051c8106f4ea9bade4bc300a3b60a05a3be3390f92c8dcbcea67223c7b4da8065b9228042000e25b99c75fad7e2221a0daa8888ed8ef3c161b228 DIST platyps-0.14.2.tar.gz 687757 BLAKE2B 0da20a68f9410ae16b7cb6d6998a17eef4b689142ad8f1abfdf5f11ee77c2375df3a5bc148039ab0d02db3c33d786dd224b6f0dd99d70470a005af5b3a51ea51 SHA512 046b1d273e4746d6b060ce9e9cbd45635049f4ede162ada32c6f796402abb909be4aadb093c46c50d7bdeb7beaa78f39c0a068b49b3f0dd9fdba37d1a40be6d4 +DIST platyps-1.0.1.gh.tar.gz 1159918 BLAKE2B b8e1c2f3bb95624072fdd2ba73635eb70ee9d157a56fc5a8b44abf2702917ca20b88015f8fe5bbd03fbdfd79a19704c991b29fe8e9fd3c62544c62e216b1f432 SHA512 8618631bd932ec0db35d901b51851c5487d7cba21259626e3a4b6f42c398ff3753c5b91030311f2355fcff7112961b091e211db276ceeec3a587ef0b9607f23b +DIST powershellstandard.library.5.1.1.nupkg 267353 BLAKE2B 0f1c4d330f4bbd5247c937e2a1995fb6ae5dbf9236d87c38346e4149a19451cc3442200255ab1dcb7e0959548f8e49aa5e9ffaa9194e3b6f42f6849238294bad SHA512 198651332474b78694374c35e34a8d59ece635dcf53730daa36e48aac5a858a39befbc0441a6c04b2407c159e003856fe074c2ef9550fe204375c147e051665f DIST runtime.any.system.collections.4.3.0.nupkg 107990 BLAKE2B 802e2ae919a4834150d825ac086d8f47e2185e31b60b45f3dbe5f63b1d714953d9faaa7d8fe4cc25a1ea8495c4f8fd925bb198eea0b67e594a8558238b18196c SHA512 9f8833176c139b71a58694ae401c5aec209a63227be07c7ab559bef772082bd1f6cc38ba2949cb1c8e5c5514ad9f4ff51859838dc2f28191f8bb7ae611a50239 DIST runtime.any.system.diagnostics.tools.4.3.0.nupkg 43707 BLAKE2B 33d1c57eb4e50c06488da02ab2bb1b8dba9948026053e662986af05b74045c014e76815edbb588f10d6a904de22e4c50177f31f3fac36d159b9af361a4cb2b62 SHA512 bd257401e179d4b836a4a2f7236a0e303ae997d2453c946bf272036620a0b14e85e5f42c229332930a954655ab4cae359d191a3e3d9746df09535a651367764c DIST runtime.any.system.diagnostics.tracing.4.3.0.nupkg 49844 BLAKE2B e35998e1369bacc9fa90f74825e021c62b9c671ac9b7cfad4e9b455656bd40e968f348ba8943ed670c74c22bddb1c94ccf5058885233607e3c73a5c7d2a56688 SHA512 0b480d21e23c38965222be7fa1e1a0c7e444cebdf400d1db8d3ac609f893b82d78c5d8b271da61808b7b179dd6466a0090bd807fc2d35020f93a00f0213bb436 @@ -96,6 +101,7 @@ DIST system.appcontext.4.1.0.nupkg 146990 BLAKE2B 7881a5a903a358e19b0de72fe800c7 DIST system.appcontext.4.3.0.nupkg 147030 BLAKE2B fafd6d050e77a265cf41c6d00a3ab3d8db47f2258e10a6cb556031ab183a01a508a986bb495b68c5e8610c05b92b2f3c7b0718f68f508111fd262291684f84c3 SHA512 0d6ea63006304708feae2cc0590d2cdd99327b682210822bb2803ac842fdf4d8d57170d7947c006eec4b5687c942768478a7ec109745472f3946d230732483e8 DIST system.buffers.4.0.0.nupkg 35190 BLAKE2B fee35456dd7fde57a978d20526e4136f50764307ab2db6edf2c9d990992f4d2520531687885764ba2fb54f2a26640da699abb8ee538cda2015d65382d01128d5 SHA512 0663f4639c4e37c9dff12717cdeaebf30e38d91e986d6a99f9f16ba88189873e0399e418659e732a18c674d8875f8f41a1cf60319604173ca8430960759fddf2 DIST system.buffers.4.3.0.nupkg 35171 BLAKE2B 3b274a048ce14845ca957019b3670db00338972f6e11279e47f59ca6b4326aaecab1d11317694ed98e8a27f3de7ef6f90de94d4711ab224f805388d468728392 SHA512 3dcbf66f6edf7e9bb4f698cddcf81b9d059811d84e05c7ac618b2640efed642f089b0ef84c927c5f58feffe43bb96a6bcf4fec422529b82998b18d70e4648cbe +DIST system.buffers.4.5.1.nupkg 93737 BLAKE2B e846885f9ace79f30bf7698a96ff3277a45fc2988a48cddba1862e23650ce55b06dcc6c1bcc29e08cf5380c9700dfcc15964f7263aeb11c737306d27963b34da SHA512 80da6158e55b9bcf7e0b5e6379b9cf45a632914f037b53c5bf5609576e3cd7821f7861956b73d74470d2d0c2e56dd235a5ef4ca6ffe7e192b820dc2d023aaff2 DIST system.collections.4.0.11.nupkg 810001 BLAKE2B 7f20413de51be3416862a8e3624fe575740aa35fd0983a694b128587fe05d7a3f869afb893106b02866bd6811dd045e35d0c3f43b55e06ba9f92758f21aa507e SHA512 f61b75329ba5d7c0e688aa9d110b2200c8934c3a1888f6b1b5f198baa7ab93f23835e8380853e8c046f257172b5060578ed86df26e5fe0ef34d8c4408a02c33f DIST system.collections.4.3.0.nupkg 810001 BLAKE2B 0079d5834bb3857c002cc686313646895b47be1079e10cf365ce9e67c05f14c2e70e782b122b07a7cd9d5090b57334d0cb2336503cf5059cdbafeb3ef3cc8220 SHA512 ca7b952d30da1487ca4e43aa522817b5ee26e7e10537062810112fc67a7512766c39d402f394bb0426d1108bbcf9bbb64e9ce1f5af736ef215a51a35e55f051b DIST system.collections.concurrent.4.0.12.nupkg 502657 BLAKE2B 39d39b111bb1dbf282a42d0b7cf0cfc64509d1805beec3a10c216946b21f090e2d1f94227035de2c17442b463a1985a65ce4de203356381e88eec036b26e893a SHA512 a46bd40b8cc7afeaea14c80ee6ab99a5ef6d27e9e897cfe842e9ab5ca04b9de8d7192a310225b1040d57d4870921487acf5df993ab81301d49994048e1341e85 @@ -150,6 +156,7 @@ DIST system.linq.expressions.4.1.0.nupkg 1929236 BLAKE2B a804c6741afed5fdc918c04 DIST system.linq.expressions.4.3.0.nupkg 1928029 BLAKE2B 1add363cc651e551fd7abcb797252785e2617159b197ec081de605d7c7dd829e7653e7693495a87909f46575b6619e95fef6e3132532110b3c1e74157ff096a6 SHA512 61b90ef9ae6f779fbc8a7b6483ee8f5449cdd05c81b05235f70447e656a73b2aab7c341784b999f7532374744a72e2c3a5cd13800ea23417fac32ccfae5cde6d DIST system.linq.parallel.4.0.1.nupkg 522506 BLAKE2B 39d8376d24a2233d592756c0c01d0497c0956acbceb4f106137b2241ed12179be6f015a8e68677bd66043f2bfcb4a47bd1c41061766d6ae8bbc963432f3ed07a SHA512 f74824d2b288ef26e33855894bfb13d09674848f00850b1e6e4f7199dc377afe5e9c96a9127d0e757540c05342ea8bf1e0cd1f4983ecadef2a91c432a47f50cf DIST system.linq.queryable.4.0.1.nupkg 275516 BLAKE2B e8987dee457125c1e6992574f90805d726c95ae262424f268324bd7e465ea4e5e453f2a104d6f8ac598ada779a7625a086a33b2fd09d41fba16d3d458cf11159 SHA512 e658e45e86fe826988cb0e053a78ef85b8ba8ea348173979b7d705a35d7e993c3e7c1bbb2aacd139511e3e305a0d4a4b87a4fd299038e9543e6338fe31c07fe3 +DIST system.memory.4.5.4.nupkg 205467 BLAKE2B c5b66e68917fc14d5b94aef9aef53087756c59473a2580448f20233e559b3ac9d691b2c063d129083593a1b610252acb01016ef078ed21b390615bf5a6e04dc0 SHA512 8ece5491eb0fe332bc190f40cf76b3beee0c5f996325034861be221fdb0ff02fd59e4f7020b3c4a1f29a457f76ff76c4c95d46d38555e4f48c7a3bf172d87966 DIST system.net.http.4.1.0.nupkg 1372881 BLAKE2B 95aaf095ec258e9a8737c3bf608a887c11a3b28850ccf2d19a4ffb3615db638d56aa57143a4f4de5e7968492f506a5c5dd5baced6ce395b24b208050ff80defa SHA512 55ef2f727784e744ba069bc0cdd1586ed714cb9239ab724c650629055f4f2e9f88493afd176e833d46d1493974a8e95c805c4ed4d989f095d6def8d39322fd7c DIST system.net.http.4.3.0.nupkg 1371903 BLAKE2B c0b56398662d8f149eba439ce16ec254bd5a64cee0faf251af07d89ec130953d8865d537b52b432ee19df9ed7405318119d301743bf84f98179c1cd7e6615731 SHA512 e8105ce8151aee95852fb29423f73cc1bd7c2286d36474ed7102a4b31248e45f434434a176d3af0442738398c96c5753965ee0444fb9c97525abbd9c88b13e41 DIST system.net.nameresolution.4.0.0.nupkg 178900 BLAKE2B 378b837232dd720825a14189ff4ec95127611d665def11fb6df4346406cfcee3cfe782f1912b1b0dcb6d34fca3297e9c0f9868e85f54b197d984b3c619488463 SHA512 b737933f4afcb8c7f5d0b56b6f0ba30e24124d7349ce3968d8baae455ddbe451de13638dc1ef84657f715661be28561a27214d6f6b133411c0d64d6d7d252097 @@ -162,6 +169,7 @@ DIST system.net.sockets.4.1.0.nupkg 135660 BLAKE2B f36e7d4191bdca249dad820e1d0a1 DIST system.net.sockets.4.3.0.nupkg 135695 BLAKE2B 17f58a8445cae9ef2ad17bbd7dda092e66bc8be07d767e971fabf14da98f549924cd6a7abf54e8a5a7557710612a151f2f27dd35e559b81f2f06dd71fd43c9f7 SHA512 e32ed9518e9630e99edcf1963c3d0e7047ea8252853c9260eb5403a4206170ae28fd27eb239f39da4d2db766f830b3ebdc9e4da2e697be20241d928082200955 DIST system.net.webheadercollection.4.0.1.nupkg 85078 BLAKE2B 4c080c1157d172340b94b1eb406d340dabecbe279ad8b896b24d53eb87bd566e83d03ce0ce1188c419b05db2330b40ec1d977fd61a71356efd4750f21949a80c SHA512 d1a2e5f3269a1fefe3c88d1fd4c9fdc4ebc1596c3239a266fe947648f00dd91bf18530ffcb1c4f699b7977ed8a5c065d3e424e69f4b8410d4669785970c375ea DIST system.numerics.vectors.4.1.1.nupkg 234884 BLAKE2B dfbdd164e434ef1f98574b1f252c524776a73a70061d003bae8cd44d8a53f2792164885d4dfea17bc434cee21261baf8eb63520142802ef09fff573c2e127710 SHA512 dd3cfd6017028fd348f96b898a756909f24530cd0754af04d40c8ceff75676fcefa7b5dba4d7e713735622712a991c7610385785252c56287ed238f6dfd1a453 +DIST system.numerics.vectors.4.5.0.nupkg 382792 BLAKE2B a97284a76a6729052d3a127e1875e2012ae5b90a40533783dc799b543d44cc084035374799e9e1b894083cb61f2639711f18b76ff31145140519a9674dd9d2aa SHA512 9c04ec0530f608aaf801837a791b33857e2ca6d2265a6049c01fd4e972825967e709cad3070f174829b7400f608e9a641d3afc3a45d4636d4c47dd43dd0657b3 DIST system.objectmodel.4.0.12.nupkg 321648 BLAKE2B 7a008caf5f7f38f34d62037e5e3505dc237356246103d00be5b07423829fc4f2a763fa841673ebdeb0d6caa79dea8d7fb9f56cf078addddb3cc853e63101f03a SHA512 f5191cdb360bd2624abd7454c66862540f97aa19df92ea0854786b9d3cb9549e95c6194cfe8adc01589203c4feb1673a129c4929486bcb5f8db83ea535477c53 DIST system.objectmodel.4.3.0.nupkg 321655 BLAKE2B bd1110665321034ec27635077ba7f9f1a18cf2f813d7a99f511a91fb6c95827b3b10108bf8a5b4a9e32685a8754e1eeca7d1afb2dcd02ad5ce3ef9db61fcc114 SHA512 409bca3d2139bd1d003c711400ba2db5e576bb54d593aa541ec3576e7b2029b60159ab1c5b2c4e7389267b1b95ebcd8c2f064dc6e1f53e693aacb1737f066123 DIST system.private.datacontractserialization.4.1.1.nupkg 476334 BLAKE2B df2609dea827597fd1ee0b3b8482cea126d86944a7250c99a8257b303886e4c74c4df57a6e839d028ed1a8415b26f7d2088df31154a06a90a167d3ae9c817857 SHA512 4e0339b94f4de7041575a6f2dc0e4026ff9c4def3818264eca7e5ceac3207a19e7c388b78bc59ae090d1f2c1afbc991132a71e0a149e07777a7e446a15759dc0 @@ -187,6 +195,7 @@ DIST system.resources.resourcemanager.4.0.1.nupkg 85915 BLAKE2B 11b7c350695fee89 DIST system.resources.resourcemanager.4.3.0.nupkg 85908 BLAKE2B 002ba25bb953e5a9162214338b50abcecfd8183c68c7b5de8bbc1780e57322b6aa225e13436ffda54b4013fb77540df7428d8c3c89c1a21622ab124d8ca174cd SHA512 9067db28f1c48d08fc52ad40a608f88c14ad9112646741ddaf426fdfe68bed61ab01954b179461e61d187371600c1e6e5c36c788993f5a105a64f5702a6b81d4 DIST system.runtime.4.1.0.nupkg 7263653 BLAKE2B 0a6699d985304a5072c7c283a42c100cb8f13ae61e95f93463ed57438ef3d7c655c3c4aed43b1d8fed4057933e924ca1e6b9a5987f1328fe4e2e172861572593 SHA512 4b05eb68bb485846707c4fe3393f9616d3ffb6c5f62a121d81142ddf7d0241c931fe96d193b7bf02281a9368458e0764466766557cfa9709035dc76d8fdd7706 DIST system.runtime.4.3.0.nupkg 7263712 BLAKE2B 6cf2c6704f2a5639bffe2db645fd6ac935e341a5d50f1be97969bfba15e7fd93c94a2ddbb75a3538cefc05142fd72331185ca7ed175141102e8f977649f3bf1f SHA512 92ab2249f08073cfafdc4cfbd7db36d651ad871b8d8ba961006982187de374bf4a30af93f15f73b05af343f7a70cbd484b04d646570587636ae72171eb0714fb +DIST system.runtime.compilerservices.unsafe.4.5.3.nupkg 102160 BLAKE2B a86cea1017d251d3cd271eff0be90ce43ca0becd8b0cd37215aba847c00369414de1d34df318e2554f8989fa48ce0f5bf61e0404fd97b476eb0fe0bf5f10579d SHA512 765d87d36a7b7415dee5b6cbd3a08ead9762915fbfacfad8a205a78d4a187cec6677da2407f7f7c2d1b55fe9f8c0257925c9b0bc193d402972c323979678baab DIST system.runtime.extensions.4.1.0.nupkg 1060307 BLAKE2B 5426e4a8e6d9ebaa6c88ca7dc495c120b848602f15f102d3c65105c8a03ee35136d5eb2e04a3eb2452dea96a36af70e42cb7a317e269bf4ef8a1d3a5f33f9784 SHA512 42d009be57d6497aa0724924891289f3decd916d0432c1c865cc0494092f5e59287f632a70c5060b3c78e361ab04510d75dfb3c2d2853f54201f735eb6e2dea6 DIST system.runtime.extensions.4.3.0.nupkg 1060357 BLAKE2B e58c5c36d42228a507fba876d43f064b872c93dc4a48e9a7475a77c27e00f2added1dbb8dd5d6516a4c5652ef2b01f5fa31aa611360b38a0b66a0b1a2e479699 SHA512 680a32b19c2bd5026f8687aa5382aea4f432b4f032f8bde299facb618c56d57369adef7f7cc8e60ad82ae3c12e5dd50772491363bf8044c778778628a6605bbc DIST system.runtime.handles.4.0.1.nupkg 54854 BLAKE2B 396943fd119a2ca9b91d1e8059ec1854ec4eedda6b73699042f8ae761bde1b6dde5f7a92a2066220d4c8f7d872741939ba198cde2154d62ff0350ed867ad0d09 SHA512 966a943195b66118277a340075609676e951216d404478ac55196760f0b7b2bd9314bfbb38051204a1517c53097bd656e588e8ab1ec336ce264957956695848a @@ -261,4 +270,5 @@ DIST xunit.core.2.3.1.nupkg 139602 BLAKE2B 21f28e8500a1f00f034b43670a5ed2c43de14 DIST xunit.extensibility.core.2.3.1.nupkg 213469 BLAKE2B 0a3acc00829a3e2cdcf083ba0f2d8f1c949aa47c9db96cd743c360e4ed634eb85bdbaf96b85e3031aa1d427e33f05d3b4d6e9218d2b17f3ae3364b98c1d42c36 SHA512 49d10824ef7a7c801e2afb7d363c97d56135fee4c4c2cf327a8e5066006d913e9e046f884fbeeb87af96ca183c3199a3f0526a6609bd89be8027e29ba8e24709 DIST xunit.extensibility.execution.2.3.1.nupkg 307151 BLAKE2B 827a2b661199e2167b09afbec771bb8025a3d528b6729d575075a2daafce94fec3eb3ddf9048a42d0e06a9ae2057f838768025aabfa6e53629ddf5d378fcaf89 SHA512 04f6c919dbf1d333bdc17f0538464be5954cfa2d572256683da2d0bcbb12c60b6d99dee16013526b4852f91cf8b45465f2da4fe8b134d3be52eabcb7f06f5fcd DIST xunit.runner.visualstudio.2.3.1.nupkg 685817 BLAKE2B b9d7114631004f82556eb09eaccf4d100e02864e59711ae2042153bafb73b0677e750ad191bd388342308f98b3a86ef983e4d1f0320fac8bd46cdd0298d4ddd0 SHA512 b5b940f21c5705cc873006828f00fe6d099be04b8da0adfb141d62bf815592ce418a7650636e12a78e15ac68cfaa36d2f5993e4f6307a8af90b458f21e448915 +DIST yamldotnet.15.1.6.nupkg 864579 BLAKE2B c42a8c5d4cc5ba0f72fe38861b60f69e29afab01879cf9d33aaac66e1ceda853e3a0e9764ff6ffb7e617eb3c85f27cf428f2e4d620d05e8b3f9404ba97666122 SHA512 b42fe27db6a3946e9a137c9a954671137bfda24cadf07f555eae4b2f0625b8a590a187b7ea89387b1b86d865d30d0bf0b4b30ca86a3c2287c6c8a0bfc740fac5 DIST yamldotnet.5.0.0.nupkg 418351 BLAKE2B b52bfe79a2a39108246829f5946e46175c4a8382613d20789f82797cdd99097fb76e0925d7720bc54586fc1753918cb6bb05fd7731de1668c7161a97a28fcbc4 SHA512 cb8a80bdc897452c832c03d736d841b8b2b39ea6fec6a98e6f919f869b5a296e9c8a7146137cd4a503d8c57de2c84f9329bef787ae3b0b42de4520b015b17c9a diff --git a/app-shells/platyps/platyps-0.14.2.ebuild b/app-shells/platyps/platyps-0.14.2-r1.ebuild index 630c7987078b..66b1df158686 100644 --- a/app-shells/platyps/platyps-0.14.2.ebuild +++ b/app-shells/platyps/platyps-0.14.2-r1.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 APP_PN="platyPS" -DOTNET_PKG_COMPAT=8.0 +DOTNET_PKG_COMPAT="10.0" NUGETS=" dotnet-xunit@2.3.1 libuv@1.9.0 @@ -280,7 +280,7 @@ HOMEPAGE="https://github.com/PowerShell/platyPS/" if [[ "${PV}" == *9999* ]] ; then inherit git-r3 - EGIT_REPO_URI="https://github.com/PowerShell/${APP_PN}.git" + EGIT_REPO_URI="https://github.com/PowerShell/${APP_PN}" else SRC_URI="https://github.com/PowerShell/${APP_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" @@ -293,6 +293,7 @@ SRC_URI+=" ${NUGET_URIS} " LICENSE="MIT" SLOT="${PV}" +RESTRICT="test" RDEPEND=" virtual/pwsh:* @@ -345,9 +346,13 @@ src_compile() { edo pwsh -NoProfile -NonInteractive ./build.ps1 "${ps1opts[@]}" } +src_test() { + # dotnet-pkg_src_test + : +} + src_install() { insinto "/usr/share/GentooPowerShell/Modules/${APP_PN}/${PV}" doins -r "./out/${APP_PN}/." - einstalldocs } diff --git a/app-shells/platyps/platyps-1.0.1.ebuild b/app-shells/platyps/platyps-1.0.1.ebuild new file mode 100644 index 000000000000..307db143edd3 --- /dev/null +++ b/app-shells/platyps/platyps-1.0.1.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +APP_PN="platyPS" + +DOTNET_PKG_COMPAT="10.0" +NUGETS=" +markdig.signed@0.33.0 +microsoft.csharp@4.7.0 +microsoft.netframework.referenceassemblies.net472@1.0.3 +microsoft.netframework.referenceassemblies@1.0.3 +powershellstandard.library@5.1.1 +system.buffers@4.5.1 +system.memory@4.5.4 +system.numerics.vectors@4.5.0 +system.runtime.compilerservices.unsafe@4.5.3 +yamldotnet@15.1.6 +" + +inherit dotnet-pkg check-reqs edo readme.gentoo-r1 + +DESCRIPTION="Generate PowerShell external help files from Markdown" +HOMEPAGE="https://github.com/PowerShell/platyPS/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/PowerShell/${APP_PN}" +else + SRC_URI="https://github.com/PowerShell/${APP_PN}/archive/refs/tags/v${PV}.tar.gz + -> ${P}.gh.tar.gz" + S="${WORKDIR}/${APP_PN}-${PV}" + + KEYWORDS="~amd64" +fi + +SRC_URI+=" ${NUGET_URIS} " + +LICENSE="MIT" +SLOT="${PV}" + +RDEPEND=" + virtual/pwsh:* +" +BDEPEND=" + ${RDEPEND} +" + +CHECKREQS_DISK_BUILD="1G" +DOTNET_PKG_PROJECTS=( src/Microsoft.PowerShell.PlatyPS.csproj ) + +DOCS=( CHANGELOG.md README.md ) + +pkg_setup() { + check-reqs_pkg_setup + dotnet-pkg_pkg_setup +} + +src_unpack() { + dotnet-pkg_src_unpack + + if [[ -n "${EGIT_REPO_URI}" ]] ; then + git-r3_src_unpack + fi +} + +src_prepare() { + dotnet-pkg_src_prepare + + cat << EOF > NuGet.config || die +<?xml version="1.0" encoding="utf-8"?> +<configuration> +<packageSources> +<clear /> +<add key="nuget" value="${NUGET_PACKAGES}" /> +</packageSources> +</configuration> +EOF +} + +src_compile() { + dotnet-pkg_src_compile + + local -a ps1opts=( + -Configuration "${DOTNET_PKG_CONFIGURATION}" + ) + edo pwsh -NoProfile -NonInteractive ./build.ps1 "${ps1opts[@]}" +} + +src_install() { + insinto "/usr/share/GentooPowerShell/Modules/Microsoft.PowerShell.PlatyPS/${PV}" + doins -r ./out/Microsoft.PowerShell.PlatyPS/. + einstalldocs + + local DOC_CONTENTS="To import platPS use: + \n\tImport-Module -Force -Verbose Microsoft.PowerShell.PlatyPS" + readme.gentoo_create_doc +} + +pkg_postinst() { + readme.gentoo_print_elog +} diff --git a/app-shells/posh/Manifest b/app-shells/posh/Manifest index 1ffe53879a1e..ac752e68e033 100644 --- a/app-shells/posh/Manifest +++ b/app-shells/posh/Manifest @@ -1,2 +1 @@ -DIST posh-debian-0.14.3.tar.bz2 213735 BLAKE2B 70bbf21d80d9074ee48841d18d15f30d30c5cc7169c862eac873602f967cea1b43af61005c410b0269b1e8368203bd2afbe2a36e2435733e83f0445edd4be07c SHA512 0746463210c6b0c4ccd78285e05183551f08d9572725ce82bab9e2553c4b221c27635cc369d1bbfd3ff8bf4da04f571f76bee61eeca4250c32391f96fbe3967e DIST posh-debian-0.14.5.tar.bz2 214083 BLAKE2B 94e2efc4d972784662d36aef4aff824af5fc0631510f8869cf1b94d998faddc483837480e9583c053002e3f38db102b22939b692fb7deb147c8e2f5ba15a1e56 SHA512 b9a6b3d990dba07580e7a766d9b2e7dc9555a1b86bd9a29640afac32ec08f82adff7073d758721f2394f372f4ed800cb64ccf37ce4c6b87af11bf0b929238a59 diff --git a/app-shells/posh/posh-0.14.3.ebuild b/app-shells/posh/posh-0.14.3.ebuild deleted file mode 100644 index 23f0439c9d03..000000000000 --- a/app-shells/posh/posh-0.14.3.ebuild +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools - -MY_P=posh-debian-${PV} -DESCRIPTION="Reimplementation of Bourne shell based on pdksh" -HOMEPAGE="https://salsa.debian.org/clint/posh" -SRC_URI=" - https://salsa.debian.org/clint/posh/-/archive/debian/${PV}/${MY_P}.tar.bz2" -S=${WORKDIR}/${MY_P} - -LICENSE="GPL-2+ BSD public-domain" -SLOT="0" -KEYWORDS="amd64 ppc x86" - -src_prepare() { - default - eautoreconf -} - -src_configure() { - local myconf=( - --exec-prefix="${EPREFIX:-/}" - ) - econf "${myconf[@]}" -} diff --git a/app-shells/posh/posh-0.14.5.ebuild b/app-shells/posh/posh-0.14.5.ebuild index 513c1e7fb0e8..23f0439c9d03 100644 --- a/app-shells/posh/posh-0.14.5.ebuild +++ b/app-shells/posh/posh-0.14.5.ebuild @@ -14,7 +14,7 @@ S=${WORKDIR}/${MY_P} LICENSE="GPL-2+ BSD public-domain" SLOT="0" -KEYWORDS="~amd64 ~ppc ~x86" +KEYWORDS="amd64 ppc x86" src_prepare() { default diff --git a/app-shells/starship/starship-1.25.1.ebuild b/app-shells/starship/starship-1.25.1.ebuild index f7eeae59ebab..d6a38e76d9c1 100644 --- a/app-shells/starship/starship-1.25.1.ebuild +++ b/app-shells/starship/starship-1.25.1.ebuild @@ -19,7 +19,7 @@ LICENSE+=" ZLIB " SLOT="0" -KEYWORDS="~amd64 ~arm64" +KEYWORDS="amd64 arm64" BDEPEND="dev-build/cmake" diff --git a/app-shells/zsh/Manifest b/app-shells/zsh/Manifest index 5de3fde6a865..1cdef73d3620 100644 --- a/app-shells/zsh/Manifest +++ b/app-shells/zsh/Manifest @@ -1,6 +1,4 @@ DIST zsh-5.9-doc.tar.xz 3130444 BLAKE2B 96b635b438f8a90bc1f3c15c8a287ab392ba830e975e49b7f1c09d12de44c250dcf33d1d6dc93b58693839af2e57eb5c9d4e874ca08dd82fe876cb5ca26e6508 SHA512 5cc6abcdcfb4f5ad7bc4a31364ca49dfd87ae03e0082d89cc2ba1f00570f6757266ee60894ad31b562408de91494c22f177b414b03cb78c31d92328686be9860 -DIST zsh-5.9.0.3-test-doc.tar.xz 3215800 BLAKE2B 6db889717f9261a7155d4232954c9b4eac386312c0924a2aaa9a924eccfd6e759b9b04914f7c9efca345555bb074d6e7c2783eb5c119b8bfcec45da757f36b86 SHA512 64fd5ae5d50480cfb34c70c718856f1d29ff49f717743170175ea211dadde84724d0e4d206af1d252723f41d8166112dc487ff5e464859f6b0655c51aad3e8eb -DIST zsh-5.9.0.3-test.tar.xz 3454540 BLAKE2B 9015a8ac83421239c306d2c3685c3acf7c1ec577460fc6b9af39ef9e054a264c3a2bf98ea7d8bf6d026a5ee6b3dfee8b929d08d07a623b9dcde0f5299754bfba SHA512 9a4f3af9ec42e3a9e406138966f448ab451c1577e888d59a04c51d85cc105eb6c79741aa7cdb401ebd1c5a6f8e698453b3770eefe4b8d4f8a255d99668da47b4 DIST zsh-5.9.1-doc.tar.xz 3080816 BLAKE2B 19a604c68444d9d1332aa27f261849cadc8b9833f587c17c334538eaee2897199b520e55a45bb355cf4702c8ed1aba484a892c055239d77643326efc7e4e0338 SHA512 4513672a49609e1bac3b73956b05a3b40c1755e59dbd9d4109a2b8dde475e8dcbd95df31ad6840697a99155f359723130d1ea0e7eac017663fa467d00d5bb64a DIST zsh-5.9.1-doc.tar.xz.asc 525 BLAKE2B 5c71b5475afbb8f9660ec1ad57adc087ed1aa633459cafd759eae9a6f5646bb949c9e9aecdf9c35ff1ca0bc3816d83944c43858e82a14539eb6eb4c9116c19d1 SHA512 6d66ac5b791a19a4e79a8c51f68e642465c6136c340624dd6afbcf67fc65c453ea01d42784c1c70d80f861c1ba33c92840a817cda3edeeafd333845aab396a5f DIST zsh-5.9.1.tar.xz 3414612 BLAKE2B 681864a98a3180ac78e1d38efba68b2bb21634d0c97552fe1ae325bd9b9f8de6e48e629bc3a4e2b484cfac1e19170ee8c9103f92c74f88a2b5f46900f97964ed SHA512 e16c13559262577e725b290c35ce6598d58c2acdd204eac619e8ed9b6a918bce39bfbf9d3ef4c5eb877af7d3279c8a4b15439eba6a38c4e4d47d5555d5f79872 diff --git a/app-shells/zsh/files/zprofile-5 b/app-shells/zsh/files/zprofile-5 deleted file mode 100644 index a89fddea48af..000000000000 --- a/app-shells/zsh/files/zprofile-5 +++ /dev/null @@ -1,26 +0,0 @@ -# /etc/zsh/zprofile - -# Load environment settings from profile.env, which is created by -# env-update from the files in /etc/env.d -if [[ -e /etc/profile.env ]] ; then - . /etc/profile.env -fi - -# You should override these in your ~/.zprofile (or equivalent) for per-user -# settings. For system defaults, you can add a new file in /etc/profile.d/. -export EDITOR=${EDITOR:-/bin/nano} -export PAGER=${PAGER:-/usr/bin/less} - -# 077 would be more secure, but 022 is generally quite realistic -umask 022 - -unset ROOTPATH - -shopts=$- -setopt nullglob -for sh in /etc/profile.d/*.sh ; do - [[ -r "${sh}" ]] && . "${sh}" -done -unsetopt nullglob -set -$shopts -unset sh shopts diff --git a/app-shells/zsh/files/zsh-5.9.0.3-musl-fpurge.patch b/app-shells/zsh/files/zsh-5.9.0.3-musl-fpurge.patch deleted file mode 100644 index 146ff4e0e3e2..000000000000 --- a/app-shells/zsh/files/zsh-5.9.0.3-musl-fpurge.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 31d360646d7c1866a6ca1ee4b452b2c19940d028 Mon Sep 17 00:00:00 2001 -From: Mike Gilbert <floppym@gentoo.org> -Date: Wed, 15 Oct 2025 14:26:43 -0400 -Subject: [PATCH] Check for fpurge declaration - -musl libc defines fpurge, but does not declare it in stdio.h. -It seems to be unnecessary to call fpurge on musl. - -Bug: https://bugs.gentoo.org/963567 ---- - Src/utils.c | 2 +- - configure.ac | 5 ++++- - 2 files changed, 5 insertions(+), 2 deletions(-) - -diff --git a/Src/utils.c b/Src/utils.c -index 4ea7b8e93..5e41b712b 100644 ---- a/Src/utils.c -+++ b/Src/utils.c -@@ -2022,7 +2022,7 @@ redup(int x, int y) - { - int ret = y; - --#ifdef HAVE_FPURGE -+#if HAVE_DECL_FPURGE - /* Make sure buffers are cleared when changing descriptor for a - * FILE object. No fflush() here because the only way anything - * can legitimately be left in the buffer is when an error has -diff --git a/configure.ac b/configure.ac -index 13895bb1d..1f035bc0d 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -1250,7 +1250,7 @@ AC_CHECK_FUNCS(strftime strptime mktime timelocal \ - select poll \ - readlink faccessx fchdir ftruncate \ - fstat lstat lchown fchown fchmod \ -- fpurge fseeko ftello \ -+ fseeko ftello \ - mkfifo _mktemp mkstemp \ - waitpid wait3 \ - sigqueue \ -@@ -1292,6 +1292,9 @@ AC_CHECK_FUNCS(strftime strptime mktime timelocal \ - setutxent getutxent endutxent getutent) - AC_FUNC_STRCOLL - -+# fpurge exists on musl, but is undeclared in stdio.h and isn't actually required -+AC_CHECK_DECLS([fpurge]) -+ - # isinf() and isnan() can exist as either functions or macros. - AH_TEMPLATE([HAVE_ISINF], - [Define to 1 if you have the `isinf' macro or function.]) --- -2.51.0 - diff --git a/app-shells/zsh/zsh-5.9-r6.ebuild b/app-shells/zsh/zsh-5.9-r6.ebuild deleted file mode 100644 index 251b75d01ce9..000000000000 --- a/app-shells/zsh/zsh-5.9-r6.ebuild +++ /dev/null @@ -1,245 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools flag-o-matic prefix - -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" - -SRC_URI="https://www.zsh.org/pub/${P}.tar.xz - https://www.zsh.org/pub/old/${P}.tar.xz - https://downloads.sourceforge.net/${PN}/${P}.tar.xz - doc? ( - https://www.zsh.org/pub/${P}-doc.tar.xz - https://downloads.sourceforge.net/${PN}/${P}-doc.tar.xz - )" - -DESCRIPTION="UNIX Shell similar to the Korn shell" -HOMEPAGE="https://www.zsh.org/" - -LICENSE="ZSH gdbm? ( GPL-2 )" -SLOT="0" -IUSE="caps debug doc examples gdbm maildir pcre static valgrind" - -# Next release should use pcre2: https://github.com/zsh-users/zsh/commit/b62e911341c8ec7446378b477c47da4256053dc0 -RDEPEND=" - >=sys-libs/ncurses-5.1:0= - static? ( >=sys-libs/ncurses-5.7-r4:0=[static-libs] ) - caps? ( sys-libs/libcap ) - pcre? ( - >=dev-libs/libpcre-3.9 - static? ( >=dev-libs/libpcre-3.9[static-libs] ) - ) - gdbm? ( - sys-libs/gdbm:= - static? ( sys-libs/gdbm:=[static-libs] ) - ) -" -DEPEND="sys-apps/groff - valgrind? ( dev-debug/valgrind ) - ${RDEPEND}" -PDEPEND=" - examples? ( app-doc/zsh-lovers ) -" -if [[ ${PV} == *9999 ]] ; then - DEPEND+=" app-text/yodl - doc? ( - sys-apps/texinfo - app-text/texi2html - virtual/latex-base - )" -fi - -PATCHES=( - # Add openrc specific options for init.d completion - "${FILESDIR}"/${PN}-5.3-init.d-gentoo.diff - # Please refer gentoo bug #833981 - "${FILESDIR}"/${PN}-5.9-musl-V09datetime-test-fix.patch - # bug #869539 - "${FILESDIR}"/${PN}-5.9-clang-15-configure.patch - "${FILESDIR}"/${PN}-5.9-do-not-use-egrep-in-tests.patch - # bug #919001 - "${FILESDIR}"/${PN}-5.9-c99.patch - "${FILESDIR}"/${PN}-5.9-relro.patch -) - -src_prepare() { - if [[ ${PV} != *9999 ]]; then - # fix zshall problem with soelim - ln -s Doc man1 || die - mv Doc/zshall.1 Doc/zshall.1.soelim || die - soelim Doc/zshall.1.soelim > Doc/zshall.1 || die - fi - - default - - hprefixify configure.ac - if [[ ${PV} == *9999 ]] ; then - sed -i "/^VERSION=/s@=.*@=${PV}@" Config/version.mk || die - fi - eautoreconf -} - -src_configure() { - local myconf=( - --bindir="${EPREFIX}"/bin - --libdir="${EPREFIX}"/usr/$(get_libdir) - --enable-etcdir="${EPREFIX}"/etc/zsh - --enable-runhelpdir="${EPREFIX}"/usr/share/zsh/${PV%_*}/help - --enable-fndir="${EPREFIX}"/usr/share/zsh/${PV%_*}/functions - --enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions - --enable-function-subdirs - --with-tcsetpgrp - --enable-multibyte - --with-term-lib='tinfow ncursesw' - $(use_enable maildir maildir-support) - $(use_enable pcre) - $(use_enable caps cap) - $(use_enable gdbm) - $(use_enable valgrind zsh-valgrind) - ) - - if use static ; then - myconf+=( --disable-dynamic ) - append-ldflags -static - fi - if use debug ; then - myconf+=( - --enable-zsh-debug - --enable-zsh-mem-debug - --enable-zsh-mem-warning - --enable-zsh-secure-free - --enable-zsh-hash-debug - ) - fi - - if [[ ${CHOST} == *-darwin* ]]; then - myconf+=( --enable-libs=-liconv ) - append-ldflags -Wl,-x - fi - - econf "${myconf[@]}" - - if use static ; then - # compile all modules statically, see Bug #27392 - # removed cap and curses because linking failes - sed -e "s,link=no,link=static,g" \ - -e "/^name=zsh\/cap/s,link=static,link=no," \ - -e "/^name=zsh\/curses/s,link=static,link=no," \ - -i "${S}"/config.modules || die - if ! use gdbm ; then - sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \ - "${S}"/config.modules || die - fi - fi -} - -src_compile() { - default - - if [[ ${PV} == *9999 ]] && use doc ; then - emake -C Doc everything - fi -} - -src_test() { - # Fixes tests A03quoting.ztst B03print.ztst on musl - # Please refer: - # https://www.zsh.org/mla/workers/2021/msg00805.html - # Test E02xtrace fails on musl, so we are removing it. - # Closes: https://bugs.gentoo.org/833981 - if use elibc_musl ; then - unset LC_ALL - unset LC_COLLATE - unset LC_NUMERIC - unset LC_MESSAGES - unset LANG - rm "${S}"/Test/E02xtrace.ztst || die - fi - - # Breaks tests if inherited from environment. - unset TMPPREFIX - - addpredict /dev/ptmx - local i - for i in C02cond.ztst V08zpty.ztst X02zlevi.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do - rm "${S}"/Test/${i} || die - done - emake check -} - -src_install() { - emake DESTDIR="${D}" install $(usex doc "install.info" "") - - insinto /etc/zsh - export PREFIX_QUOTE_CHAR='"' PREFIX_EXTRA_REGEX="/EUID/s,0,${EUID}," - newins "$(prefixify_ro "${FILESDIR}"/zprofile-5)" zprofile - - keepdir /usr/share/zsh/site-functions - insinto /usr/share/zsh/${PV%_*}/functions/Prompts - newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup - - local i - - # install miscellaneous scripts (bug #54520) - sed -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \ - -e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" \ - -i {Util,Misc}/* || die - for i in Util Misc ; do - insinto /usr/share/zsh/${PV%_*}/${i} - doins ${i}/* - done - - # install header files (bug #538684) - insinto /usr/include/zsh - doins config.h Src/*.epro - for i in Src/{zsh.mdh,*.h} ; do - sed -e 's@\.\./config\.h@config.h@' \ - -e 's@#\(\s*\)include "\([^"]\+\)"@#\1include <zsh/\2>@' \ - -i "${i}" - doins "${i}" - done - - dodoc ChangeLog* META-FAQ NEWS README config.modules - - if use doc ; then - pushd "${WORKDIR}/${PN}-${PV%_*}" >/dev/null - dodoc Doc/zsh.{dvi,pdf} - docinto html - dodoc Doc/*.html - popd >/dev/null - fi - - docinto StartupFiles - dodoc StartupFiles/z* -} - -pkg_postinst() { - if [[ -z ${REPLACING_VERSIONS} ]] ; then - echo - elog "If you want to enable Portage completions and Gentoo prompt," - elog "emerge app-shells/gentoo-zsh-completions and add" - elog " autoload -U compinit promptinit" - elog " compinit" - elog " promptinit; prompt gentoo" - elog "to your ~/.zshrc" - echo - elog "Also, if you want to enable cache for the completions, add" - elog " zstyle ':completion::complete:*' use-cache 1" - elog "to your ~/.zshrc" - echo - elog "Note that a system zprofile startup file is installed. This will override" - elog "PATH and possibly other variables that a user may set in ~/.zshenv." - elog "Custom PATH settings and similar overridden variables can be moved to ~/.zprofile" - elog "or other user startup files that are sourced after the system zprofile." - echo - elog "If PATH must be set in ~/.zshenv to affect things like non-login ssh shells," - elog "one method is to use a separate path-setting file that is conditionally sourced" - elog "in ~/.zshenv and also sourced from ~/.zprofile. For more information, see the" - elog "zshenv example in ${EROOT}/usr/share/doc/${PF}/StartupFiles/." - echo - elog "See https://wiki.gentoo.org/wiki/Zsh/HOWTO for more introduction documentation." - echo - fi -} diff --git a/app-shells/zsh/zsh-5.9-r7.ebuild b/app-shells/zsh/zsh-5.9-r7.ebuild index 5e3f8535f148..e9920eb7cc8a 100644 --- a/app-shells/zsh/zsh-5.9-r7.ebuild +++ b/app-shells/zsh/zsh-5.9-r7.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2025 Gentoo Authors +# Copyright 1999-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit autotools flag-o-matic prefix -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos ~x64-solaris" SRC_URI="https://www.zsh.org/pub/${P}.tar.xz https://www.zsh.org/pub/old/${P}.tar.xz diff --git a/app-shells/zsh/zsh-5.9.0.3-r2.ebuild b/app-shells/zsh/zsh-5.9.0.3-r2.ebuild deleted file mode 100644 index 9d0cfcc6e0ea..000000000000 --- a/app-shells/zsh/zsh-5.9.0.3-r2.ebuild +++ /dev/null @@ -1,237 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -inherit autotools flag-o-matic prefix - -if [[ ${PV} == *9999 ]]; then - inherit git-r3 - EGIT_REPO_URI="https://git.code.sf.net/p/zsh/code" -else - MY_PN="zsh-test" - SRC_URI="https://downloads.sourceforge.net/zsh/zsh-test/${PV}-test/${P}-test.tar.xz - doc? ( https://downloads.sourceforge.net/zsh/zsh-test/${P}-test-doc.tar.xz )" - S="${WORKDIR}/${P}-test" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" -fi - -DESCRIPTION="UNIX Shell similar to the Korn shell" -HOMEPAGE="https://www.zsh.org/" - -LICENSE="ZSH gdbm? ( GPL-2 )" -SLOT="0" -IUSE="caps debug doc examples gdbm maildir pcre static valgrind" - -RDEPEND=" - >=sys-libs/ncurses-5.1:0= - static? ( >=sys-libs/ncurses-5.7-r4:0=[static-libs] ) - caps? ( sys-libs/libcap ) - pcre? ( - dev-libs/libpcre2 - static? ( dev-libs/libpcre2[static-libs] ) - ) - gdbm? ( - sys-libs/gdbm:= - static? ( sys-libs/gdbm:=[static-libs] ) - ) -" -DEPEND="${RDEPEND} - valgrind? ( dev-debug/valgrind ) -" -PDEPEND=" - examples? ( app-doc/zsh-lovers ) -" -BDEPEND=" - sys-apps/groff -" -if [[ ${PV} == *9999 ]] ; then - BDEPEND+=" - app-text/yodl - doc? ( virtual/texi2dvi ) - " -fi - -PATCHES=( - # Add openrc specific options for init.d completion - "${FILESDIR}"/${PN}-5.3-init.d-gentoo.diff - "${FILESDIR}"/zsh-5.9.0.3-musl-fpurge.patch -) - -src_prepare() { - if [[ ${PV} != *9999 ]]; then - # fix zshall problem with soelim - ln -s Doc man1 || die - mv Doc/zshall.1 Doc/zshall.1.soelim || die - soelim Doc/zshall.1.soelim > Doc/zshall.1 || die - fi - - default - - hprefixify configure.ac - if [[ ${PV} == *9999 ]] ; then - sed -i "/^VERSION=/s@=.*@=${PV}@" Config/version.mk || die - fi - eautoreconf -} - -src_configure() { - local myconf=( - --bindir="${EPREFIX}"/bin - --libdir="${EPREFIX}"/usr/$(get_libdir) - --enable-etcdir="${EPREFIX}"/etc/zsh - --enable-runhelpdir="${EPREFIX}"/usr/share/zsh/${PV%_*}/help - --enable-fndir="${EPREFIX}"/usr/share/zsh/${PV%_*}/functions - --enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions - --enable-function-subdirs - --enable-multibyte - --with-term-lib='tinfow ncursesw' - $(use_enable maildir maildir-support) - $(use_enable pcre) - $(use_enable caps cap) - $(use_enable gdbm) - $(use_enable valgrind zsh-valgrind) - ) - - if use static ; then - myconf+=( --disable-dynamic ) - append-ldflags -static - fi - if use debug ; then - myconf+=( - --enable-zsh-debug - --enable-zsh-mem-debug - --enable-zsh-mem-warning - --enable-zsh-secure-free - --enable-zsh-hash-debug - ) - fi - - if [[ ${CHOST} == *-darwin* ]]; then - myconf+=( --enable-libs=-liconv ) - append-ldflags -Wl,-x - fi - - econf "${myconf[@]}" - - if use static ; then - # compile all modules statically, see Bug #27392 - # removed cap and curses because linking failes - sed -e "s,link=no,link=static,g" \ - -e "/^name=zsh\/cap/s,link=static,link=no," \ - -e "/^name=zsh\/curses/s,link=static,link=no," \ - -i "${S}"/config.modules || die - if ! use gdbm ; then - sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \ - "${S}"/config.modules || die - fi - fi -} - -src_compile() { - default - - if [[ ${PV} == *9999 ]] && use doc ; then - emake -C Doc everything - fi -} - -src_test() { - # Fixes tests A03quoting.ztst B03print.ztst on musl - # Please refer: - # https://www.zsh.org/mla/workers/2021/msg00805.html - # Test E02xtrace fails on musl, so we are removing it. - # Closes: https://bugs.gentoo.org/833981 - if use elibc_musl ; then - unset LC_ALL - unset LC_COLLATE - unset LC_NUMERIC - unset LC_MESSAGES - unset LANG - rm "${S}"/Test/E02xtrace.ztst || die - fi - - # Breaks tests if inherited from environment. - unset TMPPREFIX - - addpredict /dev/ptmx - local i - for i in C02cond.ztst V08zpty.ztst X02zlevi.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do - rm "${S}"/Test/${i} || die - done - emake check -} - -src_install() { - emake DESTDIR="${D}" install - if use doc; then - emake -C Doc DESTDIR="${D}" install.html install.html - fi - - insinto /etc/zsh - export PREFIX_QUOTE_CHAR='"' PREFIX_EXTRA_REGEX="/EUID/s,0,${EUID}," - newins "$(prefixify_ro "${FILESDIR}"/zprofile-6)" zprofile - - keepdir /usr/share/zsh/site-functions - insinto /usr/share/zsh/${PV%_*}/functions/Prompts - newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup - - local i - - # install miscellaneous scripts (bug #54520) - sed -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \ - -e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" \ - -i {Util,Misc}/* || die - for i in Util Misc ; do - insinto /usr/share/zsh/${PV%_*}/${i} - doins ${i}/* - done - - # install header files (bug #538684) - insinto /usr/include/zsh - doins config.h Src/*.epro - for i in Src/{zsh.mdh,*.h} ; do - sed -e 's@\.\./config\.h@config.h@' \ - -e 's@#\(\s*\)include "\([^"]\+\)"@#\1include <zsh/\2>@' \ - -i "${i}" - doins "${i}" - done - - dodoc ChangeLog* META-FAQ NEWS README config.modules - - if use doc; then - dodoc Doc/intro.{a4,us}.pdf Doc/zsh.{dvi,pdf} - fi - - docinto StartupFiles - dodoc StartupFiles/z* -} - -pkg_postinst() { - if [[ -z ${REPLACING_VERSIONS} ]] ; then - echo - elog "If you want to enable Portage completions and Gentoo prompt," - elog "emerge app-shells/gentoo-zsh-completions and add" - elog " autoload -U compinit promptinit" - elog " compinit" - elog " promptinit; prompt gentoo" - elog "to your ~/.zshrc" - echo - elog "Also, if you want to enable cache for the completions, add" - elog " zstyle ':completion::complete:*' use-cache 1" - elog "to your ~/.zshrc" - echo - elog "Note that a system zprofile startup file is installed. This will override" - elog "PATH and possibly other variables that a user may set in ~/.zshenv." - elog "Custom PATH settings and similar overridden variables can be moved to ~/.zprofile" - elog "or other user startup files that are sourced after the system zprofile." - echo - elog "If PATH must be set in ~/.zshenv to affect things like non-login ssh shells," - elog "one method is to use a separate path-setting file that is conditionally sourced" - elog "in ~/.zshenv and also sourced from ~/.zprofile. For more information, see the" - elog "zshenv example in ${EROOT}/usr/share/doc/${PF}/StartupFiles/." - echo - elog "See https://wiki.gentoo.org/wiki/Zsh/HOWTO for more introduction documentation." - echo - fi -} diff --git a/app-shells/zsh/zsh-5.9.1.ebuild b/app-shells/zsh/zsh-5.9.1.ebuild index c42ff68110ad..ba00d73f52ad 100644 --- a/app-shells/zsh/zsh-5.9.1.ebuild +++ b/app-shells/zsh/zsh-5.9.1.ebuild @@ -10,12 +10,13 @@ if [[ ${PV} == *9999 ]]; then EGIT_REPO_URI="https://git.code.sf.net/p/zsh/code" else inherit verify-sig + DIST_SITE="https://www.zsh.org/pub" SRC_URI=" - https://www.zsh.org/pub/${P}.tar.xz - doc? ( https://www.zsh.org/pub/${P}-doc.tar.xz ) - verify-sig? ( - https://www.zsh.org/pub/${P}.tar.xz.asc - doc? ( https://www.zsh.org/pub/${P}-doc.tar.xz.asc ) + ${DIST_SITE}/${P}.tar.xz + verify-sig? ( ${DIST_SITE}/${P}.tar.xz.asc ) + doc? ( + ${DIST_SITE}/${P}-doc.tar.xz + verify-sig? ( ${DIST_SITE}/${P}-doc.tar.xz.asc ) ) " KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" diff --git a/app-shells/zsh/zsh-9999.ebuild b/app-shells/zsh/zsh-9999.ebuild index c42ff68110ad..ba00d73f52ad 100644 --- a/app-shells/zsh/zsh-9999.ebuild +++ b/app-shells/zsh/zsh-9999.ebuild @@ -10,12 +10,13 @@ if [[ ${PV} == *9999 ]]; then EGIT_REPO_URI="https://git.code.sf.net/p/zsh/code" else inherit verify-sig + DIST_SITE="https://www.zsh.org/pub" SRC_URI=" - https://www.zsh.org/pub/${P}.tar.xz - doc? ( https://www.zsh.org/pub/${P}-doc.tar.xz ) - verify-sig? ( - https://www.zsh.org/pub/${P}.tar.xz.asc - doc? ( https://www.zsh.org/pub/${P}-doc.tar.xz.asc ) + ${DIST_SITE}/${P}.tar.xz + verify-sig? ( ${DIST_SITE}/${P}.tar.xz.asc ) + doc? ( + ${DIST_SITE}/${P}-doc.tar.xz + verify-sig? ( ${DIST_SITE}/${P}-doc.tar.xz.asc ) ) " KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" |
