]> git.pld-linux.org Git - packages/bash-completion.git/blame - bash-completion-rpm-cache.patch
- -mplayer.patch is useless there already is fl[iv]|FL[IV] (hanska)
[packages/bash-completion.git] / bash-completion-rpm-cache.patch
CommitLineData
628b594d
ER
1support rpm (jbj rpm 4.4.7+) hrmib exports for rpm -qa filter (via %_hrmib_path /var/cache/hrmib)
2add version+release+arch to installed packages filter
3
4--
5Signed-off-by: Elan Ruusamäe <glen@delfi.ee>
6
a8015381
ER
7--- bash-completion/contrib/rpm~ 2009-07-21 06:28:45.000000000 +0300
8+++ bash-completion/contrib/rpm 2009-07-21 06:37:08.381279143 +0300
9@@ -6,17 +6,31 @@
8369e198
ER
10 #
11 _rpm_installed_packages()
24e31c9e 12 {
530fe0ad
ER
13- local ver nodig="$1" nosig="$2"
14+ local nodig="$1" nosig="$2"
a8015381 15+
d828dd63
ER
16+ # if rpm (4.4.7+) is configured to export it's rpmdb to /var/cache/hrmib (%_hrmib_path)
17+ if [ -d /var/cache/hrmib -a -r /var/cache/hrmib ]; then
18+ COMPREPLY=( $( LC_ALL=C command ls -1 /var/cache/hrmib | sed -ne '/^'$cur'/p') )
19+ return
20+ fi
21+
a8015381 22+ # refresh cache if writable. FHS location
530fe0ad 23+ if [ -w /var/cache/rpmpkgs.txt -a /var/cache/rpmpkgs.txt -ot /var/lib/rpm/Packages ]; then
24e31c9e 24+ # we grab the output to local variable to prevent possible race
530fe0ad
ER
25+ _rpm_nodigsig
26+ local tmp=$(rpm -qa $nodig $nosig --qf '%{name}-%{version}-%{release}.%{arch}.rpm\n')
27+ echo "$tmp" > /var/cache/rpmpkgs.txt
24e31c9e 28+ fi
a8015381
ER
29
30 if [ -r /var/log/rpmpkgs -a \
31 /var/log/rpmpkgs -nt /var/lib/rpm/Packages ]; then
24e31c9e
ER
32 # using RHL 7.2 or later - this is quicker than querying the DB
33 COMPREPLY=( $( sed -ne \
530fe0ad 34- 's|^\('$cur'[^[:space:]]*\)-[^[:space:]-]\+-[^[:space:]-]\+\.rpm$|\1|p' \
8369e198 35+ 's|^\('$cur'.*\)\.rpm$|\1|p' \
a8015381 36 /var/log/rpmpkgs ) )
8369e198 37 else
530fe0ad
ER
38 _rpm_nodigsig
39- COMPREPLY=( $( rpm -qa $nodig $nosig --qf='%{NAME} ' "$cur*" ) )
a8015381 40+ COMPREPLY=( $( rpm -qa $nodig $nosig --qf '%{name}-%{version}-%{release}.%{arch}\n' "$cur*" ) )
8369e198
ER
41 fi
42 }
43
This page took 0.756974 seconds and 4 git commands to generate.