summaryrefslogtreecommitdiff
path: root/app-shells/bash-completion
diff options
context:
space:
mode:
Diffstat (limited to 'app-shells/bash-completion')
-rw-r--r--app-shells/bash-completion/Manifest5
-rw-r--r--app-shells/bash-completion/bash-completion-2.14.0-r1.ebuild188
-rw-r--r--app-shells/bash-completion/bash-completion-2.14.0.ebuild2
-rw-r--r--app-shells/bash-completion/bash-completion-9999.ebuild19
4 files changed, 207 insertions, 7 deletions
diff --git a/app-shells/bash-completion/Manifest b/app-shells/bash-completion/Manifest
index f5f8dba816e5..008c86a6d400 100644
--- a/app-shells/bash-completion/Manifest
+++ b/app-shells/bash-completion/Manifest
@@ -5,6 +5,7 @@ DIST bash-completion-2.14.0.tar.xz 428980 BLAKE2B c28ec0cd348a3954461f7a865823a3
DIST bashcomp-2.0.3.tar.gz 3539 BLAKE2B 75304d144792cc7f6ad5455a05a65c33c646d6f7384d020a06a1fcf012cd51625a3dd0750ad539253453b1eede196c340286a1e81737f0835b5091609ba01295 SHA512 b2bd185ccbd4456939ccc731cc1983fcec2b9564a9920642a753fadd5d897fdb96b925ac1524657629d621d45b37d99076c8ae72511a827e96ff6c388d720008
EBUILD bash-completion-2.11.ebuild 4048 BLAKE2B 177e6746e781a1743b28d4d523c934d6779c2dfab654d2d2ee280bd446004df315a775e8685f17c9db701f97619e4ba789cf2c84c245a05996d7decc90142d4c SHA512 f1a58ee868d4b44a29924650dcaeca20aebd05afce9f80da79bc562770b37a67f3d58c8f6d4488ba37c40e48f127173d7b194f39d33bdf40105f7040297679a8
EBUILD bash-completion-2.13.0-r1.ebuild 4882 BLAKE2B d6ab14e7f431b971d3220a2ff3c1152983df424d0c5a5468f803030b3af2d012dc711c98c863b5c6e58e04a464fbb91fa612890b848b35f8fc6ef5105c1e2cec SHA512 dd62efb394f9958d660a3f8277806c204cab3e762640318128798521a2341735f3dd84942452ed2f561541c5730a80a57464c1d3724da5f34472cfaec1b6f2ea
-EBUILD bash-completion-2.14.0.ebuild 4816 BLAKE2B 4763eae7f6d1196c3587b6f4fed07dfb5d137a3117550c05b6a79cb0ffdcd0bd89140fea2d88aa8a64ea697a1034f29af6aba93cd65def3a14b401afe0a589d7 SHA512 78e3f0c1342df4edf69dd3f42b8c92daa17e871511ab9d9301e0e839c0feee63889ba56134c109badff8ff3d62bbb57d29db827265c43c4a043de7839fc0a5c0
-EBUILD bash-completion-9999.ebuild 4844 BLAKE2B e5b211118d21a8d706f89ae7ab7f7cfba09978abf17acec6e6f4335f45f6784a9c951ee1506094a70db0f472bfc3190360d5557afbc763d8739fa15a048ef7ef SHA512 5ca599b903108fe07d62f8691501c0ba5fc6b2d38b3e1367e73e95d23c8908a15a37c498d74621ded9a50eccf58f05a2dac8b51b468eeb59d5e78dcf850e58fb
+EBUILD bash-completion-2.14.0-r1.ebuild 5117 BLAKE2B 05c9000145f2c71e659fa1f4d52a94b173d0dd517d3357e2abe4a38e6731c913b249a475c4ba9139814d156a44fe076d0d648b5fc375b0e188e119bdd3cacde3 SHA512 6df17c92462cd95af10df22f93ac06c1c18210b560ee7ea4acdca1d8710ab15d44b8f68146ba24bec9ae6eb1fe23a66fc86e4439a3b106842601b2ccc5f75313
+EBUILD bash-completion-2.14.0.ebuild 4814 BLAKE2B 3d4736024841a73c7e15f16ce4d0cee37d6008d728e847d18a4f4d4e7557ec0d80d61337697e582d6f5690fa3e78097a11587610ffc3626acec48a03f044451b SHA512 92a26d809674a2754119cfa07a1914af42bb644624e30a2aaf1e9bec311bc725556b7c38533d91680989b658b314f49403e844c0a23ec53a669d6f63c6fd5496
+EBUILD bash-completion-9999.ebuild 5071 BLAKE2B be0e74b1eac5bf91867e3d34a4d8371b987a3ce72d126c59b31feddd1566b1b582d75584e1ebfe0df468803cb2d2c78f28a074ee17db2fd1bc453639d5020c44 SHA512 db93c9f68a95feb334b321963d505547320d248a6aec7c920544bc6db3f1c5919b007542818094fb3c404cbed6ebe54ca217d6722412b1aa6c0d9389e85fddfb
MISC metadata.xml 1436 BLAKE2B a01cee2abf1c4bc38ed6fe464f3daf43f8cf441a2a70f74b20bad79e37183a311326a863680d6939f18f8adebb9976861de897df272ab3cc7448cafbcb87f4b3 SHA512 f1b1af3f696ed159b8e1f728b51d651ac66ff849ee3bb37d949bc09e3be47698ea052ed48826edf4341d87835b3b54482153ca4fa3c299a5602eaec5f0cd780b
diff --git a/app-shells/bash-completion/bash-completion-2.14.0-r1.ebuild b/app-shells/bash-completion/bash-completion-2.14.0-r1.ebuild
new file mode 100644
index 000000000000..7878ba323bf0
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.14.0-r1.ebuild
@@ -0,0 +1,188 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+BASHCOMP_P=bashcomp-2.0.3
+PYTHON_COMPAT=( python3_{10..12} )
+
+inherit python-any-r1
+
+DESCRIPTION="Programmable Completion for bash"
+HOMEPAGE="https://github.com/scop/bash-completion"
+SRC_URI="
+ https://github.com/scop/bash-completion/releases/download/${PV}/${P}.tar.xz
+ eselect? (
+ https://github.com/projg2/bashcomp2/releases/download/v${BASHCOMP_P#*-}/${BASHCOMP_P}.tar.gz
+ )
+"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="+eselect test"
+RESTRICT="!test? ( test )"
+
+# completion collision with net-fs/mc
+RDEPEND="
+ >=app-shells/bash-4.3_p30-r1:0
+ sys-apps/miscfiles
+ !<app-text/tree-2.1.1-r1
+ !!net-fs/mc
+"
+BDEPEND="
+ test? (
+ ${RDEPEND}
+ $(python_gen_any_dep '
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ ')
+ )
+"
+PDEPEND="
+ >=app-shells/gentoo-bashcomp-20140911
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.14.0-optimize-kernel-modules.patch
+)
+
+strip_completions() {
+ # Remove unwanted completions.
+ local strip_completions=(
+ # Slackware package stuff, quite generic names cause collisions
+ # (e.g. with sys-apps/pacman)
+ explodepkg installpkg makepkg pkgtool removepkg upgradepkg
+
+ # Debian/Red Hat network stuff
+ ifdown ifup ifquery ifstatus
+
+ # Installed in app-editors/vim-core
+ xxd
+
+ # Now-dead symlinks to deprecated completions
+ hd ncal
+
+ # FreeBSD
+ freebsd-update kldload kldunload portinstall portsnap
+ pkg_deinstall pkg_delete pkg_info
+
+ # For GNU mailman, which isn't packaged. If mailman isn't installed,
+ # it triggers a QA warning.
+ arch
+ )
+
+ if [[ ${CHOST} != *solaris* ]]; then
+ # Triggers QA warning since it only defines a completion on Solaris,
+ # to avoid defining a bad one on macOS.
+ strip_completions+=(pkgutil)
+ fi
+
+ local file
+ for file in "${strip_completions[@]}"; do
+ rm "${ED}"/usr/share/bash-completion/completions/${file} ||
+ die "stripping ${file} failed"
+ done
+
+ # remove deprecated completions (moved to other packages)
+ rm "${ED}"/usr/share/bash-completion/completions/_* || die
+}
+
+python_check_deps() {
+ python_has_version "dev-python/pexpect[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" &&
+ python_has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]"
+}
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ if use eselect; then
+ eapply "${WORKDIR}/${BASHCOMP_P}/bash-completion-blacklist-support.patch"
+ fi
+
+ default
+}
+
+src_test() {
+ local EPYTEST_DESELECT=(
+ # redhat-specific, we strip these completions
+ test/t/test_if{down,up}.py
+ # not available for icedtea
+ test/t/test_javaws.py
+ # TODO
+ test/t/test_vi.py::TestVi::test_2
+ test/t/test_xmlwf.py::TestXmlwf::test_2 #bug 886159
+ test/t/test_xrandr.py::TestXrandr::test_output_filter
+ )
+ local EPYTEST_IGNORE=(
+ # stupid test that async tests work
+ test/fixtures/pytest/test_async.py
+ )
+ local EPYTEST_XDIST=1
+
+ # portage's HOME override breaks tests
+ local -x HOME=$(unset HOME; echo ~)
+ addpredict "${HOME}"
+ # used in pytest tests
+ local -x NETWORK=none
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=xdist.plugin
+ emake -C completions check
+ epytest
+}
+
+src_install() {
+ # work-around race conditions, bug #526996
+ mkdir -p "${ED}"/usr/share/bash-completion/{completions,helpers} || die
+
+ emake DESTDIR="${D}" profiledir="${EPREFIX}"/etc/bash/bashrc.d install
+
+ strip_completions
+
+ dodoc AUTHORS CHANGELOG.md CONTRIBUTING.md README.md
+
+ # install the python completions for all targets, bug #622892
+ local TARGET
+ for TARGET in "${PYTHON_COMPAT[@]}"; do
+ if [[ ! -e "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.} ]]; then
+ dosym python "${ED}"/usr/share/bash-completion/completions/${TARGET/_/.}
+ fi
+ done
+
+ # install the eselect module
+ if use eselect; then
+ insinto /usr/share/eselect/modules
+ doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
+ doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
+ fi
+}
+
+pkg_postinst() {
+ local v
+ for v in ${REPLACING_VERSIONS}; do
+ if ver_test "${v}" -lt 2.1-r90; then
+ ewarn "For bash-completion autoloader to work, all completions need to"
+ ewarn "be installed in /usr/share/bash-completion/completions. You may"
+ ewarn "need to rebuild packages that installed completions in the old"
+ ewarn "location. You can do this using:"
+ ewarn
+ ewarn "$ find ${EPREFIX}/usr/share/bash-completion -maxdepth 1 -type f '!' -name 'bash_completion' -exec emerge -1v {} +"
+ ewarn
+ ewarn "After the rebuild, you should remove the old setup symlinks:"
+ ewarn
+ ewarn "$ find ${EPREFIX}/etc/bash_completion.d -type l -delete"
+ fi
+ done
+
+ if has_version 'app-shells/zsh'; then
+ elog
+ elog "If you are interested in using the provided bash completion functions with"
+ elog "zsh, valuable tips on the effective use of bashcompinit are available:"
+ elog " http://www.zsh.org/mla/workers/2003/msg00046.html"
+ elog
+ fi
+}
diff --git a/app-shells/bash-completion/bash-completion-2.14.0.ebuild b/app-shells/bash-completion/bash-completion-2.14.0.ebuild
index 99221ed4ec32..c2afa2872829 100644
--- a/app-shells/bash-completion/bash-completion-2.14.0.ebuild
+++ b/app-shells/bash-completion/bash-completion-2.14.0.ebuild
@@ -19,7 +19,7 @@ SRC_URI="
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
IUSE="+eselect test"
RESTRICT="!test? ( test )"
diff --git a/app-shells/bash-completion/bash-completion-9999.ebuild b/app-shells/bash-completion/bash-completion-9999.ebuild
index 322f3a72d214..0cb1ec461db8 100644
--- a/app-shells/bash-completion/bash-completion-9999.ebuild
+++ b/app-shells/bash-completion/bash-completion-9999.ebuild
@@ -29,7 +29,6 @@ BDEPEND="
$(python_gen_any_dep '
dev-python/pexpect[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
- dev-python/pytest-forked[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
')
)
@@ -38,6 +37,10 @@ PDEPEND="
>=app-shells/gentoo-bashcomp-20140911
"
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.14.0-optimize-kernel-modules.patch
+)
+
strip_completions() {
# Remove unwanted completions.
local strip_completions=(
@@ -57,8 +60,17 @@ strip_completions() {
# FreeBSD
freebsd-update kldload kldunload portinstall portsnap
pkg_deinstall pkg_delete pkg_info
+
+ # For GNU mailman, which isn't packaged. If mailman isn't installed,
+ # it triggers a QA warning.
)
+ if [[ ${CHOST} = *solaris* ]]; then
+ # Triggers QA warning since it only defines a completion on Solaris,
+ # to avoid defining a bad one on macOS.
+ strip_completions+=(pkgutil)
+ fi
+
local file
for file in "${strip_completions[@]}"; do
rm "${ED}"/usr/share/bash-completion/completions/${file} ||
@@ -72,7 +84,6 @@ strip_completions() {
python_check_deps() {
python_has_version "dev-python/pexpect[${PYTHON_USEDEP}]" &&
python_has_version "dev-python/pytest[${PYTHON_USEDEP}]" &&
- python_has_version "dev-python/pytest-forked[${PYTHON_USEDEP}]" &&
python_has_version "dev-python/pytest-xdist[${PYTHON_USEDEP}]"
}
@@ -96,7 +107,7 @@ src_prepare() {
eapply "${WORKDIR}"/bashcomp2/bash-completion-blacklist-support.patch
fi
- eapply_user
+ default
eautoreconf
}
@@ -123,7 +134,7 @@ src_test() {
# used in pytest tests
local -x NETWORK=none
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=xdist.plugin,pytest_forked
+ local -x PYTEST_PLUGINS=xdist.plugin
emake -C completions check
epytest
}