+# vim:ft=spec
+# TODO
+# - use mkinitrd and update for geninitrd
+# - fix vim not to mark this file as bash
Summary: bash-completion offers programmable completion for bash
-Summary(pl): Programowalne uzupe³nianie nazw dla basha
+Summary(pl.UTF-8): Programowalne uzupełnianie nazw dla basha
Name: bash-completion
-Version: 20050721
-Release: 1
-License: GPL
+Version: 2.0
+Release: 3
+Epoch: 1
+License: GPL v2+
Group: Applications/Shells
-Source0: http://www.caliban.org/files/bash/%{name}-%{version}.tar.bz2
-# Source0-md5: 4de9f0dee0663f08b5e24f64490e642e
-Source1: %{name}.cron
-Patch0: %{name}-FHS.patch
-Patch1: %{name}-ifcfg.patch
-URL: http://www.caliban.org/bash/
+Source0: http://bash-completion.alioth.debian.org/files/%{name}-%{version}.tar.bz2
+# Source0-md5: 0d903f398be8c8f24bc5ffa6f86127f8
+Source1: %{name}-poldek.sh
+# https://bugs.launchpad.net/ubuntu/+source/mysql-dfsg-5.0/+bug/106975
+Source3: http://launchpadlibrarian.net/19164189/mysqldump
+# Source3-md5: 09e4885be92e032400ed702f39925d85
+Source4: http://svn.php.net/viewvc/pear2/sandbox/PEAR_BashCompletion/trunk/pear?revision=285425&view=co#/pear
+# Source4-md5: 8ce77e4459e2c45e2096da8d03c8f43d
+Patch0: %{name}-rpm-cache.patch
+Patch1: pear.patch
+URL: http://bash-completion.alioth.debian.org/
+BuildRequires: sed >= 4.0
Requires(triggerpostun): sed >= 4.0
+Requires: bash >= 4.1
+Requires: issue
+Obsoletes: bash-completion-rpm-cache
+Conflicts: rpm < 4.4.9-44
BuildArch: noarch
-Requires: bash >= 2.05a-3
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
bash-completion is a collection of shell functions that take advantage
-of the programmable completion feature of bash 2.04 and later.
+of the programmable completion feature of bash 4.1 and later.
-%description -l pl
-bash-completion jest kolekcj± funkcji shella, które opieraj± siê na
-wbudowanych rozszerzeniach basha 2.04 lub pó¼niejszego umo¿liwiaj±cego
-kompletowanie parametrów linii poleceñ.
+%description -l pl.UTF-8
+bash-completion jest kolekcją funkcji shella, które opierają się na
+wbudowanych rozszerzeniach basha 4.1 lub późniejszego umożliwiającego
+dopełnianie parametrów linii poleceń.
-%package rpm-cache
-Summary: Cache result of rpm -qa
-Summary(pl): Buforowanie wyniku rpm -qa
-Group: Applications/Shells
+%prep
+%setup -q
+cp -p '%{SOURCE4}' completions/pear
+%patch0 -p1
+%patch1 -p1
-%description rpm-cache
-This package contains cached version of rpm -qa, which is used for rpm
-completion for faster completion.
+# cleanup backups after patching
+find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
-%description rpm-cache -l pl
-Ten pakiet zawiera skrypt buforuj±cy wynik rpm -qa w celu szybszego
-dope³niania linii poleceñ programu rpm.
+# update path
+%{__sed} -i -e 's#${BASH_SOURCE\[0\]%/\*}#%{_datadir}/%{name}#' completions/perl
-%prep
-%setup -q -n bash_completion
-%patch0 -p1
-%patch1 -p2
+%build
+%configure
+%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_sysconfdir}/bash_completion.d,/etc/cron.daily,/etc/shrc.d,/var/cache}
-
-install bash_completion $RPM_BUILD_ROOT%{_sysconfdir}
-install contrib/* $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/cron.daily/rpmpkgs
-> $RPM_BUILD_ROOT/var/cache/rpmpkgs.txt
+%{__make} install -j1 \
+ INSTALL="install -p" \
+ profiledir=/etc/shrc.d \
+ DESTDIR=$RPM_BUILD_ROOT
-# subversion comes with much better completion file
-rm $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d/subversion
+cp -p completions/_yum $RPM_BUILD_ROOT%{_datadir}/%{name}/completions/yum
+cp -p completions/_yum-utils $RPM_BUILD_ROOT%{_datadir}/%{name}/completions/yum-utils
-cat <<'EOF' > %{name}.sh
-# check for bash
-[ -z "$BASH_VERSION" ] && return
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/%{name}/completions/poldek
+cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/%{name}/completions/mysqldump
+cp -p completions/pear $RPM_BUILD_ROOT%{_datadir}/%{name}/completions
-# must be interactive shell, not script
-[[ $- = *i* ]] || return
+# No package matches '*/apache2ctl'
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/completions/apache2ctl
+# No PLD package or no such binary to complete on
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/completions/{larch,lisp,monodevelop,[pg]4,cowsay,cowthink,cpan2dist}
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/completions/{mkinitrd,rpmcheck}
+# FreeBSD stuff
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/completions/{kldload,portupgrade}
+# Debian stuff
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/completions/{apt-build,dselect,reportbug,alternatives,update-alternatives,lintian,lintian-info}
-# check for correct version of bash
-bash=${BASH_VERSION%%.*}; bmajor=${bash%%.*}; bminor=${bash#*.}
-if [ "$bmajor" -eq 2 -a "$bminor" '>' 04 ] || [ "$bmajor" -gt 2 ]; then
- if [ "$PS1" ]; then # interactive shell
- # Source completion code
- . %{_sysconfdir}/bash_completion
- fi
-fi
-unset bash bminor bmajor
-EOF
-install %{name}.sh $RPM_BUILD_ROOT/etc/shrc.d
+# do not generate autodeps
+chmod a-x $RPM_BUILD_ROOT%{_datadir}/%{name}/helpers/perl
%clean
rm -rf $RPM_BUILD_ROOT
-%triggerpostun -- %{name} < 20050112-1
-# legacy clean-up
+%triggerpostun -- %{name} < 20050721-3.9
sed -i -e '/^# START bash completion/,/^# END bash completion/d' /etc/bashrc
%files
%defattr(644,root,root,755)
-%doc README Changelog BUGS
-%{_sysconfdir}/bash_completion
+%doc AUTHORS CHANGES README
+/etc/shrc.d/bash_completion.sh
%dir %{_sysconfdir}/bash_completion.d
-%{_sysconfdir}/bash_completion.d/*
-%attr(755,root,root) /etc/shrc.d/%{name}.sh
-
-%files rpm-cache
-%defattr(644,root,root,755)
-%attr(755,root,root) /etc/cron.daily/*
-%ghost /var/cache/rpmpkgs.txt
+%dir %{_datadir}/%{name}
+%{_datadir}/%{name}/bash_completion
+%dir %{_datadir}/%{name}/completions
+%{_datadir}/%{name}/completions/*
+%dir %{_datadir}/%{name}/helpers
+%attr(755,root,root) %{_datadir}/%{name}/helpers/perl
+%{_npkgconfigdir}/bash-completion.pc