]> git.pld-linux.org Git - packages/git-core.git/blobdiff - git-core.spec
up to 2.38.1 (fixes CVE-2022-39253 CVE-2022-39260)
[packages/git-core.git] / git-core.spec
index d5466150c64cd6d007afef48ce4f4236702016c0..fddf3290428b16cb04792c37d416178ad46bf7fc 100644 (file)
 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.25.1
+Version:       2.38.1
 Release:       1
 License:       GPL v2
 Group:         Development/Tools
-Source0:       http://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
-# Source0-md5: 92bf65673b4fc08b64108d807f36f4d9
+Source0:       https://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
+# Source0-md5: abdafbfb85d205421903a2100c734b17
 Source1:       %{name}-gitweb.conf
 Source2:       %{name}-gitweb-httpd.conf
 Source3:       %{name}-gitweb-lighttpd.conf
@@ -57,13 +57,16 @@ BuildRequires:      perl-base
 %if %{with gnome_keyring} || %{with libsecret}
 BuildRequires: pkgconfig
 %endif
-BuildRequires: python-devel
+BuildRequires: python3-devel
+BuildRequires: rpm-build >= 4.6
 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}
@@ -72,6 +75,11 @@ BuildRequires:       docbook-dtd45-xml
 BuildRequires: xmlto
 %endif
 %if %{with tests}
+BuildRequires: openssh-clients
+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
@@ -97,8 +105,8 @@ Suggests:    less
 Suggests:      openssh-clients
 Suggests:      perl-Git = %{version}-%{release}
 Suggests:      rsync
-Obsoletes:     git-core-gitview
-Obsoletes:     python-Git
+Obsoletes:     git-core-gitview < 2.12.1
+Obsoletes:     python-Git < 1.8.5
 Conflicts:     perl-Git < %{version}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -152,9 +160,7 @@ katalogu.
 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.
@@ -168,9 +174,9 @@ Summary(pl.UTF-8):  Pliki niezbędne do uruchomienia git-daemona w trybie usługi
 Group:         Networking/Daemons
 Requires:      %{name} = %{version}-%{release}
 Requires:      setup >= 2.4.11-1
-Provides:      git-core-daemon
-Obsoletes:     git-core-daemon
-Obsoletes:     git-core-daemon-standalone
+Provides:      git-core-daemon = %{version}-%{release}
+Obsoletes:     git-core-daemon <= %{version}-%{release}
+Obsoletes:     git-core-daemon-standalone <= %{version}-%{release}
 
 %description daemon-inetd
 Git-daemon is a really simple TCP git daemon that can serve git
@@ -187,9 +193,9 @@ Summary:    Files necessary to run git-daemon as a standalone service
 Summary(pl.UTF-8):     Pliki niezbędne do uruchomienia git-daemona w trybie usługi samodzielnej
 Group:         Networking/Daemons
 Requires:      %{name} = %{version}-%{release}
-Provides:      git-core-daemon
-Obsoletes:     git-core-daemon
-Obsoletes:     git-core-daemon-inetd
+Provides:      git-core-daemon = %{version}-%{release}
+Obsoletes:     git-core-daemon <= %{version}-%{release}
+Obsoletes:     git-core-daemon-inetd <= %{version}-%{release}
 
 %description daemon-standalone
 Git-daemon is a really simple TCP git daemon that can serve git
@@ -219,9 +225,7 @@ Summary(pl.UTF-8):  Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
 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.
@@ -359,6 +363,7 @@ Group:              Development/Tools
 Requires:      %{name} = %{version}-%{release}
 Requires:      perl-Encode
 Requires:      perl-Term-ReadKey
+Requires:      perl-modules
 
 %description svn
 Subversion support for Git.
@@ -381,15 +386,32 @@ Git tools for sending email.
 %description email -l pl.UTF-8
 Narzędzia Gita do wysyłania poczty.
 
