Blob Blame History Raw
# Generated by rust2rpm
%bcond_without check

%global crate exa

Name:           rust-%{crate}
Version:        0.8.0
Release:        1%{?dist}
Summary:        Modern replacement for ls

License:        MIT
URL:            https://crates.io/crates/exa
Source0:        https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate
# Initial patched metadata
# * Bump ansi_term to 0.10, remove getopts, https://github.com/ogham/exa/commit/4c3fd5483d2eff2ea1e623878ede54eaa396e09e
# * Bump env_logger to 0.4, https://github.com/ogham/exa/pull/315
# * Bump users to 0.6, https://github.com/ogham/exa/pull/317
Patch0:         exa-0.8.0-fix-metadata.diff

ExclusiveArch:  %{rust_arches}

BuildRequires:  rust-packaging
# [dependencies]
BuildRequires:  (crate(ansi_term) >= 0.10.2 with crate(ansi_term) < 0.11.0)
BuildRequires:  (crate(datetime) >= 0.4.5 with crate(datetime) < 0.5.0)
BuildRequires:  (crate(env_logger) >= 0.4.0 with crate(env_logger) < 0.5.0)
BuildRequires:  (crate(git2) >= 0.6.4 with crate(git2) < 0.7.0)
BuildRequires:  (crate(glob) >= 0.2.0 with crate(glob) < 0.3.0)
BuildRequires:  (crate(lazy_static) >= 0.2.0 with crate(lazy_static) < 0.3.0)
BuildRequires:  (crate(libc) >= 0.2.9 with crate(libc) < 0.3.0)
BuildRequires:  (crate(locale) >= 0.2.1 with crate(locale) < 0.3.0)
BuildRequires:  (crate(log) >= 0.3.0 with crate(log) < 0.4.0)
BuildRequires:  (crate(natord) >= 1.0.7 with crate(natord) < 2.0.0)
BuildRequires:  (crate(num_cpus) >= 1.3.0 with crate(num_cpus) < 2.0.0)
BuildRequires:  (crate(number_prefix) >= 0.2.3 with crate(number_prefix) < 0.3.0)
BuildRequires:  (crate(scoped_threadpool) >= 0.1.0 with crate(scoped_threadpool) < 0.2.0)
BuildRequires:  (crate(term_grid) >= 0.1.6 with crate(term_grid) < 0.2.0)
BuildRequires:  (crate(term_size) >= 0.3.0 with crate(term_size) < 0.4.0)
BuildRequires:  (crate(unicode-width) >= 0.1.4 with crate(unicode-width) < 0.2.0)
BuildRequires:  (crate(users) >= 0.6.0 with crate(users) < 0.7.0)
BuildRequires:  (crate(zoneinfo_compiled) >= 0.4.5 with crate(zoneinfo_compiled) < 0.5.0)

%description
%{summary}.

%package     -n %{crate}
Summary:        %{summary}

%description -n %{crate}
%{summary}.

%package        devel
Summary:        %{summary}
BuildArch:      noarch

%description    devel
A modern replacement for ls.

This package contains library source intended for building other packages
which use %{crate} from crates.io.

%prep
%autosetup -n %{crate}-%{version} -p1
%cargo_prep

%build
%cargo_build

%install
%cargo_install
%{__install} -Dpm0644 -t %{buildroot}%{_mandir}/man1 contrib/man/exa.1
%{__install} -Dpm0644 -T contrib/completions.bash \
  %{buildroot}%{_datadir}/bash-completion/completions/exa.bash
%{__install} -Dpm0644 -T contrib/completions.fish \
  %{buildroot}%{_datadir}/fish/vendor_functions.d/exa.fish
%{__install} -Dpm0644 -T contrib/completions.zsh \
  %{buildroot}%{_datadir}/zsh/site-functions/_exa

%if %{with check}
%check
# https://github.com/ogham/exa/issues/318
%cargo_test || :
%endif

%files       -n %{crate}
%license LICENCE
%doc README.md
%{_bindir}/exa
%{_mandir}/man1/exa.1*
%dir %{_datadir}/bash-completion
%dir %{_datadir}/bash-completion/completions
%{_datadir}/bash-completion/completions/exa.bash
%dir %{_datadir}/fish
%dir %{_datadir}/fish/vendor_functions.d
%{_datadir}/fish/vendor_functions.d/exa.fish
%dir %{_datadir}/zsh
%dir %{_datadir}/zsh/site-functions
%{_datadir}/zsh/site-functions/_exa

%files          devel
%license LICENCE
%doc README.md
%{cargo_registry}/%{crate}-%{version}/
%exclude %{cargo_registry}/%{crate}-%{version}/{Makefile,Vagrantfile,contrib,devtools,screenshots.png,xtests}

%changelog
* Tue Nov 21 2017 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 0.8.0-1
- Initial package