1 %define crates_ver 0.11.3
3 Summary: A viewer for git and diff output
9 Source0: https://github.com/dandavison/delta/archive/%{version}/%{name}-%{version}.tar.gz
10 # Source0-md5: c640b52ae79903e446f3501209cfee84
12 Source1: %{name}-crates-%{crates_ver}.tar.xz
13 # Source1-md5: 8024cf08d66dac0985248fa49a69fd96
14 URL: https://github.com/dandavison/delta
16 BuildRequires: libgit2-devel >= 1.1.0
17 BuildRequires: oniguruma-devel >= 6.9.3
18 BuildRequires: pkgconfig
19 BuildRequires: rpmbuild(macros) >= 2.004
21 BuildRequires: tar >= 1:1.22
23 Requires: libgit2 >= 1.1.0
24 Requires: oniguruma >= 6.9.3
25 ExclusiveArch: %{rust_arches}
26 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29 Delta aims to make studying diffs both efficient and enjoyable: it
30 allows you to make extensive changes to the layout and styling of
31 diffs, as well as allowing you to stay arbitrarily close to the
32 default git/diff output, changing just the aspects that you want to
35 Delta's main features are:
37 - Language syntax highlighting with color themes
38 - Within-line highlights based on a Levenshtein edit inference
40 - Style (foreground color, background color, font attributes) can be
41 configured independently for more than 20 different sections of the
43 - Stylable box/line decorations to draw attention to commit, file and
45 - Line numbering (`-n`)
46 - `--diff-highlight` and `--diff-so-fancy` emulation modes
47 - Code can be copied directly from the diff (`-/+` markers are removed
49 - `n` and `N` keybindings to move between files in large diffs, and
50 between diffs in `log -p` views (`--navigate`) A viewer for git and
56 %{__mv} delta-%{crates_ver}/* .
57 sed -i -e 's/@@VERSION@@/%{version}/' Cargo.lock
59 # use our offline registry
60 export CARGO_HOME="$(pwd)/.cargo"
62 mkdir -p "$CARGO_HOME"
63 cat >.cargo/config <<EOF
65 registry = 'https://github.com/rust-lang/crates.io-index'
66 replace-with = 'vendored-sources'
68 [source.vendored-sources]
69 directory = '$PWD/vendor'
73 export CARGO_HOME="$(pwd)/.cargo"
74 export RUSTONIG_SYSTEM_LIBONIG=true
79 rm -rf $RPM_BUILD_ROOT
80 export CARGO_HOME="$(pwd)/.cargo"
82 %cargo_install --frozen --root $RPM_BUILD_ROOT%{_prefix} --path $PWD
83 %{__rm} $RPM_BUILD_ROOT%{_prefix}/.crates*
86 rm -rf $RPM_BUILD_ROOT
89 %defattr(644,root,root,755)
91 %attr(755,root,root) %{_bindir}/delta