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