## START: Set by rpmautospec ## (rpmautospec version 0.8.4) ## 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 # Building from fedora dependencies not possible # Latest upstream rtnetlink frequently required # sha2, zbus, zvariant are currently out of date %global with_debug 1 %if 0%{?with_debug} %global _find_debuginfo_dwz_opts %{nil} %global _dwz_low_mem_die_limit 0 %else %global debug_package %{nil} %endif # bats is available in Fedora official repos, needs EPEL on RHEL and CentOS # Stream %if %{defined fedora} %global distro_bats 1 %endif # Minimum X.Y dep for aardvark-dns %define major_minor %((v=%{version}; echo ${v%.*})) Name: netavark # Set a different Epoch for copr builds %if %{defined copr_username} Epoch: 102 %else Epoch: 2 %endif Version: 2.0.0 Release: %autorelease # The `AND` needs to be uppercase in the License for SPDX compatibility License: Apache-2.0 AND BSD-3-Clause AND MIT %if %{defined golang_arches_future} ExclusiveArch: %{golang_arches_future} %else ExclusiveArch: aarch64 ppc64le s390x x86_64 %endif Summary: OCI network stack URL: https://github.com/containers/%{name} # Tarballs fetched from upstream's release page Source0: %{url}/archive/v%{version}.tar.gz Source1: %{url}/releases/download/v%{version}/%{name}-v%{version}-vendor.tar.gz BuildRequires: cargo BuildRequires: %{_bindir}/go-md2man # aardvark-dns and %%{name} are usually released in sync Requires: aardvark-dns >= %{epoch}:%{major_minor} Provides: container-network-stack = 2 Requires: nftables BuildRequires: make BuildRequires: protobuf-c BuildRequires: protobuf-compiler %if %{defined rhel} # rust-toolset requires the `local` repo enabled on non-koji ELN build environments BuildRequires: rust-toolset %else BuildRequires: rust-packaging BuildRequires: rust-srpm-macros %endif BuildRequires: git-core BuildRequires: systemd BuildRequires: systemd-devel %description %{summary} Netavark is a rust based network stack for containers. It is being designed to work with Podman but is also applicable for other OCI container management applications. Netavark is a tool for configuring networking for Linux containers. Its features include: * Configuration of container networks via JSON configuration file * Creation and management of required network interfaces, including MACVLAN networks * All required firewall configuration to perform NAT and port forwarding as required for containers * Support for firewalld and nftables * Support for rootless containers * Support for IPv4 and IPv6 * Support for container DNS resolution via aardvark-dns. # Only intended to be used for gating tests # End user usecases not supported %package tests Summary: Tests for %{name} Requires: %{name} = %{epoch}:%{version}-%{release} %if %{defined distro_bats} Requires: bats %else Recommends: bats %endif Requires: bind-utils Requires: dbus-daemon Requires: dnsmasq Requires: firewalld Requires: jq Requires: net-tools Requires: nftables Requires: nmap-ncat %description tests %{summary} This package contains integration tests for %{name}. Only intended to be used for gating tests. Not supported for end users / customers. %prep %autosetup -Sgit %{name}-%{version} # Following steps are only required on environments like koji which have no # network access and thus depend on the vendored tarball. Copr pulls # dependencies directly from the network. %if !%{defined copr_username} tar fx %{SOURCE1} %if 0%{?fedora} || 0%{?rhel} >= 10 %cargo_prep -v vendor %else %cargo_prep -V 1 %endif %endif %build %{__make} CARGO="%{__cargo}" build %if (0%{?fedora} || 0%{?rhel} >= 10) && !%{defined copr_username} %cargo_license_summary %{cargo_license} > LICENSE.dependencies %cargo_vendor_manifest %endif # Build examples package for tests %{__make} CARGO="%{__cargo}" examples cd docs %{__make} %install %{__make} DESTDIR=%{buildroot} PREFIX=%{_prefix} install %{__install} -d -p %{buildroot}%{_datadir}/%{name}/{examples,test,test-dhcp} %{__cp} -rpav targets/release/examples/* %{buildroot}%{_datadir}/%{name}/examples %{__cp} -rpav test/* %{buildroot}%{_datadir}/%{name}/test %{__cp} -rpav test-dhcp/* %{buildroot}%{_datadir}/%{name}/test-dhcp %{__install} -D -m0755 bin/netavark-connection-tester %{buildroot}%{_bindir}/netavark-connection-tester %{__install} -D -m0755 bin/netavark-dhcp-proxy-client %{buildroot}%{_libexecdir}/podman/netavark-dhcp-proxy-client %{__rm} -rf %{buildroot}%{_datadir}/%{name}/test/tmt %{__rm} -rf %{buildroot}%{_datadir}/%{name}/test-dhcp/tmt %preun %systemd_preun %{name}-dhcp-proxy.service %systemd_preun %{name}-firewalld-reload.service %systemd_preun %{name}-nftables-reload.service %postun %systemd_postun %{name}-dhcp-proxy.service %systemd_postun %{name}-firewalld-reload.service %systemd_postun %{name}-nftables-reload.service %files %license LICENSE %if (0%{?fedora} || 0%{?rhel} >= 10) && !%{defined copr_username} %license LICENSE.dependencies %license cargo-vendor.txt %endif %dir %{_libexecdir}/podman %{_libexecdir}/podman/%{name}* %{_mandir}/man1/%{name}.1* %{_mandir}/man7/%{name}-firewalld.7* %{_unitdir}/%{name}-dhcp-proxy.service %{_unitdir}/%{name}-dhcp-proxy.socket %{_unitdir}/%{name}-firewalld-reload.service %{_unitdir}/%{name}-nftables-reload.service %files tests %{_bindir}/netavark-connection-tester %{_libexecdir}/podman/netavark-dhcp-proxy-client %dir %{_datadir}/%{name} %dir %{_datadir}/%{name}/examples %dir %{_datadir}/%{name}/test %dir %{_datadir}/%{name}/test-dhcp %{_datadir}/%{name}/examples/* %{_datadir}/%{name}/test/* %{_datadir}/%{name}/test-dhcp/* %changelog ## START: Generated by rpmautospec * Wed Jun 10 2026 Packit - 102:2.0.0-1 - Update to 2.0.0 upstream release * Thu Feb 05 2026 Packit - 102:1.17.2-1 - Update to 1.17.2 upstream release * Fri Jan 16 2026 Fedora Release Engineering - 102:1.17.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild * Tue Dec 09 2025 Packit - 102:1.17.1-1 - Update to 1.17.1 upstream release * Wed Nov 12 2025 Packit - 102:1.17.0-1 - Update to 1.17.0 upstream release * Thu Aug 21 2025 Packit - 102:1.16.1-1 - Update to 1.16.1 upstream release * Thu Aug 14 2025 Packit - 102:1.16.0-1 - Update to 1.16.0 upstream release * Thu Jul 24 2025 Fedora Release Engineering - 102:1.15.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild * Wed Jun 04 2025 Packit - 102:1.15.2-1 - Update to 1.15.2 upstream release * Tue May 27 2025 Packit - 102:1.15.1-1 - Update to 1.15.1 upstream release * Tue May 13 2025 Packit - 102:1.15.0-1 - Update to 1.15.0 upstream release * Tue Mar 18 2025 Packit - 102:1.14.1-1 - Update to 1.14.1 upstream release * Mon Feb 10 2025 Packit - 102:1.14.0-1 - Update to 1.14.0 upstream release * Fri Jan 17 2025 Fedora Release Engineering - 102:1.13.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild * Thu Dec 05 2024 Packit - 102:1.13.1-1 - Update to 1.13.1 upstream release * Tue Nov 05 2024 Lokesh Mandvekar - 102:1.13.0-2 - rebuild * Tue Oct 29 2024 Packit - 102:1.13.0-1 - Update to 1.13.0 upstream release * Mon Aug 19 2024 Packit - 102:1.12.2-1 - Update to 1.12.2 upstream release * Fri Aug 02 2024 Packit - 102:1.12.1-1 - Update to 1.12.1 upstream release * Fri Jul 26 2024 Lokesh Mandvekar - 102:1.11.0-5 - rebuild * Fri Jul 26 2024 Lokesh Mandvekar - 102:1.11.0-4 - rebuild * Fri Jul 26 2024 Lokesh Mandvekar - 102:1.11.0-3 - epoch: 2 on non-copr * Thu Jul 18 2024 Fedora Release Engineering - 102:1.11.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Thu May 30 2024 Packit - 102:1.11.0-1 - Update to 1.11.0 upstream release * Wed Mar 20 2024 Lokesh Mandvekar - 102:1.10.3-3 - rebuild for podman 5 f40 bodhi * Wed Mar 13 2024 Lokesh Mandvekar - 102:1.10.3-2 - make aardvark-dns a hard dep across the board * Sat Feb 10 2024 Packit - 102:1.10.3-1 - [packit] 1.10.3 upstream release * Wed Jan 31 2024 Packit - 102:1.10.2-1 - [packit] 1.10.2 upstream release * Mon Jan 29 2024 Lokesh Mandvekar - 102:1.10.1-5 - remove min version on av * Mon Jan 29 2024 Lokesh Mandvekar - 102:1.10.1-4 - remove commented lines * Mon Jan 29 2024 Lokesh Mandvekar - 102:1.10.1-3 - depend on available version of av * Sat Jan 27 2024 Adam Williamson - 102:1.10.1-2 - Fix broken dep on aardvark-dns 1.10.1 (does not exist) * Thu Jan 25 2024 Packit - 102:1.10.1-1 - [packit] 1.10.1 upstream release * Thu Jan 25 2024 Lokesh Mandvekar - 102:1.10.0-2 - fix cargo config * Thu Jan 25 2024 Packit - 102:1.10.0-1 - [packit] 1.10.0 upstream release * Thu Jan 25 2024 Fedora Release Engineering - 102:1.9.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sun Jan 21 2024 Fedora Release Engineering - 102:1.9.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Mon Nov 27 2023 Packit - 102:1.9.0-1 - [packit] 1.9.0 upstream release * Thu Sep 28 2023 Lokesh Mandvekar - 102:1.8.0-2 - update sources * Wed Sep 27 2023 Packit - 102:1.8.0-1 - [packit] 1.8.0 upstream release * Tue Aug 22 2023 Lokesh Mandvekar - 102:1.7.0-3 - spdx compatible license * Thu Jul 20 2023 Fedora Release Engineering - 102:1.7.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Thu Jun 29 2023 Packit - 102:1.7.0-1 - [packit] 1.7.0 upstream release * Tue May 30 2023 Yaakov Selkowitz - 1.6.0-3 - Use rust-toolset in RHEL builds * Wed Apr 12 2023 Lokesh Mandvekar - 1.6.0-2 - BR: systemd[-devel] * Wed Apr 12 2023 Lokesh Mandvekar - 1.6.0-1 - bump to v1.6.0 * Tue Apr 11 2023 Lokesh Mandvekar - 1.5.0-7 - add dhcp-proxy unitfiles for upcoming v1.6 * Mon Mar 06 2023 Lokesh Mandvekar - 1.5.0-6 - exclusivearch: golang_arches_future * Mon Mar 06 2023 Lokesh Mandvekar - 1.5.0-5 - migrated to SPDX license * Wed Feb 08 2023 Lokesh Mandvekar - 1.5.0-4 - Resolves: #2167217 - enable debuginfo * Wed Feb 08 2023 Lokesh Mandvekar - 1.5.0-3 - Discontinue i686 * Thu Feb 02 2023 Lokesh Mandvekar - 1.5.0-2 - rebuild for github 404 on koji * Thu Feb 02 2023 Lokesh Mandvekar - 1.5.0-1 - bump to v1.5.0 * Thu Jan 19 2023 Fedora Release Engineering - 1.4.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Mon Dec 12 2022 RH Container Bot - 1.4.0-1 - auto bump to v1.4.0 * Wed Nov 23 2022 Yaakov Selkowitz - 1.3.0-2 - Make md2man usage conditional on golang_arches * Tue Nov 15 2022 RH Container Bot - 1.3.0-1 - auto bump to v1.3.0 * Fri Oct 07 2022 Lokesh Mandvekar - 1.2.0-7 - Revert "auto bump to v1.2.0" * Fri Oct 07 2022 RH Container Bot - 1.2.0-6 - auto bump to v1.2.0 * Thu Oct 06 2022 Lokesh Mandvekar - 1.2.0-5 - make aardvark-dns hard requires on fedora-server * Tue Oct 04 2022 Lokesh Mandvekar - 1.2.0-4 - adjust macros for correct version * Tue Oct 04 2022 Lokesh Mandvekar - 1.2.0-3 - get rid of debbuild to comply with fedora guidelines * Mon Oct 03 2022 Lokesh Mandvekar - 1.2.0-2 - bump lookaside cache files * Wed Sep 28 2022 RH Container Bot - 1.2.0-1 - auto bump to v1.2.0 * Wed Aug 17 2022 Lokesh Mandvekar - 1.1.0-3 - use easier tag macros to make both fedora and debbuild happy * Tue Aug 16 2022 Lokesh Mandvekar - 1.1.0-2 - Fix debbuild maintainer issue * Thu Jul 28 2022 RH Container Bot - 1.1.0-1 - auto bump to v1.1.0 * Fri Jul 22 2022 Fedora Release Engineering - 1.0.3-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Fri May 27 2022 Lokesh Mandvekar - 1.0.3-4 - build deb packages using debbuild * Fri May 06 2022 Lokesh Mandvekar - 1.0.3-3 - add release tag info to aardvark dependency * Fri May 06 2022 Lokesh Mandvekar - 1.0.3-2 - bump to v1.0.3 * Thu May 05 2022 RH Container Bot - 1.0.3-1 - auto bump to v1.0.3 * Wed Mar 23 2022 Lokesh Mandvekar - 1.0.2-1 - bump to v1.0.2 * Fri Feb 25 2022 Lokesh Mandvekar - 1.0.1-1 - bump to v1.0.1, use upstream provided separate vendor tarball * Wed Feb 16 2022 Lokesh Mandvekar - 1.0.0-1 - bump to v1.0.0 * Fri Feb 11 2022 Lokesh Mandvekar - 1.0.0~rc2-1 - bump to v1.0.0-rc2 * Thu Feb 10 2022 Lokesh Mandvekar - 1.0.0~rc1-3 - aardvark-dns should be a weak-dep * Wed Feb 02 2022 Lokesh Mandvekar - 1.0.0~rc1-2 - Provides: container-network-stack = 2 * Tue Feb 01 2022 Lokesh Mandvekar - 1.0.0~rc1-1 - Resolves: #2048794 - initial build ## END: Generated by rpmautospec