Andy Lutomirski b1dfe6a
Name:                   fish
9e29daf
Version:                2.3.1
9e29daf
Release:                1%{?dist}
Andy Lutomirski 97c0154
Summary:                A friendly interactive shell
Andy Lutomirski 97c0154
Andy Lutomirski b1dfe6a
Group:                  System Environment/Shells
Andy Lutomirski 97c0154
License:                GPLv2
1c53e0f
URL:                    https://fishshell.com/
1c53e0f
Source0:                https://fishshell.com/files/%{version}/fish-%{version}.tar.gz
a4ee7be
dc26a98
# fish tests fail for ppc64le
dc26a98
ExcludeArch:            ppc64le
dc26a98
178a776
BuildRequires:          python%{python3_pkgversion}-devel
178a776
%global __python %{expand:%{__python%{python3_pkgversion}}}
Andy Lutomirski 97c0154
cd76355
# fish's 'math' command requires bc
cd76355
Requires:		bc
cd76355
Andy Lutomirski 85febc7
BuildRequires:          ncurses-devel gettext groff doxygen
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
%description
Andy Lutomirski 97c0154
fish is a fully-equipped command line shell (like bash or zsh) that is
Andy Lutomirski 97c0154
smart and user-friendly. fish supports powerful features like syntax
Andy Lutomirski 97c0154
highlighting, autosuggestions, and tab completions that just work, with
Andy Lutomirski 97c0154
nothing to learn or configure.
Andy Lutomirski 97c0154
4743cf9
# EPEL compatibility
4743cf9
%if 0%{?rhel}
4743cf9
%global _pkgdocdir %{_docdir}/%{name}
4743cf9
%endif
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
%prep
Andy Lutomirski b1dfe6a
%setup -q
Andy Lutomirski 97c0154
178a776
# Change the bundled scripts to invoke the python binary directly.
178a776
for i in share/tools/*.py share/tools/*/*.py; do
178a776
    sed -i -e "1 s@^#!/usr/bin/env python\$@#!%{__python}@g" "$i"
