Blame SPECS/nftables.spec

3730f4
%define rpmversion 0.9.3
3730f4
%define specrelease 12%{?dist}
3730f4
9ff721
Name:           nftables
3730f4
Version:        %{rpmversion}
3730f4
Release:        %{specrelease}%{?buildid}
9ff721
# Upstream released a 0.100 version, then 0.4. Need Epoch to get back on track.
9ff721
Epoch:          1
9ff721
Summary:        Netfilter Tables userspace utillites
9ff721
9ff721
License:        GPLv2
9ff721
URL:            http://netfilter.org/projects/nftables/
9ff721
Source0:        http://ftp.netfilter.org/pub/nftables/nftables-%{version}.tar.bz2
9ff721
Source1:        nftables.service
9ff721
Source2:        nftables.conf
3730f4
Source3:        main.nft
3730f4
Source4:        router.nft
3730f4
Source5:        nat.nft
9ff721
3730f4
Patch1:             0001-main-enforce-options-before-commands.patch
3730f4
Patch2:             0002-main-restore-debug.patch
3730f4
Patch3:             0003-monitor-Do-not-decompose-non-anonymous-sets.patch
3730f4
Patch4:             0004-monitor-Fix-output-for-ranges-in-anonymous-sets.patch
3730f4
Patch5:             0005-xfrm-spi-is-big-endian.patch
3730f4
Patch6:             0006-tests-shell-Search-diff-tool-once-and-for-all.patch
3730f4
Patch7:             0007-cache-Fix-for-doubled-output-after-reset-command.patch
3730f4
Patch8:             0008-netlink-Fix-leak-in-unterminated-string-deserializer.patch
3730f4
Patch9:             0009-netlink-Fix-leaks-in-netlink_parse_cmp.patch
3730f4
Patch10:            0010-netlink-Avoid-potential-NULL-pointer-deref-in-netlin.patch
3730f4
Patch11:            0011-tests-json_echo-Fix-for-Python3.patch
3730f4
Patch12:            0012-tests-json_echo-Support-testing-host-binaries.patch
3730f4
Patch13:            0013-tests-monitor-Support-running-individual-test-cases.patch
3730f4
Patch14:            0014-tests-monitor-Support-testing-host-s-nft-binary.patch
3730f4
Patch15:            0015-tests-py-Support-testing-host-binaries.patch
3730f4
Patch16:            0016-doc-nft.8-Mention-wildcard-interface-matching.patch
3730f4
Patch17:            0017-scanner-Extend-asteriskstring-definition.patch
3730f4
Patch18:            0018-parser-add-a-helper-for-concat-expression-handling.patch
3730f4
Patch19:            0019-include-resync-nf_tables.h-cache-copy.patch
3730f4
Patch20:            0020-src-Add-support-for-NFTNL_SET_DESC_CONCAT.patch
3730f4
Patch21:            0021-src-Add-support-for-concatenated-set-ranges.patch
bacbc8
bacbc8
BuildRequires: autogen
bacbc8
BuildRequires: autoconf
bacbc8
BuildRequires: automake
bacbc8
BuildRequires: libtool
bacbc8
BuildRequires: gcc
9ff721
BuildRequires: flex
9ff721
BuildRequires: bison
9ff721
BuildRequires: libmnl-devel
9ff721
BuildRequires: gmp-devel
9ff721
BuildRequires: readline-devel
3730f4
BuildRequires: pkgconfig(libnftnl) >= 1.1.5-3
9ff721
BuildRequires: systemd
3730f4
BuildRequires: asciidoc
9ff721
BuildRequires: iptables-devel
3730f4
BuildRequires: jansson-devel
3730f4
BuildRequires: python3-devel
3730f4
3730f4
Requires: libnftnl >= 1.1.5-3
9ff721
9ff721
%description
9ff721
Netfilter Tables userspace utilities.
9ff721
9ff721
%package        devel
9ff721
Summary:        Development library for nftables / libnftables
9ff721
Group:          Development/Libraries
9ff721
Requires:       %{name} = %{epoch}:%{version}-%{release}
9ff721
Requires:       pkgconfig
9ff721
9ff721
%description devel
9ff721
Development tools and static libraries and header files for the libnftables library.
9ff721
3730f4
%package -n     python3-nftables
3730f4
Summary:        Python module providing an interface to libnftables
3730f4
Requires:       %{name} = %{epoch}:%{version}-%{release}
3730f4
3730f4
%description -n python3-nftables
3730f4
The nftables python module provides an interface to libnftables via ctypes.
3730f4
9ff721
%prep
9ff721
%autosetup -p1
9ff721
9ff721
%build
bacbc8
autoreconf -fi
bacbc8
rm -Rf autom4te*.cache config.h.in~
3730f4
%configure --disable-silent-rules --with-json --with-xtables \
3730f4
	--enable-python --with-python-bin=%{__python3}
