diff --git a/pkgs/os-specific/linux/libnl/default.nix b/pkgs/os-specific/linux/libnl/default.nix index c79a4314d6f..1caf91b0bb6 100644 --- a/pkgs/os-specific/linux/libnl/default.nix +++ b/pkgs/os-specific/linux/libnl/default.nix @@ -1,17 +1,18 @@ -{ stdenv, lib, fetchFromGitHub, fetchpatch, autoreconfHook, bison, flex, pkgconfig }: +{ stdenv, file, lib, fetchFromGitHub, fetchpatch, autoreconfHook, bison, flex, pkgconfig +, pythonSupport ? true, swig ? null, python}: -let version = "3.3.0"; in -stdenv.mkDerivation { +stdenv.mkDerivation rec { name = "libnl-${version}"; + version = "3.4.0"; src = fetchFromGitHub { repo = "libnl"; owner = "thom311"; rev = "libnl${lib.replaceStrings ["."] ["_"] version}"; - sha256 = "1796kyq2lkhz2802v9kp32vlxf8ynlyqgyw9nhmry3qh5d0ahcsv"; + sha256 = "1bqf1f5glwf285sa98k5pkj9gg79lliixk1jk85j63v5510fbagp"; }; - outputs = [ "bin" "dev" "out" "man" ]; + outputs = [ "bin" "dev" "out" "man" ] ++ lib.optional pythonSupport "py"; patches = stdenv.lib.optional stdenv.hostPlatform.isMusl (fetchpatch { @@ -21,7 +22,22 @@ stdenv.mkDerivation { enableParallelBuilding = true; - nativeBuildInputs = [ autoreconfHook bison flex pkgconfig ]; + nativeBuildInputs = [ autoreconfHook bison flex pkgconfig file ] + ++ lib.optional pythonSupport swig; + + postBuild = lib.optionalString (pythonSupport) '' + cd python + ${python}/bin/python setup.py install --prefix=../pythonlib + cd - + ''; + + postFixup = lib.optionalString pythonSupport '' + mv "pythonlib/" "$py" + ''; + + passthru = { + inherit pythonSupport; + }; meta = with lib; { inherit version; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index be41d5eef49..64f9178cd87 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6951,6 +6951,9 @@ in { pylru = callPackage ../development/python-modules/pylru { }; + libnl-python = disabledIf isPy3k + (toPythonModule (pkgs.libnl.override{pythonSupport=true; inherit python; })).py; + lark-parser = callPackage ../development/python-modules/lark-parser { }; lazy-object-proxy = buildPythonPackage rec {