+%package scalar
+Summary:       A tool for managing large Git repositories
+Summary(pl.UTF-8):     Narzędzie do zarządzania dużymi repozytoriami Git
+Group:         Development/Tools
+Requires:      %{name} = %{version}-%{release}
+
+%description scalar
+Scalar is a repository management tool that optimizes Git for use in
+large repositories. Scalar improves performance by configuring
+advanced Git settings, maintaining repositories in the background, and
+helping to reduce data sent across the network.
+
+%description scalar -l pl.UTF-8
+Scalar jest narzędziem do zarządzania repozytorium Git
+zoptymalizowanym pod kątem dużych repozytoriów. Scalar poprawia
+wydajność poprzez konfigurację zaawansowanych ustawień Git,
+utrzymywanie repozytoriów w tle oraz pomagając zredukować ilość
+danych wysyłanych po sieci.
+
 %package -n bash-completion-git
 Summary:       bash-completion for git
 Summary(pl.UTF-8):     bashowe uzupełnianie nazw dla gita
 Group:         Applications/Shells
 Requires:      %{name} = %{version}-%{release}
-Requires:      bash-completion >= 2.0
-%if "%{_rpmversion}" >= "5"
+Requires:      bash-completion >= 1:2.0
 BuildArch:     noarch
-%endif
 
 %description -n bash-completion-git
 This package provides bash-completion for git.
@@ -401,10 +423,9 @@ Pakiet ten dostarcza bashowe uzupełnianie nazw dla gita.
 Summary:       Perl interface to the Git version control system
 Summary(pl.UTF-8):     Perlowy interfejs do systemu kontroli wersji Git
 Group:         Development/Languages/Perl
-Obsoletes:     perl-git-core
-%if "%{_rpmversion}" >= "5"
+Requires:      perl-Error
+Obsoletes:     perl-git-core < 1.4.3.5
 BuildArch:     noarch
-%endif
 
 %description -n perl-Git
 This module provides Perl scripts easy way to interface the Git
@@ -462,6 +483,21 @@ uwierzytelniać się przy użyciu mechanizmu GNOME libsecret.
 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
@@ -473,15 +509,14 @@ Moduł trzeba zarejestrować poleceniem:
 # 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}
 %configure \
        --sysconfdir=%{_sysconfdir}/git-core \
        %{?with_pcre:--with-libpcre2} \
-       --with-openssl
+       --with-openssl \
+       --with-python="%{__python3}"
 
 echo "BLK_SHA1=1" >> config.mak
 
@@ -584,6 +619,9 @@ install -p contrib/credential/libsecret/git-credential-libsecret $RPM_BUILD_ROOT
 # 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
@@ -633,15 +671,26 @@ ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-https
 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftp
 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftps
 
-# remove unneeded files
-%py_postclean
-
 %{__mv} $RPM_BUILD_ROOT%{_localedir}/pt{_PT,}
 %find_lang git
 
 %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
 
@@ -693,19 +742,24 @@ fi
 %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}/man5/gitattributes.5*
+%{_mandir}/man5/gitformat-*.5*
 %{_mandir}/man5/githooks.5*
 %{_mandir}/man5/gitignore.5*
+%{_mandir}/man5/gitmailmap.5*
 %{_mandir}/man5/gitmodules.5*
+%{_mandir}/man5/gitprotocol-*.5*
 %{_mandir}/man5/gitrepository-layout.5*
 %{_mandir}/man7/gitcli.7*
 %{_mandir}/man7/gitcore-tutorial.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*
@@ -736,7 +790,6 @@ fi
 %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}
@@ -867,11 +920,13 @@ fi
 %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}
@@ -881,10 +936,18 @@ fi
 %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 scalar
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/scalar
+%attr(755,root,root) %{gitcoredir}/scalar
+%if %{with doc}
+%{_mandir}/man1/scalar.1*
 %endif
 
 %files -n bash-completion-git
@@ -903,7 +966,7 @@ fi
 %{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
@@ -916,3 +979,7 @@ fi
 %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
This page took 0.123033 seconds and 4 git commands to generate.