Since version 0.9.1, fail2ban can use systemd binary logs to do his job, but depends on the python lib of systemd to do so. Since systemd is PYTHON_SINGLE_TARGET, so should be fail2ban if it is built with systemd useflag. Otherwise, this new systemd functionality of fail2ban does not work ("No module named systemd" error) The proposed patch (NOT tested) suggested from #gentoo IRC channel might solve the problem. Reproducible: Always
Created attachment 402230 [details, diff] patch to use systemd python dependency
I'm pretty sure I have raised this concern before. Is there any real need to have fail2ban be installed for multiple python versions simultaneously? The simple solution here is to set DISTUTILE_SINGLE_IMPL before inherting distutils-r1.
Created attachment 402550 [details, diff] ebuild patch This is a bit of a gray area since systemd is an optional runtime dependency. To properly express PYTHON_USEDEP, fail2ban must set DISTUTILS_SINGLE_IMPL since the systemd ebuild uses python-single-r1. On the other hand, the devmanual says that the systemd dependency should not be there in the first place. Anyway, I have modified the reporter's patch slightly.
(In reply to Mike Gilbert from comment #3) > On the other hand, the devmanual says that the systemd dependency should not > be there in the first place. How would you then (properly) solve bug #520516?
(In reply to Jeroen Roovers from comment #4) Replace the dependency with an elog telling the user what to do. Or ignore the devmanual and apply the patch I provided.
RepoMan scours the neighborhood... dependency.bad [fatal] 21 net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/desktop) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/desktop/gnome) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/desktop/gnome/systemd) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/desktop/kde) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/desktop/kde/systemd) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/developer) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(default/linux/amd64/13.0/systemd) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~x86(default/linux/x86/13.0) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~x86(default/linux/x86/13.0/desktop) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~x86(default/linux/x86/13.0/desktop/gnome) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~x86(default/linux/x86/13.0/desktop/gnome/systemd) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~x86(default/linux/x86/13.0/desktop/kde) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~x86(default/linux/x86/13.0/desktop/kde/systemd) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~x86(default/linux/x86/13.0/developer) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(hardened/linux/amd64) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(hardened/linux/amd64/no-multilib) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(hardened/linux/amd64/no-multilib/selinux) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~amd64(hardened/linux/amd64/selinux) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~x86(hardened/linux/x86) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] net-analyzer/fail2ban/fail2ban-0.9.2.ebuild: RDEPEND: ~x86(hardened/linux/x86/selinux) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] dependency.badmasked 1 net-analyzer/fail2ban/fail2ban-99999999.ebuild: RDEPEND: **(empty profile) ['sys-apps/systemd[python,python_targets_pypy(-)?,python_targets_python3_3(-)?,python_targets_python3_4(-)?,python_targets_python2_7(-)?,-python_single_target_jython2_5(-),-python_single_target_jython2_7(-),-python_single_target_pypy3(-),python_single_target_pypy(+)?,python_single_target_python3_3(+)?,python_single_target_python3_4(+)?,python_single_target_python2_7(+)?]'] Note: use --include-dev (-d) to check dependencies for 'dev' profiles Please fix these important QA issues first.
Created attachment 402722 [details, diff] revised ebuild patch Sorry about that. systemd doesn't support pypy. Here's a new patch.
Added to -9999 too.