From 5b008e30b44923e8eff5dbe470b000de58f07021 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Thu, 4 Aug 2016 10:40:36 -0500 Subject: [PATCH] kdeWrapper: avoid excessive file collisions --- .../libraries/kde-frameworks/kde-env.nix | 13 +++++++++++-- .../libraries/kde-frameworks/kde-wrapper.nix | 8 ++------ 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/pkgs/development/libraries/kde-frameworks/kde-env.nix b/pkgs/development/libraries/kde-frameworks/kde-env.nix index c77ff49bfea..a48ba32be22 100644 --- a/pkgs/development/libraries/kde-frameworks/kde-env.nix +++ b/pkgs/development/libraries/kde-frameworks/kde-env.nix @@ -5,7 +5,7 @@ drv: pkgs: stdenv.mkDerivation { name = "kde-env-${drv.name}"; nativeBuildInputs = [ lndir ]; - propagatedUserEnvPkgs = builtins.map lib.getBin ([drv] ++ pkgs); + envPkgs = builtins.map lib.getBin ([drv] ++ pkgs); unpackPhase = "true"; configurePhase = "runHook preConfigure; runHook postConfigure"; buildPhase = "true"; @@ -13,7 +13,7 @@ stdenv.mkDerivation { runHook preInstall propagated="" - for i in $propagatedUserEnvPkgs; do + for i in $envPkgs; do findInputs $i propagated propagated-user-env-packages done @@ -26,6 +26,15 @@ stdenv.mkDerivation { done done + for p in $propagated; do + for s in applications dbus-1 desktop-directories icons mime polkit-1; do + if [ -d "$p/share/$s" ]; then + propagatedUserEnvPkgs+=" $p" + break + fi + done + done + runHook postInstall ''; } diff --git a/pkgs/development/libraries/kde-frameworks/kde-wrapper.nix b/pkgs/development/libraries/kde-frameworks/kde-wrapper.nix index 95f9cdcecb7..d340a5edbf7 100644 --- a/pkgs/development/libraries/kde-frameworks/kde-wrapper.nix +++ b/pkgs/development/libraries/kde-frameworks/kde-wrapper.nix @@ -37,11 +37,7 @@ stdenv.mkDerivation { fi done - for s in applications dbus-1 desktop-directories icons mime polkit-1; do - if [ -d "$env/share/$s" ]; then - mkdir -p "$out/share" - ln -s "$env/share/$s" "$out/share/$s" - fi - done + mkdir -p "$out/nix-support" + ln -s "$env/nix-support/propagated-user-env-packages" "$out/nix-support/" ''; }