9ff721
make %{?_smp_mflags}
9ff721
9ff721
%install
9ff721
%make_install
9ff721
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
9ff721
9ff721
# Don't ship static lib (for now at least)
9ff721
rm -f $RPM_BUILD_ROOT/%{_libdir}/libnftables.a
9ff721
9ff721
chmod 644 $RPM_BUILD_ROOT/%{_mandir}/man8/nft*
9ff721
9ff721
mkdir -p $RPM_BUILD_ROOT/%{_unitdir}
9ff721
cp -a %{SOURCE1} $RPM_BUILD_ROOT/%{_unitdir}/
9ff721
9ff721
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig
9ff721
cp -a %{SOURCE2} $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/
9ff721
3730f4
rm $RPM_BUILD_ROOT/%{_sysconfdir}/nftables/*.nft
3730f4
cp %{SOURCE3} %{SOURCE4} %{SOURCE5} \
3730f4
	$RPM_BUILD_ROOT/%{_sysconfdir}/nftables/
3730f4
3730f4
find $RPM_BUILD_ROOT/%{_sysconfdir} \
3730f4
	\( -type d -exec chmod 0700 {} \; \) , \
3730f4
	\( -type f -exec chmod 0600 {} \; \)
3730f4
3730f4
# make nftables.py use the real library file name
3730f4
# to avoid nftables-devel package dependency
3730f4
sofile=$(readlink $RPM_BUILD_ROOT/%{_libdir}/libnftables.so)
3730f4
sed -i -e 's/\(sofile=\)".*"/\1"'$sofile'"/' \
3730f4
	$RPM_BUILD_ROOT/%{python3_sitelib}/nftables/nftables.py
3730f4
touch -r %{SOURCE2} $RPM_BUILD_ROOT/%{python3_sitelib}/nftables/nftables.py
9ff721
9ff721
%post
9ff721
%systemd_post nftables.service
9ff721
9ff721
%preun
9ff721
%systemd_preun nftables.service
9ff721
9ff721
%postun
9ff721
%systemd_postun_with_restart nftables.service
9ff721
9ff721
%post devel
9ff721
%ldconfig_post
9ff721
9ff721
%postun devel
9ff721
%ldconfig_postun
9ff721
9ff721
%files
9ff721
%license COPYING
9ff721
%config(noreplace) %{_sysconfdir}/nftables/
9ff721
%config(noreplace) %{_sysconfdir}/sysconfig/nftables.conf
9ff721
%{_sbindir}/nft
9ff721
%{_libdir}/libnftables.so.*
3730f4
%{_mandir}/man5/libnftables-json.5*
9ff721
%{_mandir}/man8/nft*
9ff721
%{_unitdir}/nftables.service
3730f4
%{_docdir}/nftables/examples/*.nft
9ff721
9ff721
%files devel
9ff721
%{_libdir}/libnftables.so
9ff721
%{_libdir}/pkgconfig/libnftables.pc
9ff721
%{_includedir}/nftables/libnftables.h
3730f4
%{_mandir}/man3/libnftables.3*
3730f4
3730f4
%files -n python3-nftables
3730f4
%{python3_sitelib}/nftables-*.egg-info
3730f4
%{python3_sitelib}/nftables/
9ff721
9ff721
%changelog
3730f4
* Thu Mar 26 2020 Phil Sutter <psutter@redhat.com> [0.9.3-12.el8]
3730f4
- Restore default config to be empty (Phil Sutter) [1694723]
3730f4
3730f4
* Mon Feb 17 2020 Phil Sutter <psutter@redhat.com> [0.9.3-11.el8]
3730f4
- Package requires libnftnl-1.1.5-3 (Phil Sutter) [1795224]
3730f4
- src: Add support for concatenated set ranges (Phil Sutter) [1795224]
3730f4
- src: Add support for NFTNL_SET_DESC_CONCAT (Phil Sutter) [1795224]
3730f4
- include: resync nf_tables.h cache copy (Phil Sutter) [1795224]
3730f4
- parser: add a helper for concat expression handling (Phil Sutter) [1795224]
3730f4
3730f4
* Wed Feb 12 2020 Phil Sutter <psutter@redhat.com> [0.9.3-10.el8]
3730f4
- scanner: Extend asteriskstring definition (Phil Sutter) [1763652]
3730f4
- doc: nft.8: Mention wildcard interface matching (Phil Sutter) [1763652]
3730f4
- tests: py: Support testing host binaries (Phil Sutter) [1754047]
3730f4
- tests: monitor: Support testing host's nft binary (Phil Sutter) [1754047]
3730f4
- tests: monitor: Support running individual test cases (Phil Sutter) [1754047]
3730f4
- tests: json_echo: Support testing host binaries (Phil Sutter) [1754047]
3730f4
- tests: json_echo: Fix for Python3 (Phil Sutter) [1754047]
3730f4
3730f4
* Mon Jan 27 2020 Phil Sutter <psutter@redhat.com> [0.9.3-9.el8]
3730f4
- netlink: Avoid potential NULL-pointer deref in netlink_gen_payload_stmt() (Phil Sutter) [1793030]
3730f4
- netlink: Fix leaks in netlink_parse_cmp() (Phil Sutter) [1793030]
3730f4
- netlink: Fix leak in unterminated string deserializer (Phil Sutter) [1793030]
3730f4
3730f4
* Fri Jan 17 2020 Phil Sutter <psutter@redhat.com> [0.9.3-8.el8]
3730f4
- cache: Fix for doubled output after reset command (Phil Sutter) [1790793]
3730f4
- tests: shell: Search diff tool once and for all (Phil Sutter) [1790793]
3730f4
- xfrm: spi is big-endian (Phil Sutter) [1790963]
3730f4
3730f4
* Mon Jan 13 2020 Phil Sutter <psutter@redhat.com> [0.9.3-7.el8]
3730f4
- monitor: Fix output for ranges in anonymous sets (Phil Sutter) [1774742]
3730f4
3730f4
* Fri Jan 10 2020 Phil Sutter <psutter@redhat.com> [0.9.3-6.el8]
3730f4
- monitor: Do not decompose non-anonymous sets (Phil Sutter) [1774742]
3730f4
- main: restore --debug (Phil Sutter) [1778883]
3730f4
- main: enforce options before commands (Phil Sutter) [1778883]
3730f4
3730f4
* Fri Jan 10 2020 Phil Sutter <psutter@redhat.com> [0.9.3-5.el8]
3730f4
- Install an improved sample config (Phil Sutter) [1694723]
3730f4
3730f4
* Wed Dec 04 2019 Phil Sutter <psutter@redhat.com> [0.9.3-4.el8]
3730f4
- Explicitly depend on newer libnftl version (Phil Sutter) [1643192]
3730f4
3730f4
* Tue Dec 03 2019 Phil Sutter <psutter@redhat.com> [0.9.3-3.el8]
3730f4
- Fix permissions of osf-related configs (Phil Sutter) [1776462]
3730f4
3730f4
* Tue Dec 03 2019 Phil Sutter <psutter@redhat.com> [0.9.3-2.el8]
3730f4
- Add example scripts to nftables package (Phil Sutter) [1643192]
3730f4
3730f4
* Mon Dec 02 2019 Phil Sutter <psutter@redhat.com> [0.9.3-1.el8]
3730f4
- Rebase onto upstream release 0.9.3 (Phil Sutter) [1643192]
3730f4
3730f4
* Mon Oct 21 2019 Phil Sutter <psutter@redhat.com> [0.9.2-4.el8]
3730f4
- tproxy: Add missing error checking when parsing from netlink (Phil Sutter) [1643192]
3730f4
- parser_json: Fix checking of parse_policy() return code (Phil Sutter) [1643192]
3730f4
3730f4
* Fri Oct 18 2019 Phil Sutter <psutter@redhat.com> [0.9.2-3.el8]
3730f4
- spec: Avoid multilib problems due to updated nftables.py (Phil Sutter) [1643192]
3730f4
3730f4
* Fri Oct 18 2019 Phil Sutter <psutter@redhat.com> [0.9.2-2.el8]
3730f4
- rule: Fix for single line ct timeout printing (Phil Sutter) [1643192]
3730f4
- tests/monitor: Fix for changed ct timeout format (Phil Sutter) [1643192]
3730f4
- monitor: Add missing newline to error message (Phil Sutter) [1643192]
3730f4
- src: restore --echo with anonymous sets (Phil Sutter) [1643192]
3730f4
3730f4
* Tue Oct 15 2019 Phil Sutter <psutter@redhat.com> [0.9.2-1.el8]
3730f4
- src: obj: fix memleak in handle_free() (Phil Sutter) [1643192]
3730f4
- libnftables: memleak when list of commands is empty (Phil Sutter) [1643192]
3730f4
- mnl: do not cache sender buffer size (Phil Sutter) [1643192]
3730f4
- src: meter: avoid double-space in list ruleset output (Phil Sutter) [1643192]
3730f4
- src: parser_json: fix crash while restoring secmark object (Phil Sutter) [1643192]
3730f4
- nftables: don't crash in 'list ruleset' if policy is not set (Phil Sutter) [1643192]
3730f4
- json: tests: fix typo in ct expectation json test (Phil Sutter) [1643192]
3730f4
- parser_bison: Fix 'exists' keyword on Big Endian (Phil Sutter) [1643192]
3730f4
- json: fix type mismatch on "ct expect" json exporting (Phil Sutter) [1643192]
3730f4
- libnftables: use-after-free in exit path (Phil Sutter) [1643192]
3730f4
- netlink_delinearize: fix wrong conversion to "list" in ct mark (Phil Sutter) [1643192]
3730f4
- mnl: fix --echo buffer size again (Phil Sutter) [1643192]
3730f4
- parser_json: fix crash on insert rule to bad references (Phil Sutter) [1643192]
3730f4
- evaluate: flag fwd and queue statements as terminal (Phil Sutter) [1643192]
3730f4
- tests: shell: check that rule add with index works with echo (Phil Sutter) [1643192]
3730f4
- cache: fix --echo with index/position (Phil Sutter) [1643192]
3730f4
- src: secmark: fix brace indentation and missing quotes in selctx output (Phil Sutter) [1643192]
3730f4
- Add python3-nftables sub-package (Phil Sutter) [1643192]
3730f4
- Rebase onto upstream version 0.9.2 (Phil Sutter) [1643192]
cc550a
bacbc8
* Mon Aug 12 2019 Phil Sutter <psutter@redhat.com> - 1:0.9.0-14
bacbc8
- src: fix jumps on bigendian arches
bacbc8
- src: json: fix constant parsing on bigendian
bacbc8
bacbc8
* Thu Aug 08 2019 Phil Sutter <psutter@redhat.com> - 1:0.9.0-13
bacbc8
- Fix for adding a rule with index and set reference
bacbc8
bacbc8
* Wed Jul 31 2019 Phil Sutter <psutter@redhat.com> - 1:0.9.0-12
bacbc8
- Fix permissions of /etc/nftables directory
bacbc8
bacbc8
* Wed Jun 26 2019 Phil Sutter <psutter@redhat.com> - 1:0.9.0-11
bacbc8
- Fix segfault with xtables support
bacbc8
bacbc8
* Wed Jun 26 2019 Phil Sutter <psutter@redhat.com> - 1:0.9.0-10
bacbc8
- Fix typo in spec file
bacbc8
bacbc8
* Wed Jun 26 2019 Phil Sutter <psutter@redhat.com> - 1:0.9.0-9
bacbc8
- Allow variables in jump statement
bacbc8
- Make example configs readable only by root
bacbc8
- Document nft list parameters
bacbc8
- Document vmap statement
bacbc8
- Install netdev-ingress.nft sample config in the right spot
bacbc8
- Backport upstream fixes since last release
bacbc8
9ff721
* Fri Mar 01 2019 Phil Sutter - 1:0.9.0-8
9ff721
- Add missing patch to spec file
9ff721
9ff721
* Fri Dec 21 2018 Phil Sutter - 1:0.9.0-7
9ff721
- src: Reject 'export vm json' command
9ff721
9ff721
* Tue Dec 18 2018 Phil Sutter - 1:0.9.0-6
9ff721
- Rebuild for updated libnftnl
9ff721
9ff721
* Thu Dec 13 2018 Phil Sutter - 1:0.9.0-5
9ff721
- nft.8: Document log level audit
9ff721
- nft.8: Clarify 'index' option of add rule command
9ff721
9ff721
* Thu Oct 25 2018 Phil Sutter - 1:0.9.0-4
9ff721
- Add fixes for covscan report
9ff721
- Fix for ECN keyword in LHS of relational
9ff721
- Update meta pkt_type value description
9ff721
- Fix for segfault with JSON output if xt expression is present
9ff721
- Add missing nft suffix to files included from /etc/sysconfig/nftables.conf
9ff721
- Use native JSON API in nft monitor
9ff721
9ff721
* Thu Oct 11 2018 Phil Sutter - 1:0.9.0-3
9ff721
- Enable xtables support
9ff721
- Enable JSON support
9ff721
9ff721
* Mon Sep 10 2018 Phil Sutter - 1:0.9.0-2
9ff721
- Allow icmpx in inet/bridge families
9ff721
9ff721
* Tue Aug 14 2018 Phil Sutter - 1:0.9.0-1
9ff721
- New version 0.9.0
9ff721
- Install libnftables
9ff721
- Add devel sub-package
9ff721
- Add gcc BuildRequires
9ff721
9ff721
* Sat Mar 03 2018 Kevin Fenzi <kevin@scrye.com> - 0.8.3-1
9ff721
- Update to 0.8.3. Fixes bug #1551207
9ff721
9ff721
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.8.2-2
9ff721
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
9ff721
9ff721
* Mon Feb 05 2018 Kevin Fenzi <kevin@scrye.com> - 0.8.2-1
9ff721
- Update to 0.8.2. Fixes bug #1541582
9ff721
9ff721
* Tue Jan 16 2018 Kevin Fenzi <kevin@scrye.com> - 0.8.1-1
9ff721
- Update to 0.8.1. Fixes bug #1534982
9ff721
9ff721
* Sun Oct 22 2017 Kevin Fenzi <kevin@scrye.com> - 0.8-1
9ff721
- Update to 0.8. 
9ff721
9ff721
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.7-5
9ff721
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
9ff721
9ff721
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.7-4
9ff721
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
9ff721
9ff721
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.7-3
9ff721
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
9ff721
9ff721
* Thu Jan 12 2017 Igor Gnatenko <ignatenko@redhat.com> - 1:0.7-2
9ff721
- Rebuild for readline 7.x
9ff721
9ff721
* Thu Dec 22 2016 Kevin Fenzi <kevin@scrye.com> - 0.7-1
9ff721
- Update to 0.7
9ff721
9ff721
* Fri Jul 15 2016 Kevin Fenzi <kevin@scrye.com> - 0.6-2
9ff721
- Rebuild for new glibc symbols
9ff721
9ff721
* Thu Jun 02 2016 Kevin Fenzi <kevin@scrye.com> - 0.6-1
9ff721
- Update to 0.6.
9ff721
9ff721
* Sun Apr 10 2016 Kevin Fenzi <kevin@scrye.com> - 0.5-4
9ff721
- Add example config files and move config to /etc/sysconfig. Fixes bug #1313936
9ff721
9ff721
* Fri Mar 25 2016 Kevin Fenzi <kevin@scrye.com> - 0.5-3
9ff721
- Add systemd unit file. Fixes bug #1313936
9ff721
9ff721
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1:0.5-2
9ff721
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
9ff721
9ff721
* Thu Sep 17 2015 Kevin Fenzi <kevin@scrye.com> 0.5-1
9ff721
- Update to 0.5
9ff721
9ff721
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:0.4-3
9ff721
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
9ff721
9ff721
* Sat Jan 10 2015 Kevin Fenzi <kevin@scrye.com> 0.4-2
9ff721
- Add patch to fix nft -f dep gen.
9ff721
9ff721
* Fri Dec 26 2014 Kevin Fenzi <kevin@scrye.com> 0.4-1
9ff721
- Update to 0.4
9ff721
- Add Epoch to fix versioning. 
9ff721
9ff721
* Wed Sep 03 2014 Kevin Fenzi <kevin@scrye.com> 0.100-4.20140903git
9ff721
- Update to 20140903 snapshot
9ff721
9ff721
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.100-4.20140704git
9ff721
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
9ff721
9ff721
* Fri Jul 04 2014 Kevin Fenzi <kevin@scrye.com> 0.100-3.20140704git
9ff721
- Update to new snapshot
9ff721
9ff721
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.100-2.20140426git
9ff721
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
9ff721
9ff721
* Sat Apr 26 2014 Kevin Fenzi <kevin@scrye.com> 0.100-1.20140426git
9ff721
- Update t0 20140426
9ff721
9ff721
* Sun Mar 30 2014 Kevin Fenzi <kevin@scrye.com> 0.100-1.20140330git
9ff721
- Update to 20140330 snapshot
9ff721
- Sync versions to be post 0.100 release.
9ff721
9ff721
* Wed Mar 26 2014 Kevin Fenzi <kevin@scrye.com> 0-0.7.20140326git
9ff721
- Update to 20140326 snapshot
9ff721
- Fix permissions on man pages. 
9ff721
9ff721
* Mon Mar 24 2014 Kevin Fenzi <kevin@scrye.com> 0-0.6.20140324git
9ff721
- Update to 20140324 snapshot
9ff721
9ff721
* Fri Mar 07 2014 Kevin Fenzi <kevin@scrye.com> 0-0.5.20140307git
9ff721
- Update to 20140307
9ff721
9ff721
* Sat Jan 25 2014 Kevin Fenzi <kevin@scrye.com> 0-0.4.20140125git
9ff721
- Update to 20140125 snapshot
9ff721
9ff721
* Sat Jan 18 2014 Kevin Fenzi <kevin@scrye.com> 0-0.3.20140118git
9ff721
- Update to 20140118 snapshot
9ff721
- Fixed License tag to be correct
9ff721
- Fixed changelog
9ff721
- nft scripts now use full path for nft
9ff721
- Fixed man page building
9ff721
- Dropped unneeded rm in install
9ff721
- Patched build to not be silent. 
9ff721
9ff721
* Tue Dec 03 2013 Kevin Fenzi <kevin@scrye.com> 0-0.2.20131202git
9ff721
- Use upstream snapshots for source.
9ff721
- Use 0 for version. 
9ff721
9ff721
* Sat Nov 30 2013 Kevin Fenzi <kevin@scrye.com> 0-0.1
9ff721
- initial version for Fedora review