You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
rust-below/SPECS/rust-below.spec

193 lines
6.7 KiB

## START: Set by rpmautospec
## (rpmautospec version 0.3.5)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
release_number = 1;
base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec
# Generated by rust2rpm 24
%bcond_without check
%global crate below
%global forgeurl https://github.com/facebookincubator/below
Name: rust-below
Version: 0.7.1
Release: %autorelease
Summary: Interactive tool to view and record historical system data
License: Apache-2.0
URL: https://crates.io/crates/below
Source: %{crates_source}
# Get these from the repo as they aren't included in the crate
Source1: %{forgeurl}/raw/v%{version}/etc/below.service
Source2: %{forgeurl}/raw/v%{version}/etc/logrotate.conf
# Manually created patch for downstream crate metadata changes
# * bump clap from 3.2.5 to 4.3.5
# * bump clap_complete from 3.2.5 to 4.3.1
Patch: below-fix-metadata.diff
# Migrate to clap 4
# based on https://github.com/facebookincubator/below/commit/a1b257d91677637063c1eb359097d53078f7272a
Patch: below-clap4.diff
# below-config and below-model are not available
ExcludeArch: %{arm32} %{ix86}
BuildRequires: rust-packaging >= 21
BuildRequires: systemd-rpm-macros
%global _description %{expand:
below is an interactive tool to view and record historical system data. It has
support for:
- information regarding hardware resource utilization
- viewing the cgroup hierarchy
- cgroup and process information
- pressure stall information (PSI)
- record mode to record system data
- replay mode to replay historical system data
- live mode to view live system data
- dump subcommand to report script-friendly information (e.g. JSON and CSV)
below does not have support for cgroup1.
The name "below" stems from the fact that the below developers rejected many of
atop's design and style decisions.}
%description %{_description}
%package -n %{crate}
Summary: %{summary}
License: Apache-2.0 AND (Apache-2.0 OR MIT) AND Unicode-DFS-2016 AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-2-Clause AND (Apache-2.0 OR BSD-3-Clause OR MIT) AND (BSD-2-Clause OR LGPL-2.1) AND MIT AND (MPL-2.0 OR MIT OR Apache-2.0) AND (Unlicense OR MIT)
# LICENSE.dependencies contains a full license breakdown
Recommends: logrotate
%description -n %{crate} %{_description}
%files -n %{crate}
%license LICENSE
%license LICENSE.dependencies
%doc README.md
%{_bindir}/below
%{_unitdir}/%{crate}.service
%dir %{_sysconfdir}/logrotate.d
%config(noreplace) %{_sysconfdir}/logrotate.d/%{crate}.conf
%dir %{_localstatedir}/log/%{crate}
%post -n %{crate}
%systemd_post %{crate}.service
%preun -n %{crate}
%systemd_preun %{crate}.service
%postun -n %{crate}
%systemd_postun_with_restart %{crate}.service
%prep
%autosetup -n %{crate}-%{version_no_tilde} -p1
%cargo_prep
%generate_buildrequires
%cargo_generate_buildrequires
%build
%cargo_build
%{cargo_license} > LICENSE.dependencies
%install
%cargo_install
install -D -p -m0644 %{SOURCE1} %{buildroot}%{_unitdir}/%{crate}.service
install -D -p -m0644 %{SOURCE2} \
%{buildroot}%{_sysconfdir}/logrotate.d/%{crate}.conf
install -d -m1777 %{buildroot}%{_localstatedir}/log/%{crate}
%if %{with check}
%check
# thread 'test::record_replay_integration' panicked at 'missing memory.pressure', src/test.rs:58:10
%cargo_test -- -- --skip test::record_replay_integration
%endif
%changelog
* Mon Jan 15 2024 Arkady L. Shane <tigro@msvsphere-os.ru> - 0.7.1-1
- Rebuilt for MSVSphere 9.3
* Wed Aug 02 2023 Michel Alexandre Salim <salimma@fedoraproject.org> - 0.7.1-1
- Update to 0.7.1
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.6.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Wed May 03 2023 Fabio Valentini <decathorpe@gmail.com> - 0.6.3-4
- Rebuild for tokio crate >= v1.24.2 (RUSTSEC-2023-0005)
* Mon Jan 30 2023 Michel Alexandre Salim <salimma@fedoraproject.org> - 0.6.3-3
- Bump for libbpf-{sys,rs,cargo} novendor changes
* Mon Jan 30 2023 Michel Alexandre Salim <salimma@fedoraproject.org> - 0.6.3-2
- Exclude builds on 32-bit architectures
* Thu Jan 26 2023 Michel Alexandre Salim <salimma@fedoraproject.org> - 0.6.3-1
- Update to 0.6.3
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.5.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Feb 19 2022 Michel Alexandre Salim <salimma@fedoraproject.org> - 0.5.0-2
- Update binary package license (fixes: rhbz#2045491)
* Fri Feb 18 2022 Michel Alexandre Salim <salimma@fedoraproject.org> - 0.5.0-1
- Update to 0.5.0
* Tue Feb 15 2022 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.4.1-4
- Rebuild with package notes
* Tue Jan 25 2022 Fabio Valentini <decathorpe@gmail.com> - 0.4.1-3
- Rebuild with thread_local 1.1.4 for RUSTSEC-2022-0006
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.4.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Nov 11 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.4.1-1
- Update to 0.4.0; Fixes: RHBZ#2022244
* Thu Oct 28 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.4.0-2
- Update vendoring logic to fix the epel8 build; Fixes: RHBZ#1978414
* Fri Oct 22 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.4.0-1
- Update to 0.4.0; Fixes: RHBZ#2016559
* Sat Jul 31 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.3.0-1
- Update to 0.3.0; Fixes: RHBZ#1983801
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.2.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jul 6 2021 Michel Alexandre Salim <salimma@fedoraproject.org> - 0.2.0-4
- Add README-epel.md with instructions for enabling PSI support
- Gate ExclusiveArch s390x to el8 only
* Wed Jun 30 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.2.0-3
- Add vendored dependencies for EPEL and make it build there
- Exclude s390x for the EPEL build for now due to an upstream issue
- Mark logrotate config file as a config(noreplace)
- Add recommends for logrotate
- Fix permissions for the below binary
* Mon Jun 28 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.2.0-2
- Install upstream systemd unit
- Install upstream logrotate config
- Add missing documentation
- Expand the description
* Tue Jun 15 2021 Davide Cavalca <dcavalca@fedoraproject.org> - 0.2.0-1
- Initial package