[packages/git-lfs] Up to 3.8.0

arekm arekm at pld-linux.org
Sat Sep 12 23:13:11 CEST 2026


commit 057aa3df6a80bedc68cd2b7a1c0bad63f5d536ad
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Sat Sep 12 23:12:52 2026 +0200

    Up to 3.8.0

 git-lfs.spec | 165 +++++++++++++++++++++++++++++++++++++++++++----------------
 1 file changed, 121 insertions(+), 44 deletions(-)
---
diff --git a/git-lfs.spec b/git-lfs.spec
index 82ab647..ec50d5e 100644
--- a/git-lfs.spec
+++ b/git-lfs.spec
@@ -1,34 +1,37 @@
 #
 # Conditional build:
-%bcond_with	tests		# build without tests
-%bcond_without	doc		# build manual page
+%bcond_with	tests		# unit and integration tests
+%bcond_without	doc		# manual pages
 
 Summary:	Git extension for versioning large files
+Summary(pl.UTF-8):	Rozszerzenie Gita do wersjonowania dużych plików
 Name:		git-lfs
-Version:	2.3.4
+Version:	3.8.0
 Release:	1
 License:	MIT
-Group:		Applications/Archiving
-Source0:	https://github.com/github/git-lfs/archive/v%{version}/%{name}-%{version}.tar.gz
-# Source0-md5:	e8a2d5e822119ea5b8a1ac78e26975dd
-URL:		https://git-lfs.github.com/
-BuildRequires:	git-core
-BuildRequires:	golang
-BuildRequires:	groff
-%{?with_doc:BuildRequires:	ronn}
-Requires:	git-core >= 1.8.5
-ExclusiveArch:	%{ix86} %{x8664} %{arm}
-BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-
-%define		_enable_debug_packages 0
-%define		import_path	github.com/git-lfs/%{name}
-
-%ifarch %{ix86}
-%define GOARCH 386
+Group:		Development/Tools
+#Source0Download: https://github.com/git-lfs/git-lfs/releases
+# upstream source archive with vendored Go modules
+Source0:	https://github.com/git-lfs/git-lfs/releases/download/v%{version}/%{name}-vendor-v%{version}.tar.gz
+# Source0-md5:	fba8df374fa297d343b29919f0d5a6bd
+URL:		https://git-lfs.com/
+BuildRequires:	gettext-tools
+BuildRequires:	golang >= 1.25.0
+BuildRequires:	rpmbuild(macros) >= 2.011
+%if %{with doc}
+BuildRequires:	ruby-asciidoctor
 %endif
-%ifarch %{x8664}
-%define GOARCH amd64
+%if %{with tests}
+BuildRequires:	curl
+BuildRequires:	git-core >= 2.0.0
+BuildRequires:	perl-tools
+BuildRequires:	perl-tools-devel
 %endif
+Requires:	git-core >= 2.0.0
+ExclusiveArch:	%{go_arches}
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%undefine	_debugsource_packages
 
 %description
 Git Large File Storage (LFS) replaces large files such as audio
@@ -36,50 +39,124 @@ samples, videos, datasets, and graphics with text pointers inside Git,
 while storing the file contents on a remote server like GitHub.com or
 GitHub Enterprise.
 
-%prep
-%setup -qc
+%description -l pl.UTF-8
+Git Large File Storage (LFS) zastępuje duże pliki, takie jak próbki
+dźwięku, filmy, zbiory danych i grafika, tekstowymi wskaźnikami
+wewnątrz Gita, przechowując zawartość plików na zdalnym serwerze,
+takim jak GitHub.com lub GitHub Enterprise.
+
+%package -n bash-completion-git-lfs
+Summary:	Bash completion for git-lfs command line
+Summary(pl.UTF-8):	Dopełnianie linii poleceń git-lfs dla Basha
+Group:		Applications/Shells
+Requires:	%{name} = %{version}-%{release}
+Requires:	bash-completion >= 1:2.0
+BuildArch:	noarch
+
+%description -n bash-completion-git-lfs
+Bash completion for git-lfs command line.
+
+%description -n bash-completion-git-lfs -l pl.UTF-8
+Dopełnianie linii poleceń git-lfs dla Basha.
+
+%package -n fish-completion-git-lfs
+Summary:	Fish completion for git-lfs command line
+Summary(pl.UTF-8):	Dopełnianie linii poleceń git-lfs dla Fisha
+Group:		Applications/Shells
+Requires:	%{name} = %{version}-%{release}
+Requires:	fish
+BuildArch:	noarch
+
+%description -n fish-completion-git-lfs
+Fish completion for git-lfs command line.
+
+%description -n fish-completion-git-lfs -l pl.UTF-8
+Dopełnianie linii poleceń git-lfs dla Fisha.
+
+%package -n zsh-completion-git-lfs
+Summary:	ZSH completion for git-lfs command line
+Summary(pl.UTF-8):	Dopełnianie linii poleceń git-lfs dla ZSH
+Group:		Applications/Shells
+Requires:	%{name} = %{version}-%{release}
+Requires:	zsh
+BuildArch:	noarch
+
+%description -n zsh-completion-git-lfs
+ZSH completion for git-lfs command line.
+
+%description -n zsh-completion-git-lfs -l pl.UTF-8
+Dopełnianie linii poleceń git-lfs dla ZSH.
 
