Files
fedora/rust-tiny-dfr/rust-tiny-dfr.spec
2024-07-29 14:14:40 -07:00

108 lines
2.8 KiB
RPMSpec

# Generated by rust2rpm 26
%bcond_without check
%global crate tiny-dfr
Name: rust-tiny-dfr
Version: 0.3.1
Release: 1%{?dist}
Summary: Most basic dynamic function row daemon possible
License: MIT AND Apache-2.0
URL: https://crates.io/crates/tiny-dfr
Source: %{crates_source}
# Manually created patch for downstream crate metadata changes
# * bump cairo-rs dependency from 0.18 to 0.19
# * bump freetype-rs dependency from 0.32 to 0.35
# * restrict librsvg dependency from 2.56 to ~2.58:
# the librsvg crate does not follow SemVer versioning
Patch: tiny-dfr-fix-metadata.diff
BuildRequires: cargo-rpm-macros >= 24
BuildRequires: systemd-rpm-macros
# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
ExcludeArch: %{ix86}
%global _description %{expand:
The most basic dynamic function row daemon possible.}
%description %{_description}
%package -n %{crate}
Summary: %{summary}
# (Apache-2.0 OR MIT) AND BSD-3-Clause
# (MIT OR Apache-2.0) AND Unicode-DFS-2016
# 0BSD OR MIT OR Apache-2.0
# Apache-2.0
# Apache-2.0 OR MIT
# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
# ISC
# LGPL-2.1-or-later
# MIT
# MIT AND Apache-2.0
# MIT OR Apache-2.0
# MIT OR Apache-2.0 OR Zlib
# MIT OR Zlib OR Apache-2.0
# MPL-2.0
# Unlicense OR MIT
# Zlib OR Apache-2.0 OR MIT
License: Apache-2.0 AND BSD-3-Clause AND ISC AND LGPL-2.1-or-later AND MIT AND MPL-2.0 AND Unicode-DFS-2016 AND (Apache-2.0 OR MIT) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (Unlicense OR MIT)
# LICENSE.dependencies contains a full license breakdown
%description -n %{crate} %{_description}
%files -n %{crate}
%license LICENSE
%license LICENSE.material
%license LICENSE.dependencies
%doc README.md
%{_bindir}/tiny-dfr
%{_datadir}/%{crate}/
%{_udevrulesdir}/*.rules
%{_unitdir}/*.service
%dir %{_sysconfdir}/%{crate}/
%config(noreplace) %ghost %{_sysconfdir}/%{crate}/config.toml
%prep
%autosetup -n %{crate}-%{version} -p1 -N
%if 0%{?fedora} >= 40
%autopatch
%endif
%cargo_prep
%generate_buildrequires
%cargo_generate_buildrequires
%build
%cargo_build
%{cargo_license_summary}
%{cargo_license} > LICENSE.dependencies
%install
%cargo_install
install -Dpm0644 -t %{buildroot}%{_datadir}/%{crate} \
share/%{crate}/*.svg \
share/%{crate}/config.toml
install -Ddpm0755 %{buildroot}%{_sysconfdir}/%{crate}
touch %{buildroot}%{_sysconfdir}/%{crate}/config.toml
install -Dpm0644 -t %{buildroot}%{_udevrulesdir} etc/udev/rules.d/*.rules
install -Dpm0644 -t %{buildroot}%{_unitdir} etc/systemd/system/*.service
%post -n %{crate}
%systemd_post %{crate}.service
%preun -n %{crate}
%systemd_preun %{crate}.service
%postun -n %{crate}
%systemd_postun_with_restart %{crate}.service
%if %{with check}
%check
%cargo_test
%endif
%changelog