From d9dadce7589a77f9cc2d3ca763b6bf4ec082a004 Mon Sep 17 00:00:00 2001 From: Matthieu Coudron Date: Thu, 17 May 2018 20:57:32 +0900 Subject: [PATCH 1/2] libnl: 3.3.0 -> 3.4.0 --- pkgs/os-specific/linux/libnl/default.nix | 6 +++--- pkgs/top-level/python-packages.nix | 3 +++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/libnl/default.nix b/pkgs/os-specific/linux/libnl/default.nix index c79a4314d6f..52b5b272fb6 100644 --- a/pkgs/os-specific/linux/libnl/default.nix +++ b/pkgs/os-specific/linux/libnl/default.nix @@ -1,14 +1,14 @@ { stdenv, lib, fetchFromGitHub, fetchpatch, autoreconfHook, bison, flex, pkgconfig }: -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" ]; 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 { From 0d17a57afab1d33874d03e2fe397116cec2dcbda Mon Sep 17 00:00:00 2001 From: Matthieu Coudron Date: Thu, 17 May 2018 21:02:27 +0900 Subject: [PATCH 2/2] pythonPackages.libnl-python: init at 3.4.0 Netlink is the userspace <-> kernelspace communication protocol. --- pkgs/os-specific/linux/libnl/default.nix | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/libnl/default.nix b/pkgs/os-specific/linux/libnl/default.nix index 52b5b272fb6..1caf91b0bb6 100644 --- a/pkgs/os-specific/linux/libnl/default.nix +++ b/pkgs/os-specific/linux/libnl/default.nix @@ -1,4 +1,5 @@ -{ stdenv, lib, fetchFromGitHub, fetchpatch, autoreconfHook, bison, flex, pkgconfig }: +{ stdenv, file, lib, fetchFromGitHub, fetchpatch, autoreconfHook, bison, flex, pkgconfig +, pythonSupport ? true, swig ? null, python}: stdenv.mkDerivation rec { name = "libnl-${version}"; @@ -11,7 +12,7 @@ stdenv.mkDerivation rec { 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 rec { 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;