]> git.pld-linux.org Git - packages/fzf.git/blobdiff - fzf.spec
up to 0.37.0
[packages/fzf.git] / fzf.spec
index aae4d440b3b7a277d9979c748cd88dceb9b88740..4fa82ed32b5eea4d69049252ed14cd36d8d9a326 100644 (file)
--- a/fzf.spec
+++ b/fzf.spec
@@ -1,36 +1,39 @@
 # TODO:
 # - package vendored modules
-# - package fzf-tmux
 
-%define                fzfrev          dc975e8
-%define                fzfvimrev       d6aa214
-%define                vendor_version  0.29.0
+%define                fzfrev          2023012
+%define                fzfvimrev       bdf48c2
+%define                fzfgitrev       f36662f
+%define                vendor_version  0.36.0
 
 Summary:       A command-line fuzzy finder written in Go
 Name:          fzf
-Version:       0.29.0
+Version:       0.37.0
 Release:       1
 License:       MIT
 Group:         Applications/Shells
 #Source0Download: https://github.com/junegunn/fzf/releases
 Source0:       https://github.com/junegunn/fzf/archive/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 14e78c2e66dd98b8e968b6c8fb4c14dd
+# Source0-md5: 96c20229f334e1ea65ad518ed86306fe
 # cd fzf-%{version}
 # go mod vendor
 # cd ..
 # tar cJf fzf-vendor-%{version}.tar.xz fzf-%{version}/vendor
 Source1:       %{name}-vendor-%{vendor_version}.tar.xz
-# Source1-md5: 00d39a9c8468733484cf40b3426ac20b
+# Source1-md5: f941f7b20b49adc008601ab08b77fcfc
 Source2:       https://github.com/junegunn/fzf.vim/archive/%{fzfvimrev}/fzf.vim-%{fzfvimrev}.tar.gz
-# Source2-md5: 498bb479ca34cff6116c3c7184476d63
+# Source2-md5: 5012ec9cf82ad8304c5482d157367198
+Source3:       https://github.com/junegunn/fzf-git.sh/archive/%{fzfgitrev}/fzf-git.sh-%{fzfgitrev}.tar.gz
+# Source3-md5: eda69981d582c3d092712e4385b995d6
+Patch0:                install.patch
 URL:           https://github.com/junegunn/fzf
-BuildRequires: golang >= 1.13
+BuildRequires: golang >= 1.17
 BuildRequires: rpm-build >= 4.6
-BuildRequires: rpmbuild(macros) >= 2.005
+BuildRequires: rpmbuild(macros) >= 2.009
 BuildRequires: sed >= 4.0
 BuildRequires: tar >= 1:1.22
 BuildRequires: xz
-ExclusiveArch: %{ix86} %{x8664} %{arm} aarch64 mips64 mips64le ppc64 ppc64le s390x
+ExclusiveArch: %go_arches
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                _debugsource_packages   0
@@ -42,11 +45,21 @@ It's an interactive Unix filter for command-line that can be used with
 any list; files, command history, processes, hostnames, bookmarks, git
 commits, etc.
 
+%package tmux
+Summary:       Script for starting fzf in tmux pane
+Requires:      %{name} = %{version}-%{release}
+Requires:      coreutils
+Requires:      tmux
+BuildArch:     noarch
+
+%description tmux
+Script for starting fzf in tmux pane.
+
 %package -n bash-completion-fzf
 Summary:       bash-completion for fzf
 Group:         Applications/Shells
 Requires:      %{name} = %{version}-%{release}
-Requires:      bash-completion >= 2.0
+Requires:      bash-completion >= 1:2.0
 BuildArch:     noarch
 
 %description -n bash-completion-fzf
@@ -62,6 +75,21 @@ BuildArch:   noarch
 %description -n zsh-completion-fzf
 zsh-completion for fzf.
 
+%package git-sh
+Summary:       bash and zsh key bindings for Git objects, powered by fzf
+Group:         Applications/Shells
+Requires:      %{name}-tmux
+Requires:      awk
+Requires:      coreutils
+Requires:      git-core
+Requires:      grep
+Requires:      sed
+Suggests:      xdg-utils
+BuildArch:     noarch
+
+%description git-sh
+bash and zsh key bindings for Git objects, powered by fzf.
+
 %package -n vim-plugin-fzf
 Summary:       fzf integration for Vim
 Group:         Applications/Editors/Vim
@@ -87,17 +115,19 @@ BuildArch: noarch
 Documentation for fzf Vim plugin.
 
 %prep
