rust-skim/rust-skim.spec

135 lines
3.2 KiB
RPMSpec

# Generated by rust2rpm 17
%bcond_without check
%global crate skim
Name: rust-%{crate}
Version: 0.9.4
Release: %autorelease
Summary: Fuzzy Finder in Rust
# Upstream license specification: MIT
License: MIT
URL: https://crates.io/crates/skim
Source: %{crates_source}
# Initial patched metadata
# * bump from nix 0.19 to 0.20
# * bump from vte 0.9 to 0.10
# * bump from shlex to 1
Patch0: skim-fix-metadata.diff
ExclusiveArch: %{rust_arches}
%if %{__cargo_skip_build}
BuildArch: noarch
%endif
BuildRequires: rust-packaging
%global _description %{expand:
Fuzzy Finder in rust!.}
%description %{_description}
%if ! %{__cargo_skip_build}
%package -n %{crate}
Summary: %{summary}
# ASL 2.0 or MIT
# MIT
# MIT or ASL 2.0
# MPLv2.0
# Unlicense or MIT
License: MIT and MPLv2.0
%description -n %{crate} %{_description}
%files -n %{crate}
%license LICENSE
%doc README.md CHANGELOG.md
%{_bindir}/sk
%{_bindir}/sk-tmux
%{_mandir}/man1/sk.1*
%{_mandir}/man1/sk-tmux.1*
%{_datadir}/skim/
%{_datadir}/vim/vimfiles/plugin/skim.vim
%{_datadir}/nvim/site/plugin/skim.vim
%dir %{_datadir}/bash-completion
%dir %{_datadir}/bash-completion/completions
%{_datadir}/bash-completion/completions/sk
%dir %{_datadir}/zsh
%dir %{_datadir}/zsh/site-functions
%{_datadir}/zsh/site-functions/_sk
%endif
%package devel
Summary: %{summary}
BuildArch: noarch
%description devel %{_description}
This package contains library source intended for building other packages
which use "%{crate}" crate.
%files devel
%license LICENSE
%doc README.md CHANGELOG.md
%{cargo_registry}/%{crate}-%{version_no_tilde}/
%package -n %{name}+default-devel
Summary: %{summary}
BuildArch: noarch
%description -n %{name}+default-devel %{_description}
This package contains library source intended for building other packages
which use "default" feature of "%{crate}" crate.
%files -n %{name}+default-devel
%ghost %{cargo_registry}/%{crate}-%{version_no_tilde}/Cargo.toml
%prep
%autosetup -n %{crate}-%{version_no_tilde} -p1
# Cleanup interpreters
sed -i -e '/^#!\//, 1d' shell/completion.*
sed -i -e '1d;2i#!/bin/bash' bin/sk-tmux
%cargo_prep
%generate_buildrequires
%cargo_generate_buildrequires
%build
%cargo_build
%install
%cargo_install
install -Dpm0755 -t %{buildroot}%{_bindir} \
bin/sk-tmux
install -Dpm0644 -t %{buildroot}%{_mandir}/man1 \
man/man1/*
install -d %{buildroot}%{_datadir}/skim
# Install vim plugin
install -Dpm0644 -t %{buildroot}%{_datadir}/vim/vimfiles/plugin \
plugin/skim.vim
install -Dpm0644 -t %{buildroot}%{_datadir}/nvim/site/plugin \
plugin/skim.vim
# Install shell completion
install -Dpm0644 shell/completion.bash %{buildroot}%{_datadir}/bash-completion/completions/sk
install -Dpm0644 shell/completion.zsh %{buildroot}%{_datadir}/zsh/site-functions/_sk
# Install shell key bindings (not enabled)
install -Dpm0644 -t %{buildroot}%{_datadir}/skim/shell \
shell/key-bindings.*
%if %{with check}
%check
# * integer overflow in test code on 32-bit architectures
# https://github.com/lotabout/skim/issues/415
# * rustc crashes during doctest compilation on aarch64
%cargo_test -- --lib -- --skip test_atoi
%endif
%changelog
%autochangelog