From e276f590200e03b6e733c4e680ba2d835e37cd56 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Wed, 4 Jan 2017 20:39:01 +0100 Subject: [PATCH] pythonPackages.tkinter: patch rpath to use only one interpreter The `tkinter` module is copied from a build of `python` with `x11Support=true;` but has a reference to that build of `python`. We however want to use the module in combination with a build of `python` with `x11Support=false;` (the default). Therefore we patch the rpath to refer to that `python` instead. --- pkgs/top-level/python-packages.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a0141729e30f..e7ad930e16e1 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -25512,9 +25512,13 @@ in { disabled = isPy26 || isPyPy; installPhase = '' + # Move the tkinter module mkdir -p $out/${py.sitePackages} - ls -Al lib/${py.libPrefix}/lib-dynload/ | grep tkinter mv lib/${py.libPrefix}/lib-dynload/_tkinter* $out/${py.sitePackages}/ + # Update the rpath to point to python without x11Support + old_rpath=$(patchelf --print-rpath $out/${py.sitePackages}/_tkinter*) + new_rpath=$(sed "s#${py}#${python}#g" <<< "$old_rpath" ) + patchelf --set-rpath $new_rpath $out/${py.sitePackages}/_tkinter* ''; inherit (py) meta;