%define _debugsource_template %{nil} %define debug_package %{nil} Name: scx-tools Version: 1.1.3 Release: 1%{?dist} Summary: scx_loader and scxctl for managing sched_ext schedulers License: GPL-2.0-only URL: https://github.com/sched-ext/scx-loader Source0: https://github.com/sched-ext/scx-loader/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz ExclusiveArch: x86_64 aarch64 BuildRequires: cargo >= 1.82 BuildRequires: rust >= 1.82 BuildRequires: gcc BuildRequires: make BuildRequires: pkgconf-pkg-config BuildRequires: systemd-rpm-macros BuildRequires: clang >= 17 BuildRequires: clang-devel BuildRequires: llvm >= 17 BuildRequires: llvm-devel BuildRequires: lld >= 17 BuildRequires: bpftool BuildRequires: libseccomp-devel Requires: scx-scheds >= %{version} Requires: polkit %{?systemd_requires} Provides: scxctl = %{version}-%{release} Obsoletes: scxctl < %{version}-%{release} Conflicts: scx-tools-git %description scx-tools provides scx_loader, a DBus on-demand loader for sched_ext schedulers, and scxctl, a command-line client used to control scx_loader. %prep %autosetup -n scx-loader-%{version} rm -f rust-toolchain.toml %build export CARGO_HOME="$PWD/.cargo-home" export RUSTFLAGS="%{?build_rustflags}" export LIBCLANG_PATH=%{_libdir} cargo fetch --locked cargo build --release --frozen --all-features --workspace %install find target/release \ -maxdepth 1 \ -type f \ -executable \ ! -name '*.so' \ ! -name '*.d' \ ! -name 'xtask' \ -exec install -Dpm 0755 -t %{buildroot}%{_bindir} {} + export VENDOR_PREFIX=%{_prefix} export VENDOR_DATADIR=%{_datadir} export VENDOR_SYSCONFDIR=%{_sysconfdir} export VENDOR_LIBDIR=%{_prefix}/lib target/release/xtask install --destdir %{buildroot} %check test -x %{buildroot}%{_bindir}/scx_loader test -x %{buildroot}%{_bindir}/scxctl %post %systemd_post scx_loader.service %preun %systemd_preun scx_loader.service %postun %systemd_postun_with_restart scx_loader.service %files %license LICENSE %doc README.md %{_bindir}/* %{_unitdir}/scx_loader.service %{_datadir}/dbus-1/interfaces/org.scx.Loader.xml %{_datadir}/dbus-1/system-services/org.scx.Loader.service %{_datadir}/dbus-1/system.d/org.scx.Loader.conf %{_datadir}/polkit-1/actions/org.scx.Loader.policy %config(noreplace) %{_datadir}/scx_loader/config.toml %changelog * Sat Sep 05 2026 sachesi - 1.1.3-1 - Update to 1.1.3. * Mon Jul 06 2026 sachesi - 1.1.2-1 - Update to 1.1.2 (scx-scheds is already on 1.1.2; keeps versions in sync). - Ship default scx_loader config.toml again, as %config(noreplace). * Tue May 26 2026 sachesi - 1.1.1-2 - Remove custom Fedora kconfig drop-in and default config.toml. * Tue May 26 2026 sachesi - 1.1.1-1 - Update to 1.1.1. * Tue May 05 2026 sachesi - 1.1.0-3 - Default to online build (--without vendored). Set enable_net=True in Copr. * Sun Apr 26 2026 sachesi - 1.1.0-2 - Recreate packaging with default vendored COPR mode and local online build support - Add Fedora kconfig runtime symlink drop-in for scx_lavd - Ship default scx_loader config using /run/scx_loader/kconfig * Sun Apr 26 2026 sachesi - 1.1.0-1 - Initial RPM package for scx-tools 1.1.0