diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a2e8028 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/exa-0.8.0.crate diff --git a/exa-0.8.0-fix-metadata.diff b/exa-0.8.0-fix-metadata.diff new file mode 100644 index 0000000..a5bdcab --- /dev/null +++ b/exa-0.8.0-fix-metadata.diff @@ -0,0 +1,37 @@ +--- exa-0.8.0/Cargo.toml 1970-01-01T01:00:00+01:00 ++++ exa-0.8.0/Cargo.toml 2017-11-27T11:50:10.756724+01:00 +@@ -51,9 +51,6 @@ + [dependencies.unicode-width] + version = "0.1.4" + +-[dependencies.getopts] +-version = "0.2.14" +- + [dependencies.glob] + version = "0.2" + +@@ -64,13 +61,13 @@ + version = "1.3.0" + + [dependencies.users] +-version = "0.5.2" ++version = "0.6" + + [dependencies.term_size] + version = "0.3.0" + + [dependencies.ansi_term] +-version = "0.8.0" ++version = "0.10.2" + + [dependencies.libc] + version = "0.2.9" +@@ -84,7 +81,7 @@ + default-features = false + + [dependencies.env_logger] +-version = "0.3" ++version = "0.4" + + [dependencies.locale] + version = "0.2.1" diff --git a/rust-exa.spec b/rust-exa.spec new file mode 100644 index 0000000..b847583 --- /dev/null +++ b/rust-exa.spec @@ -0,0 +1,107 @@ +# 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 +%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 - 0.8.0-1 +- Initial package diff --git a/sources b/sources new file mode 100644 index 0000000..981df52 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (exa-0.8.0.crate) = 96671429c4b4a56021eb0f33a6a84eb332946690fe1bfde273ccbfa3b86d0cf0d1a47a5f28677dcd39bbfcf77d20070355428eaf6226b27313a7752ce09e773c