diff --git a/pkgs/applications/networking/irc/communi/default.nix b/pkgs/applications/networking/irc/communi/default.nix index 71c559cbe713..cbd099c33bc7 100644 --- a/pkgs/applications/networking/irc/communi/default.nix +++ b/pkgs/applications/networking/irc/communi/default.nix @@ -32,6 +32,11 @@ stdenv.mkDerivation rec { qtbase ]; + # libCommuni.dylib is installed in $out/Applications/Communi.app/Contents/Frameworks/ on Darwin + # Wrapper hook thinks it's a binary because it's in $out/Applications, wraps it with a shell script + # So we manually call the wrapper script on just the binary + dontWrapQtApps = stdenv.isDarwin; + preConfigure = '' export QMAKEFEATURES=${libcommuni}/features ''; @@ -51,6 +56,9 @@ stdenv.mkDerivation rec { install_name_tool \ -add_rpath @executable_path/../Frameworks \ $out/Applications/Communi.app/Contents/MacOS/Communi + + # Do not remove until wrapQtAppsHook doesn't wrap dylibs in app bundles anymore + wrapQtApp $out/Applications/Communi.app/Contents/MacOS/Communi '' else '' substituteInPlace "$out/share/applications/communi.desktop" \ --replace "/usr/bin" "$out/bin" @@ -66,6 +74,5 @@ stdenv.mkDerivation rec { license = licenses.bsd3; maintainers = with maintainers; [ hrdinka ]; platforms = platforms.all; - broken = stdenv.isDarwin; }; }