178a776
done
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
%build
144e419
%configure --docdir=%{_pkgdocdir}
4062c6a
make %{?_smp_mflags} all fish_tests
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
%install
Andy Lutomirski 97c0154
%make_install
Andy Lutomirski 97c0154
Andy Lutomirski 97c0154
# Fish has magical manpages (visible from inside fish) that live in
Andy Lutomirski 97c0154
# /usr/share/fish/man/man1.  Compress them (rpm won't do it automatically).
Andy Lutomirski 97c0154
gzip %{buildroot}%{_datadir}/fish/man/man1/*.1
Andy Lutomirski 97c0154
Andy Lutomirski 97c0154
%find_lang %{name}
Andy Lutomirski b1dfe6a
a4ee7be
# Fish has what appears to be a useless pkgconfig file
a4ee7be
rm %{buildroot}/usr/share/pkgconfig/fish.pc
a4ee7be
7af2e1f
# Install docs from tarball root
144e419
cp README.md %{buildroot}%{_pkgdocdir}
144e419
cp CONTRIBUTING.md %{buildroot}%{_pkgdocdir}
Andy Lutomirski b1dfe6a
30fc8a9
# filesystem will own a couple of config directories so that other packages
30fc8a9
# can ship fish config snippets without requiring fish:
30fc8a9
rmdir %{buildroot}%{_datadir}/fish/vendor_completions.d
30fc8a9
rmdir %{buildroot}%{_datadir}/fish/vendor_conf.d
30fc8a9
Andy Lutomirski 97c0154
%check
4b4b68a
4b4b68a
# fish_tests is somewhat sensitive to the contents of the filesystem.
4b4b68a
# If imake is installed, then fish_tests will fail.  This shouldn't be
4b4b68a
# a problem under mock, though.
4b4b68a
#
4b4b68a
# See: https://github.com/fish-shell/fish-shell/issues/2322
4b4b68a
./fish_tests
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
%post
Andy Lutomirski b1dfe6a
# Add fish to the list of allowed shells in /etc/shells
Andy Lutomirski 97c0154
if [ "$1" = 1 ]; then
Andy Lutomirski 97c0154
  if ! [ -f "%{_sysconfdir}/shells" ] || ! grep -q '^%{_bindir}/fish$' "%{_sysconfdir}/shells"; then
Andy Lutomirski 97c0154
    echo '%{_bindir}/fish' >>"%{_sysconfdir}/shells"
Andy Lutomirski 97c0154
  fi
Andy Lutomirski b1dfe6a
fi
Andy Lutomirski b1dfe6a
Andy Lutomirski 97c0154
Andy Lutomirski b1dfe6a
%postun
Andy Lutomirski b1dfe6a
# Remove fish from the list of allowed shells in /etc/shells
Andy Lutomirski b1dfe6a
if [ "$1" = 0 ]; then
Andy Lutomirski 97c0154
  sed -i -e '\#^%{_bindir}/fish$#d' "%{_sysconfdir}/shells"
Andy Lutomirski b1dfe6a
fi
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
Andy Lutomirski 97c0154
%files -f %{name}.lang
Andy Lutomirski b1dfe6a
%{_mandir}/man1/*.1*
Andy Lutomirski 97c0154
%{_bindir}/*
30fc8a9
%config(noreplace) %{_sysconfdir}/fish/
Andy Lutomirski b1dfe6a
%{_datadir}/fish/
bb45ec9
%{_pkgdocdir}
Andy Lutomirski 97c0154
Andy Lutomirski b1dfe6a
%changelog
9e29daf
* Thu Jul 07 2016 Oliver Haessler <oliver@redhat.com> - 2.3.1-1
9e29daf
- Bump to 2.3.1
9e29daf
cd76355
* Sun Jun 26 2016 luto@kernel.org - 2.3.0-2
cd76355
- Require bc (rhbz 1349714)
178a776
- Improve Fedora vs EPEL compatibility in the specfile
cd76355
1c53e0f
* Sun May 22 2016 luto@kernel.org - 2.3.0-1
1c53e0f
- Bump to 2.3.0
1c53e0f
- Drop most Fedora patches
1c53e0f
30fc8a9
* Fri Feb 26 2016 luto@kernel.org - 2.2.0-11
30fc8a9
- Add function/snippet hierarchy (backported from upstream)
30fc8a9
4cd7f27
* Thu Feb 04 2016 luto@kernel.org - 2.2.0-10
4cd7f27
- Fix build on GCC 6
4cd7f27
4e06a59
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.0-9
4e06a59
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
4e06a59
4743cf9
* Mon Jan 04 2016 Andy Lutomirski <luto@mit.edu> - 2.2.0-8
4743cf9
- Tidy up EL compat
4743cf9
bb45ec9
* Sat Jan 02 2016 Oliver Haessler <oliver@redhat.com> - 2.2.0-7
bb45ec9
- included patch directly into the spec file
c0328c5
- added new patch for using python3.4 on EPEL 7
dc26a98
- excluded ppc64le as the fish_tests fail for this arch
bb45ec9
144e419
* Mon Dec 21 2015 Oliver Haessler <oliver@redhat.com> - 2.2.0-6
144e419
- added new patch for EL7 build
144e419
c77a19b
* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.0-5
c77a19b
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
c77a19b
f3c942f
* Thu Sep 24 2015 Andy Lutomirski <luto@mit.edu> - 2.2.0-4
f3c942f
- Hopefully fix rhbz #1263052 / upstream #2393
f3c942f
4b4b68a
* Thu Aug 20 2015 Andy Lutomirski <luto@mit.edu> - 2.2.0-3
4b4b68a
- Re-enable tests
4b4b68a
7af2e1f
* Wed Aug 19 2015 Andy Lutomirski <luto@mit.edu> - 2.2.0-2
7af2e1f
- Fix docs on newer RPM
7af2e1f
a4ee7be
* Wed Aug 19 2015 Andy Lutomirski <luto@mit.edu> - 2.0.0-1
a4ee7be
- Bump to 2.2.0
a4ee7be
- Drop most Fedora patches
a4ee7be
- Disable tests (broken upstream)
a4ee7be
- Adapt to new tarball contents
a4ee7be
- Drop Python 2 support (we will only target F22 and newer)
a4ee7be
c1d2cfb
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.1-5
c1d2cfb
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
c1d2cfb
d56a577
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 2.1.1-4
d56a577
- Rebuilt for GCC 5 C++11 ABI change
d56a577
Andy Lutomirski e09cbbc
* Wed Dec 17 2014 Andy Lutomirski <luto@mit.edu> - 2.1.1-3
Andy Lutomirski e09cbbc
- For Fedora 22+, use Python 3
Andy Lutomirski e09cbbc
Andy Lutomirski 896ea83
* Sun Dec 14 2014 Andy Lutomirski <luto@mit.edu> - 2.1.1-2
Andy Lutomirski 896ea83
- Backport grep.fish fixes (rhbz #1173924)
Andy Lutomirski 896ea83
Andy Lutomirski 547de75
* Mon Sep 29 2014 Andy Lutomirski <luto@mit.edu> - 2.1.1-1
Andy Lutomirski 547de75
- Update to 2.1.1
Andy Lutomirski 547de75
e861ac7
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.0-12
e861ac7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
e861ac7
Andy Lutomirski 4de0b65
* Tue Aug 12 2014 Andy Lutomirski <luto@mit.edu> - 2.1.0-11
Andy Lutomirski 4de0b65
- Improve fixes for CVE-2014-2905 and CVE-2014-2914
Andy Lutomirski 4de0b65
16cec3d
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.0-10
16cec3d
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
16cec3d
Andy Lutomirski fbcf04f
* Mon Apr 28 2014 Andy Lutomirski <luto@mit.edu> - 2.1.0-9
Andy Lutomirski fbcf04f
- Fix CVE-2014-2914
Andy Lutomirski fbcf04f
Andy Lutomirski fa9ec4d
* Mon Apr 28 2014 Andy Lutomirski <luto@mit.edu> - 2.1.0-8
Andy Lutomirski fa9ec4d
- Fix build failure
Andy Lutomirski fa9ec4d
Andy Lutomirski 8e15cc3
* Mon Apr 28 2014 Andy Lutomirski <luto@mit.edu> - 2.1.0-7
Andy Lutomirski 8e15cc3
- Fix CVE-2014-2905
Andy Lutomirski 8e15cc3
- Fix CVE-2014-2906
Andy Lutomirski 8e15cc3
Andy Lutomirski 85febc7
* Fri Dec 20 2013 Andy Lutomirski <luto@mit.edu> - 2.1.0-6
Andy Lutomirski 85febc7
- Switch back to Python 2
Andy Lutomirski 85febc7
Andy Lutomirski 97c0154
* Fri Dec 20 2013 Andy Lutomirski <luto@mit.edu> - 2.1.0-5
Andy Lutomirski 97c0154
- Add BR: python3 (for __pycache__)
Andy Lutomirski 97c0154
- Remove --without-xsel: fish dropped it in favor of a runtime check
Andy Lutomirski 97c0154
Andy Lutomirski 97c0154
* Fri Dec 13 2013 Andy Lutomirski <luto@mit.edu> - 2.1.0-4
Andy Lutomirski 97c0154
- Stop looking in /usr/local (#1185 upstream)
Andy Lutomirski 97c0154
- Link with CXXFLAGS (#1062 upstream)
Andy Lutomirski 97c0154
- Use /usr/bin/python3 in scripts intead of /usr/bin/env
Andy Lutomirski 97c0154
- Add fish_tests to the build process
Andy Lutomirski 97c0154
- Split up the %%doc lines
Andy Lutomirski 97c0154
Andy Lutomirski 97c0154
* Wed Dec 11 2013 Andy Lutomirski <luto@mit.edu> - 2.1.0-3
Andy Lutomirski 97c0154
- Use %%make_install instead of make install DESTDIR=...
Andy Lutomirski 97c0154
- Removed rm -rf %%{buildroot}
Andy Lutomirski 97c0154
- Added Requires: python
Andy Lutomirski 97c0154
Andy Lutomirski 97c0154
* Tue Dec 10 2013 Andy Lutomirski <luto@mit.edu> - 2.1.0-2
Andy Lutomirski 97c0154
- Drop 'help' patch
Andy Lutomirski 97c0154
- Misc cleanups
Andy Lutomirski 97c0154
Andy Lutomirski 97c0154
* Mon Dec 9 2013 Andy Lutomirski <luto@mit.edu> - 2.1.0-1
Andy Lutomirski 97c0154
- Update to 2.1.0 and update a lot of the specfile
Andy Lutomirski 97c0154
- Fix bogus changelog dates
Andy Lutomirski 97c0154
- Add a patch to make 'help' work on F19 (upstream #1065)
Andy Lutomirski 97c0154
Andy Lutomirski b1dfe6a
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.23.1-4
Andy Lutomirski b1dfe6a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Fri Jul 03 2009 Lorenzo Villani <lvillani@binaryhelix.net> - 1.23.1-3
Andy Lutomirski b1dfe6a
- Pass --without-xsel to configure, if you want xsel install its package instead
Andy Lutomirski b1dfe6a
- Fix file list
Andy Lutomirski b1dfe6a
- Drop unneeded BuildRequires
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Fri Jul 03 2009 Lorenzo Villani <lvillani@binaryhelix.net> - 1.23.1-2
Andy Lutomirski b1dfe6a
- rebuilt
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Fri Jul 03 2009 Lorenzo Villani <lvillani@binaryhelix.net> - 1.23.1-1
Andy Lutomirski b1dfe6a
- 1.23.1
Andy Lutomirski b1dfe6a
- Fix bz #472613
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.23.0-7
Andy Lutomirski b1dfe6a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Mon Sep 15 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 1.23.0-6
Andy Lutomirski b1dfe6a
- cleanups
Andy Lutomirski b1dfe6a
- define ARG_MAX properly so it compiles
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Mon Jul 07 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 1.23.0-5
Andy Lutomirski b1dfe6a
- fix conditional comparison
Andy Lutomirski b1dfe6a
Andy Lutomirski 97c0154
* Sun Jul 06 2008 Oliver Falk <oliver@linux-kernel.at> - 1.23.0-4
Andy Lutomirski b1dfe6a
- Rebuild
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Wed May 21 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 1.23.0-3
Andy Lutomirski b1dfe6a
- fix license tag
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.23.0-2
Andy Lutomirski b1dfe6a
- Autorebuild for GCC 4.3
Andy Lutomirski b1dfe6a
Andy Lutomirski 97c0154
* Mon Jan 14 2008 Oliver Falk <oliver@linux-kernel.at> - 1.23.0-1
Andy Lutomirski b1dfe6a
- Update to fix #208780
Andy Lutomirski b1dfe6a
- Remove openfix patch, included upstream now
Andy Lutomirski b1dfe6a
Andy Lutomirski 97c0154
* Wed Oct 31 2007 Oliver Falk <oliver@linux-kernel.at> - 1.22.3-5
Andy Lutomirski b1dfe6a
- Fix glibc's open check, by providing mode, instead of working
Andy Lutomirski b1dfe6a
  around...
Andy Lutomirski b1dfe6a
Andy Lutomirski 97c0154
* Wed Oct 31 2007 Oliver Falk <oliver@linux-kernel.at> - 1.22.3-4
Andy Lutomirski b1dfe6a
- Update URL; Fixes bz#359451
Andy Lutomirski b1dfe6a
Andy Lutomirski 97c0154
* Thu Aug 16 2007 Oliver Falk <oliver@linux-kernel.at> - 1.22.3-3
Andy Lutomirski b1dfe6a
- Workaround glibc's open check
Andy Lutomirski b1dfe6a
- Problem reported upstream; Should be fixed there
Andy Lutomirski b1dfe6a
Andy Lutomirski 97c0154
* Tue Aug 07 2007 Oliver Falk <oliver@linux-kernel.at> - 1.22.3-2
Andy Lutomirski b1dfe6a
- Fix BR autoconf
Andy Lutomirski b1dfe6a
Andy Lutomirski 97c0154
* Tue Aug 07 2007 Oliver Falk <oliver@linux-kernel.at> - 1.22.3-1
Andy Lutomirski b1dfe6a
- Update; Bug #236868
Andy Lutomirski b1dfe6a
- Add missing doxygen BR
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Fri Aug 4 2006 Axel Liljencrantz<axel@liljencrantz.se> 1.21.10-4
Andy Lutomirski b1dfe6a
- Add better translation finding code from fedora spec to main spec. Thank you to Michael Schwendt.
Andy Lutomirski b1dfe6a
- Add missing dependency libXext-devel.
Andy Lutomirski b1dfe6a
- Remove one nesting level from dependency checking code.
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Tue Aug 1 2006 Axel Liljencrantz<axel@liljencrantz.se> 1.21.10-1
Andy Lutomirski b1dfe6a
- Improved the dependency check for X headers. Thank you to Michael Schwendt for pointers on how to do this
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Mon Jul 31 2006 Axel Liljencrantz<axel@liljencrantz.se> 1.21.10-1
Andy Lutomirski b1dfe6a
- Fixed spelling and punctuation as a per patch from Paul Howarth
Andy Lutomirski b1dfe6a
- Fixed dependencies as per patch from Paul Howarth
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Tue Nov 29 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.17.0-0
Andy Lutomirski b1dfe6a
- 1.17.0
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Sat Sep 24 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.14.0-0
Andy Lutomirski b1dfe6a
- 1.14.0
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Mon Sep 12 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.13.4-0
Andy Lutomirski b1dfe6a
- 1.13.4
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Wed Sep 07 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.13.3-0
Andy Lutomirski b1dfe6a
- 1.13.3
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Tue Sep 06 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.13.2-0
Andy Lutomirski b1dfe6a
- 1.13.2
Andy Lutomirski b1dfe6a
Andy Lutomirski 97c0154
* Tue Aug 30 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.13.1-0
Andy Lutomirski b1dfe6a
- 1.13.1
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Sun Aug 28 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.13.0-0
Andy Lutomirski b1dfe6a
- 1.13.0
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Sat Aug 13 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.13.0-0
Andy Lutomirski b1dfe6a
- Add completions subdirectory
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Thu Jul 28 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.12.1-0
Andy Lutomirski b1dfe6a
- 1.12.1
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Fri Jul 15 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.12.0-1
Andy Lutomirski b1dfe6a
- 1.12.0
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Thu Jun 30 2005 Michael Schwendt <mschwendt@users.sf.net> 1.11.1-9
Andy Lutomirski b1dfe6a
- Set CFLAGS the proper way
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Thu Jun 30 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.11.1-8
Andy Lutomirski b1dfe6a
- Fix revision number in changelog
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Wed Jun 29 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.11.1-7
Andy Lutomirski b1dfe6a
- Send post-script output to /dev/null
Andy Lutomirski b1dfe6a
Andy Lutomirski b1dfe6a
* Wed Jun 29 2005 Axel Liljencrantz <axel@liljencrantz.se> 1.11.1-6
Andy Lutomirski b1dfe6a
- Add changelog section to spec file
Andy Lutomirski b1dfe6a
- Add macros to source tags
Andy Lutomirski b1dfe6a
- Add smp_mflags to 'make all'
Andy Lutomirski b1dfe6a
- Fix typo in post install scriptlet test
Andy Lutomirski b1dfe6a
- Set CFLAGS from spec file