diff options
author | Jan Tojnar <jtojnar@gmail.com> | 2019-12-14 21:58:10 +0100 |
---|---|---|
committer | Jan Tojnar <jtojnar@gmail.com> | 2019-12-15 01:50:38 +0100 |
commit | 7adbfb1220e158cd62540b2137851f368dc15e77 (patch) | |
tree | 3704b41677ce336bff8d21db50e07041654f182e | |
parent | a4721054c19eb1c7491bc2061eca1541315394ee (diff) | |
download | nixpkgs-7adbfb1220e158cd62540b2137851f368dc15e77.tar nixpkgs-7adbfb1220e158cd62540b2137851f368dc15e77.tar.gz nixpkgs-7adbfb1220e158cd62540b2137851f368dc15e77.tar.bz2 nixpkgs-7adbfb1220e158cd62540b2137851f368dc15e77.tar.lz nixpkgs-7adbfb1220e158cd62540b2137851f368dc15e77.tar.xz nixpkgs-7adbfb1220e158cd62540b2137851f368dc15e77.tar.zst nixpkgs-7adbfb1220e158cd62540b2137851f368dc15e77.zip |
fail2ban: switch to Python 3
We are dropping Python support from gamin so nothing is holding us any more. Instead of gamin, we will use systemd on Linux and polling on Darwin; gamin is the worst backend any way, according to upstream: https://github.com/fail2ban/fail2ban/issues/1330#issuecomment-314429043
-rw-r--r-- | pkgs/tools/security/fail2ban/default.nix | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/pkgs/tools/security/fail2ban/default.nix b/pkgs/tools/security/fail2ban/default.nix index 324ac46b084..1280b4bd3f1 100644 --- a/pkgs/tools/security/fail2ban/default.nix +++ b/pkgs/tools/security/fail2ban/default.nix @@ -1,8 +1,8 @@ -{ stdenv, fetchFromGitHub, python, pythonPackages, gamin }: +{ stdenv, fetchFromGitHub, fetchpatch, python3, gamin }: let version = "0.10.4"; in -pythonPackages.buildPythonApplication { +python3.pkgs.buildPythonApplication { pname = "fail2ban"; inherit version; @@ -13,8 +13,19 @@ pythonPackages.buildPythonApplication { sha256 = "07ik6rm856q0ic2r7vbg6j3hsdcdgkv44hh5ck0c2y21fqwrck3l"; }; - propagatedBuildInputs = [ gamin ] - ++ (stdenv.lib.optional stdenv.isLinux pythonPackages.systemd); + patches = [ + # 0.10.3 supports Python 3 but somehow this got into the way + # https://github.com/fail2ban/fail2ban/issues/2255 + (fetchpatch { + url = "https://github.com/fail2ban/fail2ban/commit/657b147c0d7830f3600f3dc7feaa4815a7e19fde.patch"; + sha256 = "1hrk2x7ssrfhab1wrjk5xw1sxhiv2735glfcp6qcj8x4dss3q7f7"; + }) + ]; + + pythonPath = with python3.pkgs; + stdenv.lib.optionals stdenv.isLinux [ + systemd + ]; preConfigure = '' for i in config/action.d/sendmail*.conf; do @@ -33,11 +44,11 @@ pythonPackages.buildPythonApplication { substituteInPlace setup.py --replace /usr/share/doc/ share/doc/ # see https://github.com/NixOS/nixpkgs/issues/4968 - ${python}/bin/${python.executable} setup.py install_data --install-dir=$out --root=$out + ${python3.interpreter} setup.py install_data --install-dir=$out --root=$out ''; postInstall = let - sitePackages = "$out/lib/${python.libPrefix}/site-packages"; + sitePackages = "$out/${python3.sitePackages}"; in '' # see https://github.com/NixOS/nixpkgs/issues/4968 rm -rf ${sitePackages}/etc ${sitePackages}/usr ${sitePackages}/var; |