Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 548138 - >=net-analyzer/fail2ban-0.9.1 should be PYTHON_SINGLE_TARGET if built with systemd useflag
Summary: >=net-analyzer/fail2ban-0.9.1 should be PYTHON_SINGLE_TARGET if built with sy...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Netmon project
URL:
Whiteboard:
Keywords:
Depends on: 548642
Blocks:
  Show dependency tree
 
Reported: 2015-04-29 15:03 UTC by Maeredhel
Modified: 2015-05-05 19:08 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
patch to use systemd python dependency (fail2ban-0.9.1-systemd.patch,402 bytes, patch)
2015-04-29 15:04 UTC, Maeredhel
Details | Diff
ebuild patch (fail2ban.patch,763 bytes, patch)
2015-05-03 15:30 UTC, Mike Gilbert
Details | Diff
revised ebuild patch (fail2ban.patch,876 bytes, patch)
2015-05-05 15:44 UTC, Mike Gilbert
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Maeredhel 2015-04-29 15:03:41 UTC
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
Comment 1 Maeredhel 2015-04-29 15:04:48 UTC
Created attachment 402230 [details, diff]
patch to use systemd python dependency
Comment 2 Mike Gilbert gentoo-dev 2015-05-03 13:38:23 UTC
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.
Comment 3 Mike Gilbert gentoo-dev 2015-05-03 15:30:37 UTC
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.
Comment 4 Jeroen Roovers (RETIRED) gentoo-dev 2015-05-04 05:48:58 UTC
(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?
Comment 5 Mike Gilbert gentoo-dev 2015-05-04 05:55:42 UTC
(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.
Comment 6 Jeroen Roovers (RETIRED) gentoo-dev 2015-05-05 08:08:42 UTC
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.
Comment 7 Mike Gilbert gentoo-dev 2015-05-05 15:44:44 UTC
Created attachment 402722 [details, diff]
revised ebuild patch

Sorry about that. systemd doesn't support pypy. Here's a new patch.
Comment 8 Jeroen Roovers (RETIRED) gentoo-dev 2015-05-05 19:08:58 UTC
Added to -9999 too.