-%setup -q -a1 -a2
+%setup -q -a1 -a2 -a3
 %{__mv} fzf-%{vendor_version}/vendor .
 %{__mv} fzf.vim-%{fzfvimrev}* fzf.vim
+%{__mv} fzf-git.sh-%{fzfgitrev}* fzf-git
+%patch0 -p1
 %{__sed} -i -e "s@let s:bin_dir = .*@let s:bin_dir = '%{_datadir}/fzf/vim/bin/'@" fzf.vim/autoload/fzf/vim.vim
-%{__sed} -i -e '1s,.*env bash,#!/bin/bash,' fzf.vim/bin/preview.sh
+%{__sed} -i -e '1s,.*env bash,#!/bin/bash,' fzf.vim/bin/preview.sh bin/fzf-tmux install
 %{__sed} -i -e '1s,.*env perl,#!%{__perl},' fzf.vim/bin/tags.pl
 
 %{__mkdir_p} .go-cache
 
 %build
-GOCACHE="$(pwd)/.go-cache" go build -v -mod=vendor -ldflags='-X main.version=%{version} -X main.revision=%{fzfrev}' -o target/fzf
+%__go build -v -mod=vendor -ldflags='-X main.version=%{version} -X main.revision=%{fzfrev}' -o target/fzf
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -105,12 +135,15 @@ rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/fzf/vim/bin,%{_mandir}/man1,%{bash_compdir},%{zsh_compdir}}
 install -d $RPM_BUILD_ROOT%{_datadir}/vim/{doc,autoload,plugin/fzf}
 
-cp -p target/fzf $RPM_BUILD_ROOT%{_bindir}/fzf
+install -p target/fzf $RPM_BUILD_ROOT%{_bindir}/fzf
+install -p install $RPM_BUILD_ROOT%{_bindir}/fzf-install
+install -p bin/fzf-tmux $RPM_BUILD_ROOT%{_bindir}/fzf-tmux
 cp -p man/man1/fzf.1 $RPM_BUILD_ROOT%{_mandir}/man1
 cp -p shell/completion.bash $RPM_BUILD_ROOT%{_datadir}/fzf
 cp -p shell/key-bindings.bash $RPM_BUILD_ROOT%{_datadir}/fzf
 cp -p shell/completion.zsh $RPM_BUILD_ROOT%{_datadir}/fzf
 cp -p shell/key-bindings.zsh $RPM_BUILD_ROOT%{_datadir}/fzf
+cp -p fzf-git/fzf-git.sh $RPM_BUILD_ROOT%{_datadir}/fzf
 cp -rp fzf.vim/autoload/fzf $RPM_BUILD_ROOT%{_datadir}/vim/autoload
 cp -p plugin/fzf.vim $RPM_BUILD_ROOT%{_datadir}/vim/plugin/fzf.vim
 cp -p fzf.vim/plugin/fzf.vim $RPM_BUILD_ROOT%{_datadir}/vim/plugin/fzf/fzf.vim
@@ -120,6 +153,13 @@ cp -p fzf.vim/bin/{preview.sh,tags.pl} $RPM_BUILD_ROOT%{_datadir}/fzf/vim/bin
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%post
+%banner -o -e %{name} <<EOF
+==> Caveats
+To install useful keybindings and fuzzy completion:
+  fzf-install
+EOF
+
 %post -n vim-plugin-fzf-doc
 %vim_doc_helptags
 
@@ -130,9 +170,14 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %doc BUILD.md CHANGELOG.md README.md
 %attr(755,root,root) %{_bindir}/fzf
+%attr(755,root,root) %{_bindir}/fzf-install
 %dir %{_datadir}/fzf
 %{_mandir}/man1/fzf.1*
 
+%files tmux
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/fzf-tmux
+
 %files -n bash-completion-fzf
 %defattr(644,root,root,755)
 %{_datadir}/fzf/completion.bash
@@ -143,6 +188,11 @@ rm -rf $RPM_BUILD_ROOT
 %{_datadir}/fzf/completion.zsh
 %{_datadir}/fzf/key-bindings.zsh
 
+%files git-sh
+%defattr(644,root,root,755)
+%doc fzf-git/README.md
+%{_datadir}/fzf/fzf-git.sh
+
 %files -n vim-plugin-fzf
 %defattr(644,root,root,755)
 %doc README-VIM.md fzf.vim/README.md
This page took 0.076251 seconds and 4 git commands to generate.