]>
Commit | Line | Data |
---|---|---|
855f089b JP |
1 | # TODO: |
2 | # - package vendored modules | |
80124c64 | 3 | |
ef6f4d75 | 4 | %define fzfrev d01ae55 |
180ed27f | 5 | %define fzfvimrev 9ceac71 |
45c96c4f | 6 | %define fzfgitrev 9190e1b |
180ed27f | 7 | %define vendor_version 0.34.0 |
80124c64 | 8 | |
855f089b JP |
9 | Summary: A command-line fuzzy finder written in Go |
10 | Name: fzf | |
0caddac5 | 11 | Version: 0.35.1 |
ef0f8901 | 12 | Release: 2 |
855f089b JP |
13 | License: MIT |
14 | Group: Applications/Shells | |
15 | #Source0Download: https://github.com/junegunn/fzf/releases | |
f5228bc4 | 16 | Source0: https://github.com/junegunn/fzf/archive/%{version}/%{name}-%{version}.tar.gz |
0caddac5 | 17 | # Source0-md5: f8abbd5cf0a203516e39522a90bd4359 |
855f089b JP |
18 | # cd fzf-%{version} |
19 | # go mod vendor | |
20 | # cd .. | |
21 | # tar cJf fzf-vendor-%{version}.tar.xz fzf-%{version}/vendor | |
6659bc3c | 22 | Source1: %{name}-vendor-%{vendor_version}.tar.xz |
180ed27f | 23 | # Source1-md5: cd1672b3da7985ddc0709862274a007f |
468eb168 | 24 | Source2: https://github.com/junegunn/fzf.vim/archive/%{fzfvimrev}/fzf.vim-%{fzfvimrev}.tar.gz |
180ed27f | 25 | # Source2-md5: cf33165a5e500c85838fa994683b2e5d |
6d69ec0f | 26 | Source3: https://github.com/junegunn/fzf-git.sh/archive/%{fzfgitrev}/fzf-git.sh-%{fzfgitrev}.tar.gz |
45c96c4f JP |
27 | # Source3-md5: 66a5b104f7e6f67c0b4f8556f1a22583 |
28 | Patch0: install.patch | |
855f089b | 29 | URL: https://github.com/junegunn/fzf |
ef6f4d75 | 30 | BuildRequires: golang >= 1.17 |
697411e2 | 31 | BuildRequires: rpm-build >= 4.6 |
7c22ad0b | 32 | BuildRequires: rpmbuild(macros) >= 2.009 |
468eb168 | 33 | BuildRequires: sed >= 4.0 |
6659bc3c JP |
34 | BuildRequires: tar >= 1:1.22 |
35 | BuildRequires: xz | |
7c22ad0b | 36 | ExclusiveArch: %go_arches |
855f089b JP |
37 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
38 | ||
94f0d803 JP |
39 | %define _debugsource_packages 0 |
40 | ||
855f089b JP |
41 | %description |
42 | fzf is a general-purpose command-line fuzzy finder. | |
43 | ||
44 | It's an interactive Unix filter for command-line that can be used with | |
45 | any list; files, command history, processes, hostnames, bookmarks, git | |
46 | commits, etc. | |
47 | ||
18596e3a JP |
48 | %package tmux |
49 | Summary: Script for starting fzf in tmux pane | |
50 | Requires: %{name} = %{version}-%{release} | |
51 | Requires: coreutils | |
52 | Requires: tmux | |
53 | BuildArch: noarch | |
54 | ||
55 | %description tmux | |
56 | Script for starting fzf in tmux pane. | |
57 | ||
855f089b JP |
58 | %package -n bash-completion-fzf |
59 | Summary: bash-completion for fzf | |
60 | Group: Applications/Shells | |
61 | Requires: %{name} = %{version}-%{release} | |
c67783b0 | 62 | Requires: bash-completion >= 1:2.0 |
855f089b | 63 | BuildArch: noarch |
855f089b JP |
64 | |
65 | %description -n bash-completion-fzf | |
66 | bash-completion for fzf. | |
67 | ||
68 | %package -n zsh-completion-fzf | |
69 | Summary: zsh-completion for fzf | |
70 | Group: Applications/Shells | |
71 | Requires: %{name} = %{version}-%{release} | |
72 | Requires: zsh | |
855f089b | 73 | BuildArch: noarch |
855f089b JP |
74 | |
75 | %description -n zsh-completion-fzf | |
76 | zsh-completion for fzf. | |
77 | ||
6d69ec0f JP |
78 | %package git-sh |
79 | Summary: bash and zsh key bindings for Git objects, powered by fzf | |
80 | Group: Applications/Shells | |
81 | Requires: %{name}-tmux | |
82 | Requires: awk | |
83 | Requires: coreutils | |
84 | Requires: git-core | |
85 | Requires: grep | |
86 | Requires: sed | |
87 | Suggests: xdg-utils | |
88 | BuildArch: noarch | |
89 | ||
90 | %description git-sh | |
91 | bash and zsh key bindings for Git objects, powered by fzf. | |
92 | ||
855f089b JP |
93 | %package -n vim-plugin-fzf |
94 | Summary: fzf integration for Vim | |
95 | Group: Applications/Editors/Vim | |
468eb168 JP |
96 | Requires: %{name} >= 0.23.0 |
97 | Requires: file | |
855f089b | 98 | Requires: vim-rt |
468eb168 | 99 | Suggests: highlight |
bab453cc | 100 | Suggests: ripgrep |
468eb168 | 101 | Suggests: the_silver_searcher |
855f089b | 102 | BuildArch: noarch |
855f089b JP |
103 | |
104 | %description -n vim-plugin-fzf | |
105 | fzf integration for Vim. | |
106 | ||
107 | %package -n vim-plugin-fzf-doc | |
108 | Summary: Documentation for fzf Vim plugin | |
109 | Group: Applications/Editors/Vim | |
110 | Requires: vim-plugin-fzf = %{version}-%{release} | |
111 | Requires: vim-rt | |
855f089b | 112 | BuildArch: noarch |
855f089b JP |
113 | |
114 | %description -n vim-plugin-fzf-doc | |
115 | Documentation for fzf Vim plugin. | |
116 | ||
117 | %prep | |
6d69ec0f | 118 | %setup -q -a1 -a2 -a3 |
6659bc3c | 119 | %{__mv} fzf-%{vendor_version}/vendor . |
468eb168 | 120 | %{__mv} fzf.vim-%{fzfvimrev}* fzf.vim |
6d69ec0f | 121 | %{__mv} fzf-git.sh-%{fzfgitrev}* fzf-git |
45c96c4f | 122 | %patch0 -p1 |
468eb168 | 123 | %{__sed} -i -e "s@let s:bin_dir = .*@let s:bin_dir = '%{_datadir}/fzf/vim/bin/'@" fzf.vim/autoload/fzf/vim.vim |
f3dfd4e0 | 124 | %{__sed} -i -e '1s,.*env bash,#!/bin/bash,' fzf.vim/bin/preview.sh bin/fzf-tmux install |
468eb168 | 125 | %{__sed} -i -e '1s,.*env perl,#!%{__perl},' fzf.vim/bin/tags.pl |
855f089b | 126 | |
555ee184 JP |
127 | %{__mkdir_p} .go-cache |
128 | ||
855f089b | 129 | %build |
7c22ad0b | 130 | %__go build -v -mod=vendor -ldflags='-X main.version=%{version} -X main.revision=%{fzfrev}' -o target/fzf |
855f089b JP |
131 | |
132 | %install | |
133 | rm -rf $RPM_BUILD_ROOT | |
134 | ||
468eb168 JP |
135 | install -d $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/fzf/vim/bin,%{_mandir}/man1,%{bash_compdir},%{zsh_compdir}} |
136 | install -d $RPM_BUILD_ROOT%{_datadir}/vim/{doc,autoload,plugin/fzf} | |
855f089b | 137 | |
a6efc4bc | 138 | install -p target/fzf $RPM_BUILD_ROOT%{_bindir}/fzf |
f3dfd4e0 | 139 | install -p install $RPM_BUILD_ROOT%{_bindir}/fzf-install |
a6efc4bc | 140 | install -p bin/fzf-tmux $RPM_BUILD_ROOT%{_bindir}/fzf-tmux |
855f089b | 141 | cp -p man/man1/fzf.1 $RPM_BUILD_ROOT%{_mandir}/man1 |
27c72a25 | 142 | cp -p shell/completion.bash $RPM_BUILD_ROOT%{_datadir}/fzf |
855f089b | 143 | cp -p shell/key-bindings.bash $RPM_BUILD_ROOT%{_datadir}/fzf |
27c72a25 | 144 | cp -p shell/completion.zsh $RPM_BUILD_ROOT%{_datadir}/fzf |
855f089b | 145 | cp -p shell/key-bindings.zsh $RPM_BUILD_ROOT%{_datadir}/fzf |
6d69ec0f | 146 | cp -p fzf-git/fzf-git.sh $RPM_BUILD_ROOT%{_datadir}/fzf |
468eb168 JP |
147 | cp -rp fzf.vim/autoload/fzf $RPM_BUILD_ROOT%{_datadir}/vim/autoload |
148 | cp -p plugin/fzf.vim $RPM_BUILD_ROOT%{_datadir}/vim/plugin/fzf.vim | |
149 | cp -p fzf.vim/plugin/fzf.vim $RPM_BUILD_ROOT%{_datadir}/vim/plugin/fzf/fzf.vim | |
150 | cp -p fzf.vim/doc/fzf-vim.txt $RPM_BUILD_ROOT%{_datadir}/vim/doc/fzf.txt | |
151 | cp -p fzf.vim/bin/{preview.sh,tags.pl} $RPM_BUILD_ROOT%{_datadir}/fzf/vim/bin | |
855f089b JP |
152 | |
153 | %clean | |
154 | rm -rf $RPM_BUILD_ROOT | |
155 | ||
60c4a75f ER |
156 | %post |
157 | %banner -o -e %{name} <<EOF | |
158 | ==> Caveats | |
159 | To install useful keybindings and fuzzy completion: | |
160 | fzf-install | |
161 | EOF | |
162 | ||
855f089b JP |
163 | %post -n vim-plugin-fzf-doc |
164 | %vim_doc_helptags | |
165 | ||
166 | %postun -n vim-plugin-fzf-doc | |
167 | %vim_doc_helptags | |
168 | ||
169 | %files | |
170 | %defattr(644,root,root,755) | |
171 | %doc BUILD.md CHANGELOG.md README.md | |
172 | %attr(755,root,root) %{_bindir}/fzf | |
f3dfd4e0 | 173 | %attr(755,root,root) %{_bindir}/fzf-install |
855f089b JP |
174 | %dir %{_datadir}/fzf |
175 | %{_mandir}/man1/fzf.1* | |
176 | ||
18596e3a JP |
177 | %files tmux |
178 | %defattr(644,root,root,755) | |
179 | %attr(755,root,root) %{_bindir}/fzf-tmux | |
180 | ||
855f089b JP |
181 | %files -n bash-completion-fzf |
182 | %defattr(644,root,root,755) | |
27c72a25 | 183 | %{_datadir}/fzf/completion.bash |
855f089b JP |
184 | %{_datadir}/fzf/key-bindings.bash |
185 | ||
186 | %files -n zsh-completion-fzf | |
187 | %defattr(644,root,root,755) | |
27c72a25 | 188 | %{_datadir}/fzf/completion.zsh |
855f089b JP |
189 | %{_datadir}/fzf/key-bindings.zsh |
190 | ||
6d69ec0f JP |
191 | %files git-sh |
192 | %defattr(644,root,root,755) | |
193 | %doc fzf-git/README.md | |
194 | %{_datadir}/fzf/fzf-git.sh | |
195 | ||
855f089b JP |
196 | %files -n vim-plugin-fzf |
197 | %defattr(644,root,root,755) | |
468eb168 JP |
198 | %doc README-VIM.md fzf.vim/README.md |
199 | %dir %{_datadir}/fzf/vim | |
200 | %dir %{_datadir}/fzf/vim/bin | |
201 | %attr(755,root,root) %{_datadir}/fzf/vim/bin/preview.sh | |
202 | %attr(755,root,root) %{_datadir}/fzf/vim/bin/tags.pl | |
203 | %{_datadir}/vim/autoload/fzf | |
204 | %{_datadir}/vim/plugin/fzf.vim | |
205 | %{_datadir}/vim/plugin/fzf | |
855f089b JP |
206 | |
207 | %files -n vim-plugin-fzf-doc | |
208 | %defattr(644,root,root,755) | |
209 | %{_datadir}/vim/doc/fzf.txt |