summaryrefslogtreecommitdiff
path: root/app-shells/bash-completion
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-06-02 21:45:28 +0100
committerV3n3RiX <venerix@redcorelinux.org>2019-06-02 21:45:28 +0100
commit2018227e9344edb9da15fc6a4a8298086cc2aa77 (patch)
treec18e1c09e605e94e2a1e93345ad25746cc9e14b9 /app-shells/bash-completion
parent6f8038813c460b4f0572d5ef595cdfa94af3a94d (diff)
gentoo resync : 02.06.2019
Diffstat (limited to 'app-shells/bash-completion')
-rw-r--r--app-shells/bash-completion/Manifest8
-rw-r--r--app-shells/bash-completion/bash-completion-2.9-r1.ebuild157
-rw-r--r--app-shells/bash-completion/bash-completion-2.9.ebuild2
-rw-r--r--app-shells/bash-completion/bash-completion-9999.ebuild26
-rw-r--r--app-shells/bash-completion/metadata.xml6
5 files changed, 185 insertions, 14 deletions
diff --git a/app-shells/bash-completion/Manifest b/app-shells/bash-completion/Manifest
index a974014ddfb6..71aa438e7f58 100644
--- a/app-shells/bash-completion/Manifest
+++ b/app-shells/bash-completion/Manifest
@@ -3,8 +3,10 @@ DIST bash-completion-2.7.tar.xz 280048 BLAKE2B 88b09f451fd4e14daf8e139951a4b65aa
DIST bash-completion-2.8.tar.xz 286128 BLAKE2B a99faeb3c9ee2ea6d1cc9988e61951f4e688ac0b3c6837d1fd43381519fedf5f95167e8dbc166543b0235f3ac61d92af35eb8399efc0cd297a62849071dee5c7 SHA512 d839ef5a98811a2aade7ebdc0bc84c84a41c74db384f89913b06f3c25add1ba22528ac25392b19d27280685d258c74dcdc11247cbaae5b8d82f2c0b546abc268
DIST bash-completion-2.9.tar.xz 305788 BLAKE2B c8a05bbb16fb671d73025c2fc579f77569251974a57fa4125a8e0aebcbed4e50fc1a47b9743abab0264599ffdef30b33cb540c6c3ab0d8a3577c6dda95f622b6 SHA512 e864091196d670699bdb2af3fc40464788e79c932fa564afa7ba34a637aa1583db7dbceab0e7ba6718fac99e9fd2dfb03d1ee51d7cf279d925ad63f60401d7d5
DIST bashcomp-2.0.2.tar.gz 3625 BLAKE2B ebd835e23634e8a7491467ad66c53941763cea43bad75fe24982d3885be2d2ba132e5273a655fec34705224315d7a3f0248c030fb7685fc613ac4f489cde5bf5 SHA512 46bc1bcc32263135f44be68569459a409250dd2c81c18190735f11e13a26508e9d3cb91d24a8fe7b21bdea678347873b7ac1b67d5e8c78c8444011f85dfdcdce
+DIST bashcomp-2.0.3.tar.gz 3539 BLAKE2B 75304d144792cc7f6ad5455a05a65c33c646d6f7384d020a06a1fcf012cd51625a3dd0750ad539253453b1eede196c340286a1e81737f0835b5091609ba01295 SHA512 b2bd185ccbd4456939ccc731cc1983fcec2b9564a9920642a753fadd5d897fdb96b925ac1524657629d621d45b37d99076c8ae72511a827e96ff6c388d720008
EBUILD bash-completion-2.7-r3.ebuild 4109 BLAKE2B b19159a733eb34738622add375c11d71dad1b5bee4c16b3d7bf2b2d588757e0b412807601a3e9ab9a2bb9e1a796354d59f3fbe796f91577d7eb5368c499896f5 SHA512 2e91fc722b51b39cef6ba2892645cac41321d840e14d3774732084f6a091859d5ff01282e10a7ce1cc5ed89ed8e1473fe7afee551f0df4c1104b4d44dd7c770a
EBUILD bash-completion-2.8.ebuild 4057 BLAKE2B 09f82c80d498f02154d144730a7b8d2d4ddf254fe2e52d972bd1107d0ae3bdb583d161e04a3bd3c3a45d41b87c1bfbf187697d2789926e0af410dbb09cfefc9d SHA512 081ead91d74f818f4c3fdfeb3643fe55f744afa26730284b79242379d7358c957549efda8091cf108aaa5f8195d2fb3610474072a141eda1573d68121a7d7b23
-EBUILD bash-completion-2.9.ebuild 4704 BLAKE2B a9a7dcc93f15aaecb10909f1f82c107168be24fa3b717632f76ef90196cadf8ab163354cd137d85329ac219cfaa7b98551870ddddd6f497b251e78ed50cc3983 SHA512 73d473f2f811aba2e32f2498115506fe6cfed7dc055b012ea4a6c45a6ae9e516996eed097c89cd67fb102bffe0b6e9299dc74918c4ee6d2c554fb24df4b6f4f2
-EBUILD bash-completion-9999.ebuild 4421 BLAKE2B 8c597c1aefa2a578376111283516ed30731fec0f1ce499fadb60828bc272d0f16fd009275e9945583f22027ca56d749d111f8ec3ebee797b9d4a11805c40dab7 SHA512 e94c33b431069544d88b34b0729ed0057efb26f65faa5471e7c54e70699fd11aafd64e9c00b747ad19eedf8b7fd0b9dd3495e42e69b9875142765f789b2572ef
-MISC metadata.xml 1309 BLAKE2B db08060cd74841bd7220e688e251225ddaf59e4da737c08785e7c6ce83c2d40600fbe38e9b9449fb559ccb2d03b8c2368295b647ec2a52191429fe1d3d1c7470 SHA512 3ee23fb6cbee1e80a0c8fab13f7bb67bdad3292fa8ec187e306b00804a7bf709358c8c08eda4101a5f5baa408e0892aa94c07ae466b5beae4edc18055b1192ee
+EBUILD bash-completion-2.9-r1.ebuild 4816 BLAKE2B fb10aa20dcace7020a209d479aa2346bdbddb28eb73f3d7a7aeda1cbd02820b8e2ddbc63ecc46f7ea255aa1a442a4341ab4416a1b566fe99657827f3f1adeaa0 SHA512 62f99d0f540441b5e14c26de777e0c41b40c1bb8eb03faf194d93ffcd3923b0adf573512a2056544e44a798f9645b7cf30c6dc870ce6a8774aaea66e710fdf6d
+EBUILD bash-completion-2.9.ebuild 4699 BLAKE2B 9bb3a90bee16acb270a76a669e710c1c6095d07bb89803ff51668cf37e60809b31f58ba22c2d15b772292b3cfbddaaadcfdf843a8f503b772f7c5c7685607d98 SHA512 330b4679a4e98c39d14f25c02a25626fd216c65cce2fbc80b6dac894837e87028e448730f2bfdf63397349ec7525fcf3b96e6f67ccab47295cae271b95d3a299
+EBUILD bash-completion-9999.ebuild 4580 BLAKE2B d974f17d8526f30e9907d2f09ed6024f688e8829499a0069d042404752712e7e70b24182fb71a61acd9820c916b6af9c2bc785629959ca66e0491b8add77c9ce SHA512 1dadaf29fc2ca6c5f42a7eb954b060ad400ab4eac953a581d09d8412fd863343391e2c6f8ca31bad25595aecc2ba515c67ff04417b4c3e490d2a127cb77fb3f0
+MISC metadata.xml 1498 BLAKE2B ebfc4f05a48320d502076d9756cce9f0daf1a0c601ec491cdfb89538627f62c0613dd9e4db53c4791e094d6652e3c9a508003de3fa4f62a84396844c324325ef SHA512 6a83c672f45e7171d5b9959ac59c4e28bacb8ffdefa965288776603673396225b3bb01c149432edb3f901f04eaa39064bc8d813a35ce1e573231fd4b4570c62d
diff --git a/app-shells/bash-completion/bash-completion-2.9-r1.ebuild b/app-shells/bash-completion/bash-completion-2.9-r1.ebuild
new file mode 100644
index 000000000000..91aa3bb0061a
--- /dev/null
+++ b/app-shells/bash-completion/bash-completion-2.9-r1.ebuild
@@ -0,0 +1,157 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+BASHCOMP_P=bashcomp-2.0.3
+PYTHON_COMPAT=( python3_{5,6,7} )
+inherit bash-completion-r1 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/mgorny/bashcomp2/releases/download/v${BASHCOMP_P#*-}/${BASHCOMP_P}.tar.gz )"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+IUSE="+eselect test"
+RESTRICT="test"
+
+# completion collision with net-fs/mc
+RDEPEND=">=app-shells/bash-4.3_p30-r1:0
+ sys-apps/miscfiles
+ !app-eselect/eselect-bashcomp
+ !!net-fs/mc"
+DEPEND="app-arch/xz-utils
+ test? (
+ ${RDEPEND}
+ app-misc/dtach
+ dev-util/dejagnu
+ dev-tcltk/tcllib
+ $(python_gen_any_dep '
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+ ')
+ )"
+PDEPEND=">=app-shells/gentoo-bashcomp-20140911"
+
+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
+ )
+ if [[ ${ARCH} != *-fbsd && ${ARCH} != *-freebsd ]]; then
+ strip_completions+=(
+ freebsd-update kldload kldunload portinstall portsnap
+ pkg_deinstall pkg_delete pkg_info
+ )
+ 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
+}
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+python_check_deps() {
+ has_version "dev-python/pexpect[${PYTHON_USEDEP}]" &&
+ has_version "dev-python/pytest[${PYTHON_USEDEP}]"
+}
+
+src_prepare() {
+ use eselect &&
+ eapply "${WORKDIR}/${BASHCOMP_P}/bash-completion-blacklist-support.patch"
+ # Bug 543100, update bug 601194
+ eapply "${FILESDIR}/${PN}-2.1-escape-characters-r1.patch"
+ eapply_user
+}
+
+src_test() {
+ # Tests need an interactive shell, #477066
+ # idea stolen from:
+ # http://pkgs.fedoraproject.org/cgit/rpms/bash-completion.git/tree/bash-completion.spec
+
+ # real-time output of the log ;-)
+ touch "${T}/dtach-test.log" || die
+ tail -f "${T}/dtach-test.log" &
+ local tail_pid=${!}
+
+ # override the default expect timeout and buffer size to avoid tests
+ # failing randomly due to cold cache, busy system or just more output
+ # than upstream anticipated (they run tests on pristine docker
+ # installs of binary distros)
+ nonfatal dtach -N "${T}/dtach.sock" \
+ bash -c 'emake check RUNTESTFLAGS="OPT_TIMEOUT=300 OPT_BUFFER_SIZE=1000000" PYTESTFLAGS="-vv" \
+ &> "${T}"/dtach-test.log; echo ${?} > "${T}"/dtach-test.out'
+
+ kill "${tail_pid}"
+ [[ -f ${T}/dtach-test.out ]] || die "Unable to run tests"
+ [[ $(<"${T}"/dtach-test.out) == 0 ]] || die "Tests failed"
+}
+
+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
+ # fix missing aliases
+ bashcomp_alias tar bsdtar gtar star
+
+ dodoc AUTHORS CHANGES CONTRIBUTING.md README.md
+
+ # 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.9.ebuild b/app-shells/bash-completion/bash-completion-2.9.ebuild
index bef979856f82..0046eb1249db 100644
--- a/app-shells/bash-completion/bash-completion-2.9.ebuild
+++ b/app-shells/bash-completion/bash-completion-2.9.ebuild
@@ -15,7 +15,7 @@ SRC_URI="
LICENSE="GPL-2+"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~mips ppc ~ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris"
IUSE="test"
RESTRICT="test"
diff --git a/app-shells/bash-completion/bash-completion-9999.ebuild b/app-shells/bash-completion/bash-completion-9999.ebuild
index bd5e53f21aa0..ee27e7fcf8fe 100644
--- a/app-shells/bash-completion/bash-completion-9999.ebuild
+++ b/app-shells/bash-completion/bash-completion-9999.ebuild
@@ -3,19 +3,17 @@
EAPI=7
-BASHCOMP_P=bashcomp-2.0.2
PYTHON_COMPAT=( python3_{5,6,7} )
inherit autotools git-r3 python-any-r1
DESCRIPTION="Programmable Completion for bash"
HOMEPAGE="https://github.com/scop/bash-completion"
EGIT_REPO_URI="https://github.com/scop/bash-completion"
-SRC_URI="https://bitbucket.org/mgorny/bashcomp2/downloads/${BASHCOMP_P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS=""
-IUSE="test"
+IUSE="+eselect test"
RESTRICT="!test? ( test )"
# completion collision with net-fs/mc
@@ -23,7 +21,7 @@ RDEPEND=">=app-shells/bash-4.3_p30-r1:0
sys-apps/miscfiles
!app-eselect/eselect-bashcomp
!!net-fs/mc"
-DEPEND="app-arch/xz-utils
+DEPEND="
test? (
${RDEPEND}
app-misc/dtach
@@ -79,13 +77,21 @@ pkg_setup() {
}
src_unpack() {
- git-r3_src_unpack
- default
+ use eselect && git-r3_fetch https://github.com/mgorny/bashcomp2
+ git-r3_fetch
+
+ use eselect && git-r3_checkout https://github.com/mgorny/bashcomp2 \
+ "${WORKDIR}"/bashcomp2
+ git-r3_checkout
}
src_prepare() {
- eapply "${WORKDIR}/${BASHCOMP_P}/${PN}"-2.1_p*.patch
eapply_user
+ if use eselect; then
+ # generate and apply patch
+ emake -C "${WORKDIR}"/bashcomp2 bash-completion-blacklist-support.patch
+ eapply "${WORKDIR}"/bashcomp2/bash-completion-blacklist-support.patch
+ fi
eautoreconf
}
@@ -124,9 +130,9 @@ src_install() {
dodoc AUTHORS CHANGES CONTRIBUTING.md README.md
# install the eselect module
- insinto /usr/share/eselect/modules
- doins "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect"
- doman "${WORKDIR}/${BASHCOMP_P}/bashcomp.eselect.5"
+ use eselect &&
+ emake -C "${WORKDIR}"/bashcomp2 DESTDIR="${D}" \
+ PREFIX="${EPREFIX}/usr" install
}
pkg_postinst() {
diff --git a/app-shells/bash-completion/metadata.xml b/app-shells/bash-completion/metadata.xml
index 2bb3ef236242..159d6c88d62d 100644
--- a/app-shells/bash-completion/metadata.xml
+++ b/app-shells/bash-completion/metadata.xml
@@ -9,6 +9,12 @@
<email>shell-tools@gentoo.org</email>
<name>Gentoo Shell Tools Project</name>
</maintainer>
+ <use>
+ <flag name='eselect'>
+ Support blacklisting of completions via 'eselect bash-completion'.
+ This enables custom Gentoo patching of upstream completion loader.
+ </flag>
+ </use>
<longdescription>
Since v2.04, bash has allowed you to intelligently program and extend its
standard completion behavior to achieve complex command lines with just a