]> git.pld-linux.org Git - packages/delta.git/blob - delta.spec
a1b04cfcb03657ae99b6152bbf5f43561992a8ab
[packages/delta.git] / delta.spec
1 %define         crates_ver      0.13.0
2
3 Summary:        A viewer for git and diff output
4 Name:           delta
5 Version:        0.13.0
6 Release:        2
7 License:        MIT
8 Group:          Applications
9 Source0:        https://github.com/dandavison/delta/archive/%{version}/%{name}-%{version}.tar.gz
10 # Source0-md5:  c454b868e611970969c3af205336f8d4
11 Source1:        %{name}-crates-%{crates_ver}.tar.xz
12 # Source1-md5:  e721fa2f04b67472c87362b34a01f8db
13 URL:            https://github.com/dandavison/delta
14 BuildRequires:  cargo
15 BuildRequires:  libgit2-devel >= 1.4.0
16 BuildRequires:  oniguruma-devel >= 6.9.3
17 BuildRequires:  pkgconfig
18 BuildRequires:  rpmbuild(macros) >= 2.004
19 BuildRequires:  rust
20 BuildRequires:  tar >= 1:1.22
21 BuildRequires:  xz
22 Requires:       libgit2 >= 1.4.0
23 Requires:       oniguruma >= 6.9.3
24 ExclusiveArch:  %{rust_arches}
25 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
26
27 %description
28 Delta aims to make studying diffs both efficient and enjoyable: it
29 allows you to make extensive changes to the layout and styling of
30 diffs, as well as allowing you to stay arbitrarily close to the
31 default git/diff output, changing just the aspects that you want to
32 change.
33
34 Delta's main features are:
35
36 - Language syntax highlighting with color themes
37 - Within-line highlights based on a Levenshtein edit inference
38   algorithm
39 - Style (foreground color, background color, font attributes) can be
40   configured independently for more than 20 different sections of the
41   diff
42 - Stylable box/line decorations to draw attention to commit, file and
43   hunk header sections.
44 - Line numbering (`-n`)
45 - `--diff-highlight` and `--diff-so-fancy` emulation modes
46 - Code can be copied directly from the diff (`-/+` markers are removed
47   by default).
48 - `n` and `N` keybindings to move between files in large diffs, and
49   between diffs in `log -p` views (`--navigate`) A viewer for git and
50   diff output.
51
52 %prep
53 %setup -q -a1
54
55 %{__mv} delta-%{crates_ver}/* .
56 sed -i -e 's/@@VERSION@@/%{version}/' Cargo.lock
57
58 # use our offline registry
59 export CARGO_HOME="$(pwd)/.cargo"
60
61 mkdir -p "$CARGO_HOME"
62 cat >.cargo/config <<EOF
63 [source.crates-io]
64 registry = 'https://github.com/rust-lang/crates.io-index'
65 replace-with = 'vendored-sources'
66
67 [source.vendored-sources]
68 directory = '$PWD/vendor'
69 EOF
70
71 %build
72 export CARGO_HOME="$(pwd)/.cargo"
73 export RUSTONIG_SYSTEM_LIBONIG=true
74
75 %cargo_build --frozen
76
77 %install
78 rm -rf $RPM_BUILD_ROOT
79 export CARGO_HOME="$(pwd)/.cargo"
80
81 %cargo_install --frozen --root $RPM_BUILD_ROOT%{_prefix} --path $PWD
82 %{__rm} $RPM_BUILD_ROOT%{_prefix}/.crates*
83
84 %clean
85 rm -rf $RPM_BUILD_ROOT
86
87 %files
88 %defattr(644,root,root,755)
89 %doc README.md
90 %attr(755,root,root) %{_bindir}/delta
This page took 0.06754 seconds and 2 git commands to generate.