diff --git a/.gitignore b/.gitignore index 8e91ffc..328b48c 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,6 @@ snoopy-1.7.1.tar.gz /snoopy-1.9.0.tar.gz /snoopy-3aa5c7124a3861427f7d17cbccbb1deb37329e08.tar.gz /fix-build-for-new-automake.patch +/snoopy-2.4.14.tar.gz +/snoopy-2.5.1.tar.gz +/snoopy-2.5.2.tar.gz diff --git a/README.packit b/README.packit new file mode 100644 index 0000000..7017e6c --- /dev/null +++ b/README.packit @@ -0,0 +1,3 @@ +This repository is maintained by packit. +https://packit.dev/ +The file was generated using packit 1.1.0.post1.dev2+gf7b527d0. diff --git a/packit.yaml b/packit.yaml new file mode 100644 index 0000000..fdf84eb --- /dev/null +++ b/packit.yaml @@ -0,0 +1,16 @@ +# See the documentation for more information: +# https://packit.dev/docs/configuration/ + +copy_upstream_release_description: false + +jobs: +- job: pull_from_upstream + trigger: release + dist_git_branches: + - fedora-rawhide + +- job: koji_build + trigger: commit + allowed_committers: ['packit'] + dist_git_branches: + - fedora-rawhide diff --git a/snoopy-disable b/snoopy-disable new file mode 100644 index 0000000..1b9f6f5 --- /dev/null +++ b/snoopy-disable @@ -0,0 +1,2 @@ +#!/bin/sh +/usr/sbin/snoopyctl disable diff --git a/snoopy-disable-utmp-tests.diff b/snoopy-disable-utmp-tests.diff new file mode 100644 index 0000000..72c96a7 --- /dev/null +++ b/snoopy-disable-utmp-tests.diff @@ -0,0 +1,14 @@ +--- a/tests/unit/Makefile.in ++++ b/tests/unit/Makefile.in +@@ -94,10 +94,7 @@ XFAIL_TESTS = + @CONFIGFILE_ENABLED_TRUE@am__append_3 = unit-ext-ini.sh + @FILTERING_ENABLED_TRUE@am__append_4 = unit-filterregistry.sh + @DATASOURCE_ENABLED_systemd_unit_name_TRUE@am__append_5 = unit-util-systemd.sh +-@DATASOURCE_ENABLED_ipaddr_TRUE@am__append_6 = unit-util-utmp-entry-missing.sh \ +-@DATASOURCE_ENABLED_ipaddr_TRUE@ unit-util-utmp-entry-without-ip-address.sh \ +-@DATASOURCE_ENABLED_ipaddr_TRUE@ unit-util-utmp-ipv4.sh \ +-@DATASOURCE_ENABLED_ipaddr_TRUE@ unit-util-utmp-ipv6.sh ++@DATASOURCE_ENABLED_ipaddr_TRUE@am__append_6 = unit-util-utmp-entry-missing.sh + @DATASOURCE_ENABLED_ipaddr_TRUE@am__append_7 = unit-util-utmp-testUtmpFile + subdir = tests/unit + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 diff --git a/snoopy-enable b/snoopy-enable new file mode 100644 index 0000000..47e0d12 --- /dev/null +++ b/snoopy-enable @@ -0,0 +1,2 @@ +#!/bin/sh +/usr/sbin/snoopyctl enable diff --git a/snoopy.spec b/snoopy.spec index 5578207..9e743b8 100644 --- a/snoopy.spec +++ b/snoopy.spec @@ -1,65 +1,184 @@ -%global commit 3aa5c7124a3861427f7d17cbccbb1deb37329e08 +# compat was already shipped on Fedora < 42 and EL9, even though +# they never had snoopy <= 2.4.x, +# so we need to keep it for the duration of the lifecycle, but we can drop this +# in Fedora >= 42 and RHEL >= 10 +%if (0%{?fedora} && 0%{?fedora} < 42) || (0%{?rhel} && 0%{?rhel} < 10) +%bcond_without compat +%else +%bcond_with compat +%endif Name: snoopy -Version: 2.2.6 -Release: 7%{?dist} +Version: 2.5.2 +Release: 2%{?dist} Summary: A preload library to send shell commands to syslog -License: GPLv2+ +License: GPL-2.0-or-later URL: https://github.com/a2o/snoopy -Source0: https://github.com/a2o/snoopy/archive/%{commit}/snoopy-%{commit}.tar.gz -Patch0: fix-build-for-new-automake.patch +Source0: %{url}/releases/download/%{name}-%{version}/%{name}-%{version}.tar.gz +Source1: snoopy-disable +Source2: snoopy-enable + +# Upstream patches (0001~0500) + +# Proposed upstream patches (0501~1000) + +# Fedora-only patches (1001+) +# arch-specific (1101+) +Patch1101: %{name}-disable-utmp-tests.diff + BuildRequires: automake BuildRequires: libtool +BuildRequires: gcc +BuildRequires: make +# For tests +BuildRequires: %{_bindir}/hostname +BuildRequires: %{_bindir}/socat +BuildRequires: %{_bindir}/ps -%description -Snoopy is designed to aid a sysadmin by providing a log of commands executed. Snoopy is completely transparent to the user and applications. It is linked into programs to provide a wrapper around calls to execve(). Logging is done via syslog. +%if %{with compat} +%if 0%{?el8} +Recommends: %{name}-compat = %{version}-%{release} +%endif +%else +# drop in Fedora 44 (upgrading from 41 no longer supported) +# and EPEL 11 +%if (0%{?fedora} && 0%{?fedora} < 44) || (0%{?rhel} && 0%{?rhel} < 11) +Obsoletes: %{name}-compat < 2.5.1-6%{?dist} +%endif +%endif -%package devel -Summary: Development files for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} +%global _description %{expand: +Snoopy is designed to aid a sysadmin by providing a log of commands executed. +Snoopy is completely transparent to the user and applications. +It is linked into programs to provide a wrapper around calls to execve(). +Logging is done via syslog.} + +%description %{_description} + +%if %{with compat} +%package compat +Summary: Compatibility scripts for %{name} + +BuildArch: noarch + +# this is only needed for the lifetime of Fedora and EPEL releases that +# originally shipped snoopy <= 2.4.x (which has snoopy-disable and +# snoopy-enable instead of snoopyctl) +# +# per policy we can't mark a package as deprecated on a released +# Fedora branch +Provides: deprecated() +Requires: %{name} = %{version}-%{release} + +%description compat %{_description} + +This package contains compatibility scripts for Snoopy. +%endif -%description devel -Development files for %{name}. %prep -%setup -q -n %{name}-%{commit} -%patch0 -p1 +%autosetup -N +%ifarch aarch64 s390x +%autopatch -p1 +%else +%autopatch -p1 -M 1100 +%endif +%if %{with compat} +# compat scripts +cp -p %{SOURCE1} . +cp -p %{SOURCE2} . +%endif + %build -sh autogen.sh -%configure --libdir=%{_libdir} -make %{?_smp_mflags} +%configure +%make_build -%post -/sbin/ldconfig - -%postun -/sbin/ldconfig %install %make_install +%if %{with compat} +for cmd in disable enable; do + install -p snoopy-${cmd} %{buildroot}%{_sbindir}/ +done +%endif -mkdir -p %{buildroot}%{_sysconfdir} -install -m 0644 etc/snoopy.ini %{buildroot}%{_sysconfdir}/snoopy.ini - +# Get rid of libtool archive file rm %{buildroot}%{_libdir}/libsnoopy.la -mkdir -p %{buildroot}%{_includedir}/%{name} -install -c -m 644 src/*.h %{buildroot}%{_includedir}/%{name} + +%check +%make_build check + %files -%doc COPYING README.md ChangeLog %license COPYING -%{_libdir}/libsnoopy* -%{_bindir}/snoopy-test-output -%{_sbindir}/snoopy-enable -%{_sbindir}/snoopy-disable -%{_sysconfdir}/snoopy.ini +%doc README.md ChangeLog doc/FAQ.md doc/FILTER_exclude_spawns_of.md +# Note, the plain .so file needs to be here since it's a preload library +%{_libdir}/libsnoopy.so* +%{_sbindir}/snoopyctl +%config(noreplace) %{_sysconfdir}/snoopy.ini + +%if %{with compat} +%files compat +%{_sbindir}/snoopy-disable +%{_sbindir}/snoopy-enable +%endif -%files devel -%{_includedir}/* %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 2.5.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Thu Feb 13 2025 Packit - 2.5.2-1 +- Update to version 2.5.2 +- Resolves: rhbz#2321673 + +* Thu Feb 13 2025 Michel Lind - 2.5.1-6 +- Remove compat subpackage on Fedora >= 42 and EPEL >= 10 +- Create Packit configuration to automate future updates + +* Sun Jan 19 2025 Fedora Release Engineering - 2.5.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Sat Jul 20 2024 Fedora Release Engineering - 2.5.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Sat Jan 27 2024 Fedora Release Engineering - 2.5.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jul 22 2023 Fedora Release Engineering - 2.5.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sat Jun 03 2023 Michel Alexandre Salim - 2.5.1-1 +- Update to 2.5.1 +- Convert to SPDX license identifier +- Add compat subpackage for snoopy-disable and snoopy-enable + +* Sat Jan 21 2023 Fedora Release Engineering - 2.4.14-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sat Jul 23 2022 Fedora Release Engineering - 2.4.14-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat Jan 22 2022 Fedora Release Engineering - 2.4.14-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Jul 28 2021 Neal Gompa - 2.4.14-1 +- Rebase to 2.4.14 +- Modernize packaging to current packaging guidelines +- Drop unsupported devel content +- Run test suite + +* Fri Jul 26 2019 Fedora Release Engineering - 2.2.6-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sun Feb 03 2019 Fedora Release Engineering - 2.2.6-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Jul 14 2018 Fedora Release Engineering - 2.2.6-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Fri Feb 09 2018 Fedora Release Engineering - 2.2.6-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild diff --git a/sources b/sources index ce8cd09..9f22710 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -3564577da7df8bb326c903b90373b8ea snoopy-3aa5c7124a3861427f7d17cbccbb1deb37329e08.tar.gz -9090446631d87c378965ea28d3a15d87 fix-build-for-new-automake.patch +SHA512 (snoopy-2.5.2.tar.gz) = bb16affc545bf02207b6674aebe0821cbe5d70d4b91f873a4a751ef4f7e9a92f4a8d7910020e3c00800754bc5d8d05e9240717d17b7df3004f8a60b988ad4a3a