Red Hat Bugzilla – Bug 1017373
rpmdevtools install intrusive bash completion
Last modified: 2014-01-04 19:40:00 EST
Description of problem:
When rpmdevtools packge is installed, tab-expansion of filenames
is compromised. In particular, spec name cannot be expanded for
Version-Release number of selected component (if applicable):
Synchronoous but may depend on order of install in /etc/bash_completion.d
Steps to Reproduce:
1. yum install rpmdevtools rpmdiff
2. cd somewhere in Fedora git tree where you have a spec file foo.spec
3. rpmlint f<TAB>
Insane grinding of the disk for about a minute, maybe 90 seconds
I looked at /etc/bash_completion.d/rpmdevtools.bash-completion, but
could not understand a thing. Let's have its author figure it out.
rpmlint completion is in the rpmlint package, and rpmdevtools doesn't have a dependency on it.
If you want to override programmable rpmlint completion altogether, use Alt-/ instead of Tab. Or start completing the rpmlint specfile prefixing it with ./ so it won't trigger lookup of installed packages.
I've never seen anything like 90 seconds for this though. My 3 year old laptop (which OTOH has a SSD disk) does it in less than half a second.
I filed this against rpmdevtools because in my testing it seemed that
removing rpmdevtools would resume normal completion. However, it seems
that perhaps I was wrong. When rpmlint alone is installed, completion
takes 11 seconds or so, which is much faster but still not ideal.