%bcond_without check %global debug_package %{nil} %global crate podmod %global cargo_out_dir target/release/ Name: rust-%{crate} Version: 0.4.3 Release: 1%{?dist} Summary: Containerized build system for kernel modules on Fedora License: GPL-2.0-or-later URL: https://crates.io/crates/%{crate} Source0: %{crates_source} ExclusiveArch: %{rust_arches} BuildRequires: rust-packaging BuildRequires: systemd-rpm-macros Requires: podman %global _description %{expand: Builds a kernel module from source inside a Podman container. Targeted for Fedora Silverblue / Kinoite, but also works for other editions.} %description %{_description} %package -n %{crate} Summary: %{summary} %description -n %{crate} %{_description} %files -n %{crate} %license COPYING %doc README.md %doc CHANGELOG.md %{_sbindir}/podmod %{_datadir}/podmod/ %{_datadir}/bash-completion/completions/%{crate} %{_datadir}/zsh/site-functions/_%{crate} %{_datadir}/fish/vendor_completions.d/%{crate}.fish %{_mandir}/ %{_sysconfdir}/podmod.conf %{_unitdir}/podmod@.service %package devel Summary: %{summary} BuildArch: noarch %description devel %{_description} This package contains library source intended for building other packages which use the "%{crate}" crate. %files devel %{crate_instdir}/ %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 the "default" feature of the "%{crate}" crate. %files -n %{name}+default-devel %ghost %{crate_instdir}/Cargo.toml %prep %autosetup -n %{crate}-%{version_no_tilde} -p1 %cargo_prep %generate_buildrequires %cargo_generate_buildrequires %build %cargo_build %install %cargo_install mv %{buildroot}%{_bindir} %{buildroot}%{_sbindir} mkdir -p %{buildroot}%{_datadir} mkdir -p %{buildroot}%{_datadir}/bash-completion/completions/ mkdir -p %{buildroot}%{_datadir}/zsh/site-functions/ mkdir -p %{buildroot}%{_datadir}/fish/vendor_completions.d/ mkdir -p %{buildroot}%{_mandir}/man8/ %{buildroot}%{_mandir}/man5/ mkdir -p %{buildroot}%{_sysconfdir} mkdir -p %{buildroot}%{_unitdir} cp -pr share/ %{buildroot}%{_datadir}/podmod/ install -p -m0644 %{cargo_out_dir}/podmod.bash %{buildroot}%{_datadir}/bash-completion/completions/podmod install -p -m0644 %{cargo_out_dir}/_podmod %{buildroot}%{_datadir}/zsh/site-functions/_podmod install -p -m0644 %{cargo_out_dir}/podmod.fish %{buildroot}%{_datadir}/fish/vendor_completions.d/podmod.fish install -p -m0644 docs/*.8 %{buildroot}%{_mandir}/man8/ install -p -m0644 docs/*.5 %{buildroot}%{_mandir}/man5/ install -p -m0644 extra/podmod.conf.dist %{buildroot}%{_sysconfdir}/podmod.conf install -p -m0644 extra/podmod@.service %{buildroot}%{_unitdir} %if %{with check} %check %cargo_test %endif %changelog * Tue Nov 15 2022 Alpin H. Gencer 0.4.3-1 - Add shell completion files to package * Thu Oct 27 2022 Alpin H. Gencer 0.3.6-1 - Configuration file re-introduced in version 0.3.6 * Sun Oct 16 2022 Alpin H. Gencer 0.3.1-1 - Configuration file removed in version 0.3.1 * Sat Oct 15 2022 Alpin H. Gencer 0.3.0-5 - Create subpackages for split binary and library crates * Thu Oct 13 2022 Alpin H. Gencer 0.3.0-4 - Bundle README as documentation in package * Wed Oct 12 2022 Alpin H. Gencer 0.3.0-3 - Publish crate to crates.io - Re-package RPM according to Fedora Rust Packaging Guidelines - Re-create package podmod as subpackage of rust-podmod * Wed Oct 12 2022 Alpin H. Gencer 0.3.0-2 - Fill in missing check condition from spec file generated with rust2rpm - Use SPDX license identifier * Fri Oct 07 2022 Alpin H. Gencer 0.3.0-1 - Rewrite frontend script in Rust * Thu Oct 06 2022 Alpin H. Gencer 0.2.2-1 - Initialize tito * Wed Oct 05 2022 Alpin H. Gencer - 0.2.1-1 - Update project description * Wed Oct 05 2022 Alpin H. Gencer - 0.2.0-1 - Initial version