-# preserve for %doc
-mv %{name}-%{version}/*.md .
+%prep
+%setup -q
 
-install -d src/$(dirname %{import_path})
-mv %{name}-%{version} src/%{import_path}
+%{__mkdir_p} .go-cache bin po/build
 
 %build
-unset GOROOT
-export GOPATH=$(pwd)
-export GOARCH=%{GOARCH}
+# compiled translations are embedded into the binary by tr/trgen
+for po in po/*.po; do
+	msgfmt -o po/build/$(basename $po .po).mo $po
+done
+%__go generate -mod=vendor ./commands ./tr
 
-cd src/%{import_path}
-sh -x ./script/bootstrap
+%__go build -v -mod=vendor -o bin/git-lfs ./git-lfs.go
 
 %if %{with doc}
-./script/man
+%{__make} man \
+	GIT_LFS_SHA= \
+	VERSION=v%{version}
 %endif
 
 %if %{with tests}
-# ensure there are no GIT env vars for testing
-env | grep GIT_ && exit 3
-
-./script/test
-./script/integration
+# "make test" would rebuild bin/git-lfs with upstream's stripped flags
+HOME=$(mktemp -d) \
+GIT_CONFIG_NOSYSTEM=1 \
+%__go test -count=1 -mod=vendor ./...
+
+%{__make} -C t test \
+	GOFLAGS=-mod=vendor \
+	GOCACHE=%{go_cachedir}
 %endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1}
+install -d $RPM_BUILD_ROOT{%{_bindir},%{bash_compdir},%{fish_compdir},%{zsh_compdir}}
 
-cd src/%{import_path}
 install -p bin/git-lfs $RPM_BUILD_ROOT%{_bindir}/git-lfs
+
 %if %{with doc}
-cp -p man/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
+install -d $RPM_BUILD_ROOT%{_mandir}/man{1,5,7}
+cp -p man/man1/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
+cp -p man/man5/*.5 $RPM_BUILD_ROOT%{_mandir}/man5
+cp -p man/man7/*.7 $RPM_BUILD_ROOT%{_mandir}/man7
 %endif
 
+./bin/git-lfs completion bash > $RPM_BUILD_ROOT%{bash_compdir}/git-lfs
+./bin/git-lfs completion fish > $RPM_BUILD_ROOT%{fish_compdir}/git-lfs.fish
+./bin/git-lfs completion zsh > $RPM_BUILD_ROOT%{zsh_compdir}/_git-lfs
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
-%doc LICENSE.md README.md ROADMAP.md CHANGELOG.md
+%doc CHANGELOG.md LICENSE.md README.md docs/{api,custom-transfers.md,extensions.md,spec.md}
 %attr(755,root,root) %{_bindir}/git-lfs
-%{?with_doc:%{_mandir}/man1/*.1*}
+%if %{with doc}
+%{_mandir}/man1/git-lfs.1*
+%{_mandir}/man1/git-lfs-*.1*
+%{_mandir}/man5/git-lfs-config.5*
+%{_mandir}/man7/git-lfs-faq.7*
+%endif
+
+%files -n bash-completion-git-lfs
+%defattr(644,root,root,755)
+%{bash_compdir}/git-lfs
+
+%files -n fish-completion-git-lfs
+%defattr(644,root,root,755)
+%{fish_compdir}/git-lfs.fish
+
+%files -n zsh-completion-git-lfs
+%defattr(644,root,root,755)
+%{zsh_compdir}/_git-lfs
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/git-lfs.git/commitdiff/057aa3df6a80bedc68cd2b7a1c0bad63f5d536ad



More information about the pld-cvs-commit mailing list