]> git.pld-linux.org Git - packages/fzf.git/blob - fzf.spec
up to 0.26.0
[packages/fzf.git] / fzf.spec
1 # TODO:
2 # - package vendored modules
3 # - package fzf-tmux
4
5 %define         fzfrev          34fe5ab
6 %define         fzfvimrev       711fb41
7 %define         vendor_version  0.25.0
8
9 Summary:        A command-line fuzzy finder written in Go
10 Name:           fzf
11 Version:        0.26.0
12 Release:        1
13 License:        MIT
14 Group:          Applications/Shells
15 #Source0Download: https://github.com/junegunn/fzf/releases
16 Source0:        https://github.com/junegunn/fzf/archive/%{version}/%{name}-%{version}.tar.gz
17 # Source0-md5:  879cb804fc39bccda31062a07ad58769
18 # cd fzf-%{version}
19 # go mod vendor
20 # cd ..
21 # tar cJf fzf-vendor-%{version}.tar.xz fzf-%{version}/vendor
22 Source1:        %{name}-vendor-%{vendor_version}.tar.xz
23 # Source1-md5:  9795b87b236a0541c74bb828f52fff14
24 Source2:        https://github.com/junegunn/fzf.vim/archive/%{fzfvimrev}/fzf.vim-%{fzfvimrev}.tar.gz
25 # Source2-md5:  1a4ec38922f1a9b0483d2c7b4a1cc1a9
26 URL:            https://github.com/junegunn/fzf
27 BuildRequires:  golang >= 1.13
28 BuildRequires:  sed >= 4.0
29 BuildRequires:  tar >= 1:1.22
30 BuildRequires:  xz
31 ExclusiveArch:  %{x8664} armv5l armv5tel armv5tejl armv6l armv6hl armv7l armv7hl armv7hnl armv8l armv8hll armv8hnl armv8hcnl aarch64 ppc64le
32 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
33
34 %description
35 fzf is a general-purpose command-line fuzzy finder.
36
37 It's an interactive Unix filter for command-line that can be used with
38 any list; files, command history, processes, hostnames, bookmarks, git
39 commits, etc.
40
41 %package -n bash-completion-fzf
42 Summary:        bash-completion for fzf
43 Group:          Applications/Shells
44 Requires:       %{name} = %{version}-%{release}
45 Requires:       bash-completion >= 2.0
46 BuildArch:      noarch
47
48 %description -n bash-completion-fzf
49 bash-completion for fzf.
50
51 %package -n zsh-completion-fzf
52 Summary:        zsh-completion for fzf
53 Group:          Applications/Shells
54 Requires:       %{name} = %{version}-%{release}
55 Requires:       zsh
56 BuildArch:      noarch
57
58 %description -n zsh-completion-fzf
59 zsh-completion for fzf.
60
61 %package -n vim-plugin-fzf
62 Summary:        fzf integration for Vim
63 Group:          Applications/Editors/Vim
64 Requires:       %{name} >= 0.23.0
65 Requires:       file
66 Requires:       vim-rt
67 Suggests:       highlight
68 Suggests:       the_silver_searcher
69 BuildArch:      noarch
70
71 %description -n vim-plugin-fzf
72 fzf integration for Vim.
73
74 %package -n vim-plugin-fzf-doc
75 Summary:        Documentation for fzf Vim plugin
76 Group:          Applications/Editors/Vim
77 Requires:       vim-plugin-fzf = %{version}-%{release}
78 Requires:       vim-rt
79 BuildArch:      noarch
80
81 %description -n vim-plugin-fzf-doc
82 Documentation for fzf Vim plugin.
83
84 %prep
85 %setup -q -a1 -a2
86 %{__mv} fzf-%{vendor_version}/vendor .
87 %{__mv} fzf.vim-%{fzfvimrev}* fzf.vim
88 %{__sed} -i -e "s@let s:bin_dir = .*@let s:bin_dir = '%{_datadir}/fzf/vim/bin/'@" fzf.vim/autoload/fzf/vim.vim
89 %{__sed} -i -e '1s,.*env bash,#!/bin/bash,' fzf.vim/bin/preview.sh
90 %{__sed} -i -e '1s,.*env perl,#!%{__perl},' fzf.vim/bin/tags.pl
91
92 %build
93 %{__make} \
94 %ifarch armv5tl armv5tel arm5tejl
95         UNAME_M=armv5l \
96 %else
97 %ifarch armv6l armv6hl
98         UNAME_M=armv6l \
99 %else
100 %ifarch armv7l armv7hl armv7hnl
101         UNAME_M=armv6l \
102 %else
103 %ifarch armv8l armv8hl armv8hnl armv8hcnl
104         UNAME_M=armv8l \
105 %else
106         UNAME_M=%{_target_cpu} \
107 %endif
108 %endif
109 %endif
110 %endif
111         FZF_VERSION=%{version} FZF_REVISION=%{fzfrev} GOFLAGS=-mod=vendor
112
113 %install
114 rm -rf $RPM_BUILD_ROOT
115
116 install -d $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/fzf/vim/bin,%{_mandir}/man1,%{bash_compdir},%{zsh_compdir}}
117 install -d $RPM_BUILD_ROOT%{_datadir}/vim/{doc,autoload,plugin/fzf}
118
119 cp -p target/fzf-linux* $RPM_BUILD_ROOT%{_bindir}/fzf
120 cp -p man/man1/fzf.1 $RPM_BUILD_ROOT%{_mandir}/man1
121 cp -p shell/completion.bash $RPM_BUILD_ROOT%{_datadir}/fzf
122 cp -p shell/key-bindings.bash $RPM_BUILD_ROOT%{_datadir}/fzf
123 cp -p shell/completion.zsh $RPM_BUILD_ROOT%{_datadir}/fzf
124 cp -p shell/key-bindings.zsh $RPM_BUILD_ROOT%{_datadir}/fzf
125 cp -rp fzf.vim/autoload/fzf $RPM_BUILD_ROOT%{_datadir}/vim/autoload
126 cp -p plugin/fzf.vim $RPM_BUILD_ROOT%{_datadir}/vim/plugin/fzf.vim
127 cp -p fzf.vim/plugin/fzf.vim $RPM_BUILD_ROOT%{_datadir}/vim/plugin/fzf/fzf.vim
128 cp -p fzf.vim/doc/fzf-vim.txt $RPM_BUILD_ROOT%{_datadir}/vim/doc/fzf.txt
129 cp -p fzf.vim/bin/{preview.sh,tags.pl} $RPM_BUILD_ROOT%{_datadir}/fzf/vim/bin
130
131 %clean
132 rm -rf $RPM_BUILD_ROOT
133
134 %post -n vim-plugin-fzf-doc
135 %vim_doc_helptags
136
137 %postun -n vim-plugin-fzf-doc
138 %vim_doc_helptags
139
140 %files
141 %defattr(644,root,root,755)
142 %doc BUILD.md CHANGELOG.md README.md
143 %attr(755,root,root) %{_bindir}/fzf
144 %dir %{_datadir}/fzf
145 %{_mandir}/man1/fzf.1*
146
147 %files -n bash-completion-fzf
148 %defattr(644,root,root,755)
149 %{_datadir}/fzf/completion.bash
150 %{_datadir}/fzf/key-bindings.bash
151
152 %files -n zsh-completion-fzf
153 %defattr(644,root,root,755)
154 %{_datadir}/fzf/completion.zsh
155 %{_datadir}/fzf/key-bindings.zsh
156
157 %files -n vim-plugin-fzf
158 %defattr(644,root,root,755)
159 %doc README-VIM.md fzf.vim/README.md
160 %dir %{_datadir}/fzf/vim
161 %dir %{_datadir}/fzf/vim/bin
162 %attr(755,root,root) %{_datadir}/fzf/vim/bin/preview.sh
163 %attr(755,root,root) %{_datadir}/fzf/vim/bin/tags.pl
164 %{_datadir}/vim/autoload/fzf
165 %{_datadir}/vim/plugin/fzf.vim
166 %{_datadir}/vim/plugin/fzf
167
168 %files -n vim-plugin-fzf-doc
169 %defattr(644,root,root,755)
170 %{_datadir}/vim/doc/fzf.txt
This page took 0.074392 seconds and 3 git commands to generate.