From 6fd5287c36c8ce2fa12efae6cf171c6e46b41e87 Mon Sep 17 00:00:00 2001 From: Domen Kožar Date: Mon, 16 Jul 2018 17:23:32 +0200 Subject: haskell: don't error if isLibrary = true and no libraries exist If empty directory isn't deleted, referer depenedencies will fail with: cp: missing destination file operand after '/tmp/nix-build-cabal-helper-0.8.0.2.drv-0/setup-package.conf.d/' This is currently only the case for cabal-install, as cabal2nix doesn't handle well buildable=False flags due to long-standing bugs in Cabal itself. --- pkgs/development/haskell-modules/generic-builder.nix | 3 +++ 1 file changed, 3 insertions(+) (limited to 'pkgs') diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix index c68d84bdb8a5..80274f515c52 100644 --- a/pkgs/development/haskell-modules/generic-builder.nix +++ b/pkgs/development/haskell-modules/generic-builder.nix @@ -394,6 +394,9 @@ stdenv.mkDerivation ({ local pkgId=$( ${gnused}/bin/sed -n -e 's|^id: ||p' $packageConfFile ) mv $packageConfFile $packageConfDir/$pkgId.conf done + + # delete confdir if there are no libraries + find $packageConfDir -maxdepth 0 -empty -delete; ''} ${optionalString isGhcjs '' for exeDir in "$out/bin/"*.jsexe; do -- cgit 1.4.1