# for AC: --without doc --without gnome_keyring --without tests
-%include /usr/lib/rpm/macros.perl
Summary: Distributed version control system focused on speed, effectivity and usability
Summary(pl.UTF-8): Rozproszony system śledzenia treści skupiony na szybkości, wydajności i użyteczności
Name: git-core
-Version: 2.21.0
+Version: 2.33.0
Release: 1
License: GPL v2
Group: Development/Tools
-Source0: http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
-# Source0-md5: a74a7e716e1e548104bc942afc860fdb
+Source0: https://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
+# Source0-md5: 0990ff97af1511be0d9f0d3223dd4359
Source1: %{name}-gitweb.conf
Source2: %{name}-gitweb-httpd.conf
Source3: %{name}-gitweb-lighttpd.conf
BuildRequires: python-devel
BuildRequires: rpm-perlprov >= 4.1-13
BuildRequires: rpm-pythonprov
-BuildRequires: rpmbuild(macros) >= 1.673
+BuildRequires: rpmbuild(macros) >= 1.752
+BuildRequires: tar >= 1:1.22
%if %{with tk}
# wish
BuildRequires: tk
+BuildRequires: xz
%endif
BuildRequires: zlib-devel
%if %{with doc}
BuildRequires: xmlto
%endif
%if %{with tests}
+BuildRequires: perl-CGI
+BuildRequires: perl-Digest-MD5
+BuildRequires: perl-Encode
+BuildRequires: perl-Time-HiRes
%if %{with tests_cvs}
# tests failed sometimes when using nserver/cvsnt client so enforce pure cvs here
BuildRequires: cvs-gnu-client < 1.13
Summary: Documentation for git-core
Summary(pl.UTF-8): Dokumentacja do git-core
Group: Documentation
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description doc
Documentation for git-core.
Group: Development/Tools
Requires: %{name} = %{version}-%{release}
Requires: tk
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description gitk
gitk displays changes in a repository or a selected set of commits.
Group: Applications/Shells
Requires: %{name} = %{version}-%{release}
Requires: bash-completion >= 2.0
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description -n bash-completion-git
This package provides bash-completion for git.
Summary: Perl interface to the Git version control system
Summary(pl.UTF-8): Perlowy interfejs do systemu kontroli wersji Git
Group: Development/Languages/Perl
+Requires: perl-Error
Obsoletes: perl-git-core
-%if "%{_rpmversion}" >= "5"
BuildArch: noarch
-%endif
%description -n perl-Git
This module provides Perl scripts easy way to interface the Git
Moduł trzeba zarejestrować poleceniem:
- git config --global credential.helper libsecret
+%package -n zsh-completion-git
+Summary: Zsh completion for git command
+Summary(pl.UTF-8): Dopełnianie parametrów komendy git dla powłoki zsh
+Group: Applications/Shells
+Requires: %{name} = %{version}-%{release}
+Requires: bash-completion-git = %{version}-%{release}
+Requires: zsh
+BuildArch: noarch
+
+%description -n zsh-completion-git
+Zsh completion for git command.
+
+%description -n zsh-completion-git -l pl.UTF-8
+Dopełnianie parametrów komendy git dla powłoki zsh.
+
%prep
%setup -q -n git-%{version}
%patch0 -p0
# we build things in contrib but want to have it clean for doc purporses, too
cp -a contrib contrib-doc
+%{__sed} -i -e '1s|#!/usr/bin/env python$|#!%{__python}|' git-p4.py
+
%build
%{__aclocal}
%{__autoconf}
%endif
%if %{with tests}
-# t5770 has multiple race conditions making it very unstable
-GIT_SKIP_TESTS=t5570
%if %{without tests_cvs}
%{__rm} t/t*cvs*.sh || :
%endif
# bash completion
install -d $RPM_BUILD_ROOT%{bash_compdir}
cp -p contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{bash_compdir}/git
+install -d $RPM_BUILD_ROOT%{zsh_compdir}
+cp -p contrib/completion/git-completion.zsh $RPM_BUILD_ROOT%{zsh_compdir}/_git
+sed -i -e "1 a zstyle ':completion:*:*:git:*' script %{bash_compdir}/git" $RPM_BUILD_ROOT%{zsh_compdir}/_git
# Install git-prompt.sh
install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
%clean
rm -rf $RPM_BUILD_ROOT
+%post
+if [ ! -f /etc/shells ]; then
+ echo "%{_bindir}/git-shell" >> /etc/shells
+else
+ grep -q '^%{_bindir}/git-shell$' /etc/shells || echo "%{_bindir}/git-shell" >> /etc/shells
+fi
+
+%preun
+if [ "$1" = "0" ]; then
+ umask 022
+ grep -v '^%{_bindir}/git-shell$' /etc/shells > /etc/shells.new
+ mv -f /etc/shells.new /etc/shells
+fi
+
%post daemon-inetd
%service -q rc-inetd reload
%exclude %{_mandir}/man1/git-archimport.1*
%exclude %{_mandir}/man1/git-svn.1*
%exclude %{_mandir}/man1/git-cvs*.1*
-%exclude %{_mandir}/man1/git-imap-send*.1*
-%exclude %{_mandir}/man1/*email*.1*
+%exclude %{_mandir}/man1/git-imap-send.1*
+%exclude %{_mandir}/man1/git-p4.1*
+%exclude %{_mandir}/man1/git-send-email.1*
%{_mandir}/man1/git.1*
-%{_mandir}/man1/gitremote-helpers.1*
%{_mandir}/man5/gitattributes.5*
%{_mandir}/man5/githooks.5*
%{_mandir}/man5/gitignore.5*
+%{_mandir}/man5/gitmailmap.5*
%{_mandir}/man5/gitmodules.5*
%{_mandir}/man5/gitrepository-layout.5*
%{_mandir}/man7/gitcli.7*
%{_mandir}/man7/gitcredentials.7*
%{_mandir}/man7/gitdiffcore.7*
%{_mandir}/man7/giteveryday.7*
+%{_mandir}/man7/gitfaq.7*
%{_mandir}/man7/gitglossary.7*
%{_mandir}/man7/gitnamespaces.7*
+%{_mandir}/man7/gitremote-helpers.7*
%{_mandir}/man7/gitrevisions.7*
%{_mandir}/man7/gitsubmodules.7*
%{_mandir}/man7/gittutorial-2.7*
%exclude %{gitcoredir}/git-instaweb
%exclude %{gitcoredir}/git-remote-bzr
%exclude %{gitcoredir}/git-remote-hg
-%exclude %{gitcoredir}/git-remote-testsvn
%exclude %{gitcoredir}/git-svn
%exclude %{gitcoredir}/mergetools/p4merge
%if %{with gnome_keyring}
%lang(ru) %{_datadir}/gitk/lib/msgs/ru.msg
%lang(sv) %{_datadir}/gitk/lib/msgs/sv.msg
%lang(vi) %{_datadir}/gitk/lib/msgs/vi.msg
+%lang(zh_CN) %{_datadir}/gitk/lib/msgs/zh_cn.msg
%endif
%files gitweb
%defattr(644,root,root,755)
%attr(755,root,root) %{gitcoredir}/git-p4
%attr(755,root,root) %{gitcoredir}/mergetools/p4merge
+%if %{with doc}
+%{_mandir}/man1/git-p4.1*
+%endif
%files svn
%defattr(644,root,root,755)
%attr(755,root,root) %{gitcoredir}/git-svn
-%attr(755,root,root) %{gitcoredir}/git-remote-testsvn
%{perl_vendorlib}/Git/SVN
%{perl_vendorlib}/Git/SVN.pm
%if %{with doc}
%files email
%defattr(644,root,root,755)
%attr(755,root,root) %{gitcoredir}/git-imap-send
-%attr(755,root,root) %{gitcoredir}/*email*
+%attr(755,root,root) %{gitcoredir}/git-send-email
%if %{with doc}
-%{_mandir}/man1/*email*.1*
-%{_mandir}/man1/*imap-send*.1*
+%{_mandir}/man1/git-imap-send.1*
+%{_mandir}/man1/git-send-email.1*
%endif
%files -n bash-completion-git
%{perl_vendorlib}/Git/LoadCPAN/Error.pm
%dir %{perl_vendorlib}/Git/LoadCPAN/Mail
%{perl_vendorlib}/Git/LoadCPAN/Mail/Address.pm
-%{_mandir}/man3/Git.3pm*
+%{?with_doc:%{_mandir}/man3/Git.3pm*}
%if %{with gnome_keyring}
%files -n gnome-keyring-git-core
%defattr(644,root,root,755)
%attr(755,root,root) %{gitcoredir}/git-credential-libsecret
%endif
+
+%files -n zsh-completion-git
+%defattr(644,root,root,755)
+%{zsh_compdir}/_git