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