3 %bcond_without tests # test suite
4 %bcond_with tests_cvs # tests which use CVS
5 %bcond_without tests_svn # tests which use subversion
6 %bcond_without doc # building/packaging docs/manuals (takes some time)
7 %bcond_without pcre # perl-compatible regexes support
8 %bcond_without gnome_keyring # gnome keyring credentials support
9 %bcond_without libsecret # libsecret credentials support
10 %bcond_without tk # Tcl/Tk interface
12 # for AC: --without doc --without gnome_keyring --without tests
14 Summary: Distributed version control system focused on speed, effectivity and usability
15 Summary(pl.UTF-8): Rozproszony system śledzenia treści skupiony na szybkości, wydajności i użyteczności
20 Group: Development/Tools
21 Source0: https://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
22 # Source0-md5: 9716e2b4be3f9e1105f23aa1f80a37e4
23 Source1: %{name}-gitweb.conf
24 Source2: %{name}-gitweb-httpd.conf
25 Source3: %{name}-gitweb-lighttpd.conf
26 Source4: %{name}.sysconfig
30 Patch0: %{name}-key-bindings.patch
31 Patch1: %{name}-sysconfdir.patch
32 Patch2: cherry-picked-commitlog.patch
33 URL: http://git-scm.com/
34 BuildRequires: autoconf >= 2.59
35 BuildRequires: automake
36 BuildRequires: curl-devel
37 BuildRequires: expat-devel
38 %if "%{pld_release}" == "ac"
39 BuildRequires: gettext-devel
41 BuildRequires: gettext-tools
43 %if %{with gnome_keyring} || %{with libsecret}
44 BuildRequires: glib2-devel >= 2.0
46 %if %{with gnome_keyring}
47 BuildRequires: libgnome-keyring-devel
50 BuildRequires: libsecret-devel
52 BuildRequires: openssl-devel
53 %{?with_pcre:BuildRequires: pcre2-8-devel}
54 BuildRequires: perl-Error > 0.15
55 BuildRequires: perl-MailTools
56 BuildRequires: perl-base
57 %if %{with gnome_keyring} || %{with libsecret}
58 BuildRequires: pkgconfig
60 BuildRequires: python3-devel
61 BuildRequires: rpm-build >= 4.6
62 BuildRequires: rpm-perlprov >= 4.1-13
63 BuildRequires: rpm-pythonprov
64 BuildRequires: rpmbuild(macros) >= 1.752
65 BuildRequires: tar >= 1:1.22
71 BuildRequires: zlib-devel
73 BuildRequires: asciidoc >= 7.1.2-3
74 BuildRequires: docbook-dtd45-xml
78 BuildRequires: openssh-clients
79 BuildRequires: perl-CGI
80 BuildRequires: perl-Digest-MD5
81 BuildRequires: perl-Encode
82 BuildRequires: perl-Time-HiRes
84 # tests failed sometimes when using nserver/cvsnt client so enforce pure cvs here
85 BuildRequires: cvs-gnu-client < 1.13
86 BuildRequires: cvs-gnu-client >= 1.12
89 BuildRequires: perl-subversion
90 BuildRequires: subversion
92 Conflicts: pdksh < 5.2.14-46
94 # git-sh-setup: sane_grep
99 Suggests: git-core-bzr
100 Suggests: git-core-cvs
101 Suggests: git-core-hg
102 Suggests: git-core-p4
103 Suggests: git-core-svn
105 Suggests: openssh-clients
106 Suggests: perl-Git = %{version}-%{release}
108 Obsoletes: git-core-gitview < 2.12.1
109 Obsoletes: python-Git < 1.8.5
110 Conflicts: perl-Git < %{version}
111 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
113 # html docs have links to txt files
114 %define _noautocompressdoc *.txt
116 # do not generate perl dependency, git add -p support is optional
117 # skip dependency generation from templates
118 %define _noautoreqfiles %{_libexecdir}/%{name}/git-add--interactive %{_datadir}/%{name}/templates
120 %define webapp gitweb
121 %define webappdir %{_sysconfdir}/webapps/%{webapp}
122 %define appdir %{_datadir}/%{webapp}
123 %define cgibindir %{_prefix}/lib/cgi-bin
124 %define gitcoredir %{_libexecdir}/%{name}
127 "git" can mean anything, depending on your mood.
129 - random three-letter combination that is pronounceable, and not
130 actually used by any common UNIX command. The fact that it is a
131 mispronunciation of "get" may or may not be relevant.
132 - stupid. contemptible and despicable. simple. Take your pick from the
134 - "global information tracker": you're in a good mood, and it actually
135 works for you. Angels sing, and a light suddenly fills the room.
136 - "goddamn idiotic truckload of sh*t": when it breaks
138 This is a stupid (but extremely fast) directory content manager. It
139 doesn't do a whole lot, but what it 'does' do is track directory
140 contents efficiently.
142 %description -l pl.UTF-8
143 "git" może oznaczać cokolwiek, w zależności od nastroju.
145 - losową kombinację trzech liter, która jest wymawialna i właściwie
146 nie używana przez żadne popularne polecenie uniksowe. Fakt, że jest to
147 błędna pisownia słowa "get" może mieć lub nie mieć znaczenia.
148 - głupi, pogardliwy, prosty. Można wybrać ze słownika slangu.
149 - "global information tracker" (narzędzie do globalnego śledzenia
150 informacji) - jeśli jesteśmy w dobrym nastroju i git akurat działa.
151 Anioły śpiewają, a światło niespodziewanie wypełnia pokój.
152 - "goddamn idiotic truckload of sh*t" (przeklęty idiotyczny ładunek
153 g*) - kiedy się zepsuje.
155 Jest to prymitywny (ale bardzo szybki) zarządca treści słownikowej.
156 Nie robi wiele, ale to, co "robi", to wydajne śledzenie zawartości
160 Summary: Documentation for git-core
161 Summary(pl.UTF-8): Dokumentacja do git-core
166 Documentation for git-core.
168 %description doc -l pl.UTF-8
169 Dokumentacja do git-core.
171 %package daemon-inetd
172 Summary: Files necessary to run git-daemon as an inetd service
173 Summary(pl.UTF-8): Pliki niezbędne do uruchomienia git-daemona w trybie usługi inetd
174 Group: Networking/Daemons
175 Requires: %{name} = %{version}-%{release}
176 Requires: setup >= 2.4.11-1
177 Provides: git-core-daemon = %{version}-%{release}
178 Obsoletes: git-core-daemon <= %{version}-%{release}
179 Obsoletes: git-core-daemon-standalone <= %{version}-%{release}
181 %description daemon-inetd
182 Git-daemon is a really simple TCP git daemon that can serve git
183 repositories. This package provides all necessarry files to run
184 git-daemon as an inetd service.
186 %description daemon-inetd -l pl.UTF-8
187 Git-daemon to prosty demon git korzystający z protokołu TCP do
188 udostępniania repozytoriów git. Ten pakiet dostarcza pliki potrzebne
189 do uruchomienia git-demona w trybie usługi inetd.
191 %package daemon-standalone
192 Summary: Files necessary to run git-daemon as a standalone service
193 Summary(pl.UTF-8): Pliki niezbędne do uruchomienia git-daemona w trybie usługi samodzielnej
194 Group: Networking/Daemons
195 Requires: %{name} = %{version}-%{release}
196 Provides: git-core-daemon = %{version}-%{release}
197 Obsoletes: git-core-daemon <= %{version}-%{release}
198 Obsoletes: git-core-daemon-inetd <= %{version}-%{release}
200 %description daemon-standalone
201 Git-daemon is a really simple TCP git daemon that can serve git
202 repositories. This package provides all necessarry files to run
203 git-daemon as an standalone service.
205 %description daemon-standalone -l pl.UTF-8
206 Git-daemon to prosty demon git korzystający z protokołu TCP do
207 udostępniania repozytoriów git. Ten pakiet dostarcza pliki potrzebne
208 do uruchomienia git-daemona w trybie usługi samodzielnej.
211 Summary: Git library with header files
212 Summary(pl.UTF-8): Biblioteka Gita oraz pliki nagłówkowe
213 Group: Development/Libraries
217 Git library with header files.
219 %description devel -l pl.UTF-8
220 Biblioteka Gita oraz pliki nagłówkowe.
223 Summary: Tcl/Tk interface to the Git version control system
224 Summary(pl.UTF-8): Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
225 Group: Development/Tools
226 Requires: %{name} = %{version}-%{release}
231 gitk displays changes in a repository or a selected set of commits.
232 This includes visualizing the commit graph, showing information
233 related to each commit, and the files in the trees of each revision.
235 Historically, gitk was the first repository browser. It's written in
236 Tcl/Tk and started off in a separate repository but was later merged
237 into the main git repository.
239 %description gitk -l pl.UTF-8
240 gitk wyświetla zmiany w repozytorium lub wybranym zbiorze commitów.
241 Oznacza to wizualizację grafu commitów, wyświetlanie informacji
242 związanych z każdym z commitów oraz listę plików dla każdej rewizji.
244 Z historycznego punktu widzenia gitk był pierwszą przeglądarką
245 repozytorium git. Napisany jest w Tcl/Tk i początkowo był rozwijany w
246 osobnym repozytorium, ale z czasem został włączony do głównego
250 Summary: Web frontend to git
251 Summary(pl.UTF-8): Frontend WWW do gita
252 Group: Development/Tools
253 Requires: %{name} = %{version}-%{release}
255 Requires: webserver(access)
256 Requires: webserver(alias)
257 Requires: webserver(cgi)
258 Suggests: webserver(setenv)
261 This package provides a web interface for browsing git repositories.
263 %description gitweb -l pl.UTF-8
264 Pakiet ten dostarcza interfejs WWW do przeglądania repozytoriów gita.
267 Summary: Tcl/Tk interface to the Git version control system
268 Summary(pl.UTF-8): Napisany w Tcl/Tk interfejs do systemu kontroli wersji Git
269 Group: Development/Tools
270 Requires: %{name} = %{version}-%{release}
276 Displays changes in a repository or a selected set of commits. This
277 includes visualizing the commit graph, showing information related to
278 each commit, and the files in the trees of each revision.
280 Historically, gitk was the first repository browser. It's written in
281 Tcl/Tk and started off in a separate repository but was later merged
282 into the main git repository.
284 %description gui -l pl.UTF-8
285 Wyświetla zmiany w repozytorium lub wybranym zbiorze commitów. Oznacza
286 to wizualizację grafu commitów, wyświetlanie informacji związanych z
287 każdym z commitów oraz listę plików dla każdej rewizji.
289 Z punktu widzenia historii, gitk był pierwszą przeglądarką
290 repozytorium git. Napisany jest w Tcl/Tk i początkowo był rozwijany w
291 osobnym repozytorium, ale z czasem został włączony do głównego
295 Summary: Git tools for importing Arch repositories
296 Summary(pl.UTF-8): Narzędzia Gita do importowania repozytoriów Archa
297 Group: Development/Tools
298 Requires: %{name} = %{version}-%{release}
302 Git tools for importing Arch repositories.
304 %description arch -l pl.UTF-8
305 Narzędzia Gita do importowania repozytoriów Archa.
308 Summary: Git tools for working with bzr repositories
309 Summary(pl.UTF-8): Narzędzia Gita do pracy z repozytoriami bzr
310 Group: Development/Tools
311 Requires: %{name} = %{version}-%{release}
315 Git tools for working with bzr repositories.
317 %description bzr -l pl.UTF-8
318 Narzędzia Gita do pracy z repozytoriami bzr.
321 Summary: CVS support for Git
322 Summary(pl.UTF-8): Obsługa CVS dla Gita
323 Group: Development/Tools
324 Requires: %{name} = %{version}-%{release}
325 Requires: cvsps >= 2.1-2
331 %description cvs -l pl.UTF-8
332 Obsługa CVS dla Gita.
335 Summary: Git tools for working with mercurial repositories
336 Summary(pl.UTF-8): Narzędzia Gita do pracy z repozytoriami mercuriala
337 Group: Development/Tools
338 Requires: %{name} = %{version}-%{release}
339 Requires: mercurial >= 1.8
342 Git tools for working with mercurial repositories.
344 %description hg -l pl.UTF-8
345 Narzędzia Gita do pracy z repozytoriami mercuriala.
348 Summary: Git tools for working with Perforce depots
349 Summary(pl.UTF-8): Narzędzia Gita do pracy z magazynami Perforce'a
350 Group: Development/Tools
351 Requires: %{name} = %{version}-%{release}
354 Git tools for working with Perforce depots.
356 %description p4 -l pl.UTF-8
357 Narzędzia Gita do pracy z magazynami Perforce'a.
360 Summary: Subversion support for Git
361 Summary(pl.UTF-8): Obsługa Subversion dla Gita
362 Group: Development/Tools
363 Requires: %{name} = %{version}-%{release}
364 Requires: perl-Encode
365 Requires: perl-Term-ReadKey
366 Requires: perl-modules
369 Subversion support for Git.
371 %description svn -l pl.UTF-8
372 Obsługa Subversion dla Gita.
375 Summary: Git tools for sending email
376 Summary(pl.UTF-8): Narzędzia Gita do wysyłania poczty
377 Group: Development/Tools
378 Requires: %{name} = %{version}-%{release}
380 Requires: perl-MailTools
381 Suggests: perl-Net-SMTP-SSL
384 Git tools for sending email.
386 %description email -l pl.UTF-8
387 Narzędzia Gita do wysyłania poczty.
389 %package -n bash-completion-git
390 Summary: bash-completion for git
391 Summary(pl.UTF-8): bashowe uzupełnianie nazw dla gita
392 Group: Applications/Shells
393 Requires: %{name} = %{version}-%{release}
394 Requires: bash-completion >= 2.0
397 %description -n bash-completion-git
398 This package provides bash-completion for git.
400 %description -n bash-completion-git -l pl.UTF-8
401 Pakiet ten dostarcza bashowe uzupełnianie nazw dla gita.
404 Summary: Perl interface to the Git version control system
405 Summary(pl.UTF-8): Perlowy interfejs do systemu kontroli wersji Git
406 Group: Development/Languages/Perl
408 Obsoletes: perl-git-core < 1.4.3.5
411 %description -n perl-Git
412 This module provides Perl scripts easy way to interface the Git
413 version control system. The modules have an easy and well-tested way
414 to call arbitrary Git commands; in the future, the interface will also
415 provide specialized methods for doing easily operations which are not
416 totally trivial to do over the generic command interface.
418 %description -n perl-Git -l pl.UTF-8
419 Ten moduł umożliwia skryptom Perla współpracę z systemem kontroli
420 wersji Git. W łatwy i dobrze przetestowany sposób pozwala wywoływać
421 dowolne polecenia Gita; w przyszłości interfejs udostępni także
422 specjalne metody do łatwego wykonywania operacji nietrywialnych do
423 wykonania przy użyciu ogólnego interfejsu poleceń.
425 %package -n gnome-keyring-git-core
426 Summary: GNOME Keyring authentication provider for Git
427 Summary(pl.UTF-8): Moduł uwierzytelniający GNOME Keyring dla Gita
428 Group: X11/Applications
429 URL: http://git-scm.com/docs/gitcredentials.html
430 Requires: %{name} = %{version}-%{release}
432 %description -n gnome-keyring-git-core
433 Authentication provider module for Git which allows git client to
434 authenticate using GNOME Keyring.
436 You need to register it with:
437 - git config --global credential.helper gnome-keyring
439 %description -n gnome-keyring-git-core -l pl.UTF-8
440 Moduł uwierzytelniający dla Gita pozwalający klientom git
441 uwierzytelniać się przy użyciu mechanizmu GNOME Keyring.
443 Moduł trzeba zarejestrować poleceniem:
444 - git config --global credential.helper gnome-keyring
446 %package credential-libsecret
447 Summary: GNOME authentication provider for Git using libsecret
448 Summary(pl.UTF-8): Moduł uwierzytelniający GNOME dla Gita wykorzystujący libsecret
449 Group: X11/Applications
450 URL: http://git-scm.com/docs/gitcredentials.html
451 Requires: %{name} = %{version}-%{release}
453 %description credential-libsecret
454 Authentication provider module for Git which allows git client to
455 authenticate using GNOME libsecret.
457 You need to register it with:
458 - git config --global credential.helper libsecret
460 %description credential-libsecret -l pl.UTF-8
461 Moduł uwierzytelniający dla Gita pozwalający klientom git
462 uwierzytelniać się przy użyciu mechanizmu GNOME libsecret.
464 Moduł trzeba zarejestrować poleceniem:
465 - git config --global credential.helper libsecret
467 %package -n zsh-completion-git
468 Summary: Zsh completion for git command
469 Summary(pl.UTF-8): Dopełnianie parametrów komendy git dla powłoki zsh
470 Group: Applications/Shells
471 Requires: %{name} = %{version}-%{release}
472 Requires: bash-completion-git = %{version}-%{release}
476 %description -n zsh-completion-git
477 Zsh completion for git command.
479 %description -n zsh-completion-git -l pl.UTF-8
480 Dopełnianie parametrów komendy git dla powłoki zsh.
483 %setup -q -n git-%{version}
488 %{__rm} {Documentation/technical,contrib/credential/gnome-keyring}/.gitignore
490 # we build things in contrib but want to have it clean for doc purporses, too
491 cp -a contrib contrib-doc
497 --sysconfdir=%{_sysconfdir}/git-core \
498 %{?with_pcre:--with-libpcre2} \
500 --with-python="%{__python3}"
502 echo "BLK_SHA1=1" >> config.mak
505 GITWEB_CONFIG="%{webappdir}/gitweb.conf" \
506 GITWEB_PROJECTROOT="/var/lib/git" \
507 GITWEB_CSS="/gitweb/gitweb.css" \
508 GITWEB_LOGO="/gitweb/git-logo.png" \
509 GITWEB_FAVICON="/gitweb/git-favicon.png" \
510 NO_PERL_CPAN_FALLBACKS=1 \
511 perllibdir=%{perl_vendorlib} \
514 %{__make} -C contrib/subtree
516 %if %{with gnome_keyring}
517 %{__make} -C contrib/credential/gnome-keyring \
519 CFLAGS="%{rpmcflags} -Wall" \
520 LDFLAGS="%{rpmldflags}"
523 %if %{with libsecret}
524 %{__make} -C contrib/credential/libsecret \
526 CFLAGS="%{rpmcflags} -Wall" \
527 LDFLAGS="%{rpmldflags}"
532 MAN_BASE_URL=file://%{_docdir}/%{name}-doc-%{version}/ \
537 %if %{without tests_cvs}
538 %{__rm} t/t*cvs*.sh || :
540 %if %{without tests_svn}
541 GIT_SKIP_TESTS="$GIT_SKIP_TESTS t91??"
543 export GIT_SKIP_TESTS
545 NO_PERL_CPAN_FALLBACKS=1
549 rm -rf $RPM_BUILD_ROOT
550 install -d $RPM_BUILD_ROOT{%{_includedir}/%{name}/xdiff,%{_libdir},%{_localstatedir}/lib/git}
551 install -d $RPM_BUILD_ROOT{%{appdir},%{cgibindir},%{webappdir}}
552 install -d $RPM_BUILD_ROOT/etc/{sysconfig/rc-inetd,rc.d/init.d}
553 install -d $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
554 cat << EOF > $RPM_BUILD_ROOT%{_sysconfdir}/git-core/gitconfig
556 templatedir = %{_sysconfdir}/%{name}/templates
560 DESTDIR=$RPM_BUILD_ROOT \
561 NO_PERL_CPAN_FALLBACKS=1 \
562 perllibdir=%{perl_vendorlib}
565 %{__make} install-doc \
566 DESTDIR=$RPM_BUILD_ROOT
569 # copy templates except sample hooks
570 cp -a $RPM_BUILD_ROOT%{_datadir}/%{name}/templates $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
571 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/templates/hooks/*.sample
573 # header files and lib
574 cp -p *.h $RPM_BUILD_ROOT%{_includedir}/%{name}
575 cp -a compat $RPM_BUILD_ROOT%{_includedir}/%{name}
576 cp -p xdiff/*.h $RPM_BUILD_ROOT%{_includedir}/%{name}/xdiff
577 install -d $RPM_BUILD_ROOT%{_includedir}/%{name}/block-sha1
578 cp -p block-sha1/sha1.h $RPM_BUILD_ROOT%{_includedir}/%{name}/block-sha1
579 cp -p libgit.a $RPM_BUILD_ROOT%{_libdir}
580 cp -p xdiff/lib.a $RPM_BUILD_ROOT%{_libdir}/libgit_xdiff.a
581 cp -p {Makefile,config.mak,config.mak.autogen,config.mak.uname} $RPM_BUILD_ROOT%{_includedir}/%{name}
583 %{__make} -C contrib/subtree install \
584 libexecdir=%{gitcoredir} \
585 DESTDIR=$RPM_BUILD_ROOT
588 %{__make} -C contrib/subtree install-man \
589 DESTDIR=$RPM_BUILD_ROOT
592 %if %{with gnome_keyring}
593 install -p contrib/credential/gnome-keyring/git-credential-gnome-keyring $RPM_BUILD_ROOT%{gitcoredir}
596 %if %{with libsecret}
597 install -p contrib/credential/libsecret/git-credential-libsecret $RPM_BUILD_ROOT%{gitcoredir}
601 install -d $RPM_BUILD_ROOT%{bash_compdir}
602 cp -p contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{bash_compdir}/git
603 install -d $RPM_BUILD_ROOT%{zsh_compdir}
604 cp -p contrib/completion/git-completion.zsh $RPM_BUILD_ROOT%{zsh_compdir}/_git
605 sed -i -e "1 a zstyle ':completion:*:*:git:*' script %{bash_compdir}/git" $RPM_BUILD_ROOT%{zsh_compdir}/_git
607 # Install git-prompt.sh
608 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
609 cp -p contrib/completion/git-prompt.sh $RPM_BUILD_ROOT%{_datadir}/%{name}/contrib/completion
611 # Install bzr and hg remote helpers from contrib
612 install -p contrib/remote-helpers/git-remote-{bzr,hg} $RPM_BUILD_ROOT%{gitcoredir}
615 %{__mv} $RPM_BUILD_ROOT{%{appdir},%{cgibindir}}/gitweb.cgi
616 ln -s %{cgibindir}/gitweb.cgi $RPM_BUILD_ROOT%{appdir}/gitweb.cgi
617 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{webappdir}/gitweb.conf
618 cp -p %{SOURCE7} $RPM_BUILD_ROOT%{webappdir}/gitolite.pl
619 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/apache.conf
620 cp -p %{SOURCE2} $RPM_BUILD_ROOT%{webappdir}/httpd.conf
621 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{webappdir}/lighttpd.conf
623 # git-daemon related files
624 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/git-daemon
625 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
626 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
629 sed -e 's,@libdir@/git-core,%{gitcoredir},g' -i $RPM_BUILD_ROOT/etc/rc.d/init.d/git-daemon
630 sed -e 's,@libdir@/git-core,%{gitcoredir},g' -i $RPM_BUILD_ROOT/etc/sysconfig/rc-inetd/git-daemon
633 ln -sf git $RPM_BUILD_ROOT%{_bindir}/git-receive-pack
634 ln -sf git $RPM_BUILD_ROOT%{_bindir}/git-upload-archive
635 ln -sf ../..%{gitcoredir}/git-shell $RPM_BUILD_ROOT%{_bindir}/git-shell
636 ln -sf ../..%{gitcoredir}/git-upload-pack $RPM_BUILD_ROOT%{_bindir}/git-upload-pack
637 ln -sf ../..%{gitcoredir}/git $RPM_BUILD_ROOT%{_bindir}/git
639 # convert all hardlinks to symlinks, as rpm fails to calculate it properly
640 # requiring excessive free space when it may not be available
641 # https://bugs.launchpad.net/pld-linux/+bug/1176337
642 find $RPM_BUILD_ROOT%{gitcoredir} -samefile $RPM_BUILD_ROOT%{gitcoredir}/git > files
643 for f in $(cat files); do
644 f=${f#$RPM_BUILD_ROOT%{gitcoredir}/}
645 test $f = git && continue
646 ln -snf git $RPM_BUILD_ROOT%{gitcoredir}/$f
650 ln -snf git-gui $RPM_BUILD_ROOT%{gitcoredir}/git-citool
651 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-https
652 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftp
653 ln -snf git-remote-http $RPM_BUILD_ROOT%{gitcoredir}/git-remote-ftps
655 %{__mv} $RPM_BUILD_ROOT%{_localedir}/pt{_PT,}
659 rm -rf $RPM_BUILD_ROOT
662 if [ ! -f /etc/shells ]; then
663 echo "%{_bindir}/git-shell" >> /etc/shells
665 grep -q '^%{_bindir}/git-shell$' /etc/shells || echo "%{_bindir}/git-shell" >> /etc/shells
669 if [ "$1" = "0" ]; then
671 grep -v '^%{_bindir}/git-shell$' /etc/shells > /etc/shells.new
672 mv -f /etc/shells.new /etc/shells
676 %service -q rc-inetd reload
679 if [ "$1" = "0" ]; then
680 %service -q rc-inetd reload
683 %post daemon-standalone
684 /sbin/chkconfig --add git-daemon
685 %service git-daemon restart "git-daemon"
687 %preun daemon-standalone
688 if [ "$1" = "0" ]; then
689 %service git-daemon stop
690 /sbin/chkconfig --del git-daemon
693 %triggerin gitweb -- apache1 < 1.3.37-3, apache1-base
694 %webapp_register apache %{webapp}
696 %triggerun gitweb -- apache1 < 1.3.37-3, apache1-base
697 %webapp_unregister apache %{webapp}
699 %triggerin gitweb -- apache < 2.2.0, apache-base
700 %webapp_register httpd %{webapp}
702 %triggerun gitweb -- apache < 2.2.0, apache-base
703 %webapp_unregister httpd %{webapp}
705 %triggerin gitweb -- lighttpd
706 %webapp_register lighttpd %{webapp}
708 %triggerun gitweb -- lighttpd
709 %webapp_unregister lighttpd %{webapp}
712 %defattr(644,root,root,755)
713 %doc README.md contrib-doc
714 %attr(755,root,root) %{_bindir}/git
715 %attr(755,root,root) %{_bindir}/git-receive-pack
716 %attr(755,root,root) %{_bindir}/git-shell
717 %attr(755,root,root) %{_bindir}/git-upload-archive
718 %attr(755,root,root) %{_bindir}/git-upload-pack
719 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}
722 %{_mandir}/man1/git-*.1*
723 %exclude %{_mandir}/man1/git-archimport.1*
724 %exclude %{_mandir}/man1/git-svn.1*
725 %exclude %{_mandir}/man1/git-cvs*.1*
726 %exclude %{_mandir}/man1/git-imap-send.1*
727 %exclude %{_mandir}/man1/git-p4.1*
728 %exclude %{_mandir}/man1/git-send-email.1*
729 %{_mandir}/man1/git.1*
730 %{_mandir}/man5/gitattributes.5*
731 %{_mandir}/man5/githooks.5*
732 %{_mandir}/man5/gitignore.5*
733 %{_mandir}/man5/gitmailmap.5*
734 %{_mandir}/man5/gitmodules.5*
735 %{_mandir}/man5/gitrepository-layout.5*
736 %{_mandir}/man7/gitcli.7*
737 %{_mandir}/man7/gitcore-tutorial.7*
738 %{_mandir}/man7/gitcredentials.7*
739 %{_mandir}/man7/gitdiffcore.7*
740 %{_mandir}/man7/giteveryday.7*
741 %{_mandir}/man7/gitfaq.7*
742 %{_mandir}/man7/gitglossary.7*
743 %{_mandir}/man7/gitnamespaces.7*
744 %{_mandir}/man7/gitremote-helpers.7*
745 %{_mandir}/man7/gitrevisions.7*
746 %{_mandir}/man7/gitsubmodules.7*
747 %{_mandir}/man7/gittutorial-2.7*
748 %{_mandir}/man7/gittutorial.7*
749 %{_mandir}/man7/gitworkflows.7*
753 %attr(755,root,root) %{gitcoredir}/*-*
754 %attr(755,root,root) %{gitcoredir}/git
755 %dir %{gitcoredir}/mergetools
756 %{gitcoredir}/mergetools/*
759 %{_localstatedir}/lib/git
762 %exclude %{gitcoredir}/*email*
763 %exclude %{gitcoredir}/*p4*
764 %exclude %{gitcoredir}/git-archimport
765 %exclude %{gitcoredir}/git-citool
766 %exclude %{gitcoredir}/git-cvs*
767 %exclude %{gitcoredir}/git-gui
768 %exclude %{gitcoredir}/git-imap-send
769 %exclude %{gitcoredir}/git-instaweb
770 %exclude %{gitcoredir}/git-remote-bzr
771 %exclude %{gitcoredir}/git-remote-hg
772 %exclude %{gitcoredir}/git-svn
773 %exclude %{gitcoredir}/mergetools/p4merge
774 %if %{with gnome_keyring}
775 %exclude %{gitcoredir}/git-credential-gnome-keyring
777 %if %{with libsecret}
778 %exclude %{gitcoredir}/git-credential-libsecret
783 %defattr(644,root,root,755)
784 %doc Documentation/RelNotes*
785 %doc Documentation/*.html Documentation/howto Documentation/technical
789 %defattr(644,root,root,755)
790 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/rc-inetd/git-daemon
792 %files daemon-standalone
793 %defattr(644,root,root,755)
794 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/git-daemon
795 %attr(754,root, root) /etc/rc.d/init.d/git-daemon
798 %defattr(644,root,root,755)
799 %{_includedir}/%{name}
801 %{_libdir}/libgit_xdiff.a
805 %defattr(644,root,root,755)
807 %{_mandir}/man1/gitk.1*
809 %attr(755,root,root) %{_bindir}/gitk
810 %dir %{_datadir}/gitk
811 %dir %{_datadir}/gitk/lib
812 %dir %{_datadir}/gitk/lib/msgs
813 %lang(bg) %{_datadir}/gitk/lib/msgs/bg.msg
814 %lang(ca) %{_datadir}/gitk/lib/msgs/ca.msg
815 %lang(de) %{_datadir}/gitk/lib/msgs/de.msg
816 %lang(es) %{_datadir}/gitk/lib/msgs/es.msg
817 %lang(fr) %{_datadir}/gitk/lib/msgs/fr.msg
818 %lang(hu) %{_datadir}/gitk/lib/msgs/hu.msg
819 %lang(it) %{_datadir}/gitk/lib/msgs/it.msg
820 %lang(ja) %{_datadir}/gitk/lib/msgs/ja.msg
821 %lang(pt_BR) %{_datadir}/gitk/lib/msgs/pt_br.msg
822 %lang(pt_PT) %{_datadir}/gitk/lib/msgs/pt_pt.msg
823 %lang(ru) %{_datadir}/gitk/lib/msgs/ru.msg
824 %lang(sv) %{_datadir}/gitk/lib/msgs/sv.msg
825 %lang(vi) %{_datadir}/gitk/lib/msgs/vi.msg
826 %lang(zh_CN) %{_datadir}/gitk/lib/msgs/zh_cn.msg
830 %defattr(644,root,root,755)
831 %doc gitweb/{README,INSTALL}
833 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/apache.conf
834 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/httpd.conf
835 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,root) %{webappdir}/lighttpd.conf
836 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitweb.conf
837 %config(noreplace) %verify(not md5 mtime size) %attr(640,root,http) %{webappdir}/gitolite.pl
838 %attr(755,root,root) %{cgibindir}/gitweb.cgi
840 %attr(755,root,root) %{gitcoredir}/git-instaweb
842 %{_mandir}/man1/gitweb.1*
843 %{_mandir}/man5/gitweb.conf.5*
848 %defattr(644,root,root,755)
849 %attr(755,root,root) %{gitcoredir}/git-citool
850 %attr(755,root,root) %{gitcoredir}/git-gui
851 %dir %{_datadir}/git-gui
852 %dir %{_datadir}/git-gui/lib
853 %dir %{_datadir}/git-gui/lib/msgs
854 %{_datadir}/git-gui/lib/git-gui.ico
855 %{_datadir}/git-gui/lib/tclIndex
856 %{_datadir}/git-gui/lib/*.js
857 %{_datadir}/git-gui/lib/*.tcl
858 %lang(bg) %{_datadir}/git-gui/lib/msgs/bg.msg
859 %lang(de) %{_datadir}/git-gui/lib/msgs/de.msg
860 %lang(el) %{_datadir}/git-gui/lib/msgs/el.msg
861 %lang(fr) %{_datadir}/git-gui/lib/msgs/fr.msg
862 %lang(hu) %{_datadir}/git-gui/lib/msgs/hu.msg
863 %lang(it) %{_datadir}/git-gui/lib/msgs/it.msg
864 %lang(ja) %{_datadir}/git-gui/lib/msgs/ja.msg
865 %lang(nb) %{_datadir}/git-gui/lib/msgs/nb.msg
866 %lang(pt) %{_datadir}/git-gui/lib/msgs/pt_pt.msg
867 %lang(pt_BR) %{_datadir}/git-gui/lib/msgs/pt_br.msg
868 %lang(ru) %{_datadir}/git-gui/lib/msgs/ru.msg
869 %lang(sv) %{_datadir}/git-gui/lib/msgs/sv.msg
870 %lang(vi) %{_datadir}/git-gui/lib/msgs/vi.msg
871 %lang(zh_CN) %{_datadir}/git-gui/lib/msgs/zh_cn.msg
875 %defattr(644,root,root,755)
876 %attr(755,root,root) %{gitcoredir}/git-archimport
878 %{_mandir}/man1/git-archimport.1*
882 %defattr(644,root,root,755)
883 %attr(755,root,root) %{gitcoredir}/git-remote-bzr
886 %defattr(644,root,root,755)
887 %attr(755,root,root) %{_bindir}/git-cvsserver
888 %attr(755,root,root) %{gitcoredir}/git-cvs*
890 %{_mandir}/man1/git-cvs*.1*
891 %{_mandir}/man7/gitcvs-migration.7*
895 %defattr(644,root,root,755)
896 %attr(755,root,root) %{gitcoredir}/git-remote-hg
899 %defattr(644,root,root,755)
900 %attr(755,root,root) %{gitcoredir}/git-p4
901 %attr(755,root,root) %{gitcoredir}/mergetools/p4merge
903 %{_mandir}/man1/git-p4.1*
907 %defattr(644,root,root,755)
908 %attr(755,root,root) %{gitcoredir}/git-svn
909 %{perl_vendorlib}/Git/SVN
910 %{perl_vendorlib}/Git/SVN.pm
912 %{_mandir}/man1/git-svn.1*
916 %defattr(644,root,root,755)
917 %attr(755,root,root) %{gitcoredir}/git-imap-send
918 %attr(755,root,root) %{gitcoredir}/git-send-email
920 %{_mandir}/man1/git-imap-send.1*
921 %{_mandir}/man1/git-send-email.1*
924 %files -n bash-completion-git
925 %defattr(644,root,root,755)
929 %defattr(644,root,root,755)
930 %{perl_vendorlib}/Git.pm
931 %dir %{perl_vendorlib}/Git
932 %{perl_vendorlib}/Git/I18N.pm
933 %{perl_vendorlib}/Git/IndexInfo.pm
934 %{perl_vendorlib}/Git/LoadCPAN.pm
935 %{perl_vendorlib}/Git/Packet.pm
936 %dir %{perl_vendorlib}/Git/LoadCPAN
937 %{perl_vendorlib}/Git/LoadCPAN/Error.pm
938 %dir %{perl_vendorlib}/Git/LoadCPAN/Mail
939 %{perl_vendorlib}/Git/LoadCPAN/Mail/Address.pm
940 %{?with_doc:%{_mandir}/man3/Git.3pm*}
942 %if %{with gnome_keyring}
943 %files -n gnome-keyring-git-core
944 %defattr(644,root,root,755)
945 %attr(755,root,root) %{gitcoredir}/git-credential-gnome-keyring
948 %if %{with libsecret}
949 %files credential-libsecret
950 %defattr(644,root,root,755)
951 %attr(755,root,root) %{gitcoredir}/git-credential-libsecret
954 %files -n zsh-completion-git
955 %defattr(644,root,root,755)