Summary: | bash-completion-r1.eclass - add function to retrieve bashcompletion dir | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Alexander Tsoy <alexander> |
Component: | Eclasses | Assignee: | Michał Górny <mgorny> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | eselect, mgorny |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | http://thread.gmane.org/gmane.linux.gentoo.devel/85258 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 469892 |
Description
Alexander Tsoy
2013-05-14 16:45:08 UTC
AFAIU ulm is against introducing such a function. Well, I simply don't understand the rationale for it. Why would we need a function for something that's unlikely to ever change? (In reply to comment #2) > Well, I simply don't understand the rationale for it. Why would we need a > function for something that's unlikely to ever change? Well, one reason is that the 'ever' we're talking about is coming up in big steps. Not that I think it's the best solution but possibly one allowing us to switch while controlling it. Yes. How an upgrade to bash-completion-2* will be handled? (In reply to comment #0) > The default completion dir for >=bash-completion-2 is > "/usr/share/bash-completion/completions" Hmm.. It seems this dir is also default for bash-completion-1*, but ebuilds completely ignoring build system and install everything using doins(). Please ignore my previous comment. Just checked RHEL5, RHEL6 and Debian 6. RHEL 5/6: completions installed in /usr/share/bash-completion, bash-completion version 1.3 Debian 6: completions installed in /etc/bash_completion.d/, bash-completion version 1.2 But all modern distros now uses bash-completion-2 and installs completions in /usr/share/bash-completion/completions (Fedora, Debian 7, etc). I still don't understand how this is related to bash-completion version 1 or 2, but maybe someone can explain to me what I am missing here? Currently, bash-completion looks for completion scripts in /etc/bash_completion.d (system) and ${HOME}/.bash_completion.d (user). The only tool that looks for the scripts in /usr/share/bash-completion is the bashcomp eselect module, which creates symlinks in the bash_completion.d dir for the ones that the user enables. AFAIK bash-completion-2 loads all comletion modules dynamically from files /usr/share/bash-completion/completions/${command_name} and bashcomp eselect module is not needed. I've committed the initial get_bashcompdir() as discussed on the ml. |