%bcond_with bash_history # build with additional history in /var/log/bash_hist ;)
%bcond_without tests # do not perform "make test"
#
-%define _ver 3.2
-%define _patchlevel 9
-%define _rel 2
+%define ver 3.2
+%define patchlevel 48
+%define rel 3
Summary: GNU Bourne Again Shell (bash)
-Summary(fr.UTF-8): Le shell Bourne Again de GNU
-Summary(pl.UTF-8): Powłoka GNU Bourne Again Shell (bash)
+Summary(fr.UTF-8): Le shell Bourne Again de GNU
+Summary(pl.UTF-8): Powłoka GNU Bourne Again Shell (bash)
Name: bash
-Version: %{_ver}.%{_patchlevel}
-Release: %{_rel}%{?with_bash_history:inv}
+Version: %{ver}.%{patchlevel}
+Release: %{rel}%{?with_bash_history:inv}
License: GPL
Group: Applications/Shells
-Source0: ftp://ftp.gnu.org/gnu/bash/%{name}-%{_ver}.tar.gz
+Source0: http://ftp.gnu.org/gnu/bash/%{name}-%{ver}.tar.gz
# Source0-md5: 00bfa16d58e034e3c2aa27f390390d30
Source1: %{name}rc
Source2: %{name}-skel-.%{name}_logout
Patch8: %{name}-sighup.patch
Patch9: %{name}-backup_history.patch
Patch10: %{name}-act_like_sh.patch
-%patchset_source -f ftp://ftp.gnu.org/gnu/bash/bash-3.2-patches/bash32-%03g 1 %{_patchlevel}
+Patch11: %{name}-elinks_cont.patch
+%patchset_source -f http://ftp.gnu.org/gnu/bash/bash-3.2-patches/bash32-%03g 1 %{patchlevel}
URL: http://www.gnu.org/software/bash/
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: bison
BuildRequires: ncurses-devel >= 5.2
BuildRequires: readline-devel >= 5.2
-BuildRequires: rpmbuild(macros) >= 1.353
+BuildRequires: rpmbuild(macros) >= 1.462
BuildRequires: sed >= 4.0
BuildRequires: texinfo
%if %{with static}
BuildRequires: ncurses-static >= 5.2
BuildRequires: readline-static >= 5.2
%endif
-Requires(post,preun): grep
-Requires(preun): fileutils
-Requires: grep
Requires: readline >= 5.2
Requires: setup >= 2.4.6-2
Obsoletes: bash-doc
%package static
Summary: Statically linked GNU Bourne Again Shell (bash)
-Summary(pl.UTF-8): Statycznie skonsolidowany GNU Bourne Again Shell (bash)
+Summary(pl.UTF-8): Statycznie skonsolidowany GNU Bourne Again Shell (bash)
Group: Applications/Shells
-Requires(post,preun): grep
-Requires(preun): fileutils
Requires: %{name} = %{version}-%{release}
%description static
tym pakiecie jest wersja basha skonsolidowana statycznie.
%prep
-%setup -q -n %{name}-%{_ver} -a5
+%setup -q -n %{name}-%{ver} -a5
# official patches
-%patchset_patch 1 %{_patchlevel}
+%patchset_patch 1 %{patchlevel}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch8 -p1
%{?with_bash_history:%patch9 -p1}
%patch10 -p1
-tar xjf %SOURCE6 -C po
+%patch11 -p1
+%{__tar} xjf %{SOURCE6} -C po
sed -e 's/boldquot ru/boldquot ru af ca de es et fr hu ja nl pl pt_BR ro tr vi/' -i po/LINGUAS
%build
install %{SOURCE4} $RPM_BUILD_ROOT/etc/skel/.bashrc
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
+# use our bugtracker, upstream will ignore reports from this anyway
+rm -f $RPM_BUILD_ROOT%{_bindir}/bashbug
+
%find_lang %{name}
%clean
rm -rf $RPM_BUILD_ROOT
-%post
-umask 022
-if [ ! -f /etc/shells ]; then
- echo "/bin/bash" > /etc/shells
- echo "/bin/rbash" >> /etc/shells
-else
- if ! grep -q '^/bin/bash$' /etc/shells; then
- echo "/bin/bash" >> /etc/shells
- fi
- if ! grep -q '^/bin/rbash$' /etc/shells; then
- echo "/bin/rbash" >> /etc/shells
- fi
-fi
-
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
-
-%preun
-if [ "$1" = "0" ]; then
- umask 022
- grep -v /bin/bash /etc/shells | grep -v /bin/rbash > /etc/shells.new
- mv -f /etc/shells.new /etc/shells
-fi
-
-%post static
-umask 022
-if [ ! -f /etc/shells ]; then
- echo "/bin/bash.static" > /etc/shells
-else
- if ! grep -q '^/bin/bash.static$' /etc/shells; then
- echo "/bin/bash.static" >> /etc/shells
- fi
-fi
-
-%preun static
-if [ "$1" = "0" ]; then
- umask 022
- grep -v /bin/bash.static /etc/shells > /etc/shells.new
- mv -f /etc/shells.new /etc/shells
-fi
-
-%postun
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1
+%post -p <lua>
+%lua_add_etc_shells /bin/bash /bin/rbash
+os.execute("/usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1")
+
+%preun -p <lua>
+if arg[2] == 0 then
+ %lua_remove_etc_shells /bin/bash /bin/rbash
+end
+
+%postun -p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
+
+%post static -p <lua>
+%lua_add_etc_shells /bin/bash.static
+
+%preun static -p <lua>
+if arg[2] == 0 then
+ %lua_remove_etc_shells /bin/bash.static
+end
%files -f %{name}.lang
%defattr(644,root,root,755)
%attr(755,root,root) /bin/bash
%attr(755,root,root) /bin/rbash
-%attr(755,root,root) %{_bindir}/bashbug
%{?with_bash_history:%attr(1733,root,root) %dir /var/log/bash_hist}
%{_infodir}/bash.info*