%global debug_package %{nil}
%global _enable_debug_packages 0
Name: AcTrail
Version: 0.2.0
Release: 1
Summary: System-level observability toolchain for AI agent action trails
License: MulanPSL-2.0
URL: https://gitcode.com/openeuler/AcTrail
Source0: %{name}-%{version}.tar.gz
BuildRequires: cargo rustc gcc make
BuildRequires: clang llvm bpftool
BuildRequires: libbpf libbpf-devel
BuildRequires: elfutils-devel zlib-devel pkgconf-pkg-config
%description
AcTrail is a Linux system-level observability toolchain for AI agents. It
captures process, network, file, IPC, payload, HTTP semantic events, and
resource samples, then turns raw runtime events into trusted action trails.
It provides a collection daemon, a control CLI, a CLI viewer, and a read-only
Web UI.
%prep
%autosetup -n %{name}-%{version}
%build
export ACTRAILWEB_PREBUILT_ASSETS_DIR="$(pwd)/crates/apps/web/frontend/dist"
test -f "$ACTRAILWEB_PREBUILT_ASSETS_DIR/index.html"
test -f "$ACTRAILWEB_PREBUILT_ASSETS_DIR/assets/app.css"
test -f "$ACTRAILWEB_PREBUILT_ASSETS_DIR/assets/app.js"
cargo build --release --locked --bin actraild --bin actrailctl --bin actrailviewer --bin actrailweb --bin ebpf_probe
cargo build --release --locked -p tls_payload_probe_sync
%install
install -d -m 0755 %{buildroot}%{_bindir}
install -m 0755 target/release/actraild %{buildroot}%{_bindir}/actraild
install -m 0755 target/release/actrailctl %{buildroot}%{_bindir}/actrailctl
install -m 0755 target/release/actrailviewer %{buildroot}%{_bindir}/actrailviewer
install -m 0755 target/release/actrailweb %{buildroot}%{_bindir}/actrailweb
install -m 0755 target/release/ebpf_probe %{buildroot}%{_bindir}/ebpf_probe
install -m 0755 target/release/libactrail_tls_payload_probe_sync.so %{buildroot}%{_bindir}/libactrail_tls_payload_probe_sync.so
%files
%license LICENSE
%doc README.md
%doc docs/quick-start.md
%doc docs/usage.md
%doc docs/deployment.md
%doc docs/platform-requirements.md
%{_bindir}/actraild
%{_bindir}/actrailctl
%{_bindir}/actrailviewer
%{_bindir}/actrailweb
%{_bindir}/ebpf_probe
%{_bindir}/libactrail_tls_payload_probe_sync.so
%changelog
* Fri Jun 12 2026 yaozhenhe <yaozhenhe@huawei.com> - 0.2.0-1
- Use prebuilt actrailweb frontend assets packaged in Source0 during RPM builds
* Wed Jun 10 2026 yaozhenhe <yaozhenhe@huawei.com> - 0.1.2-1
- Use checked-in actrailweb frontend assets during RPM builds
* Wed Jun 03 2026 yaozhenhe <yaozhenhe@huawei.com> - 0.1.0-1
- Initial RPM package