diff options
author | Stéphan Kochen <git@stephank.nl> | 2021-05-11 12:09:50 +0200 |
---|---|---|
committer | Stéphan Kochen <git@stephank.nl> | 2021-05-11 12:09:50 +0200 |
commit | 64945fc77e864cc8b1606041dbec7fa211bebf7f (patch) | |
tree | 7e372e7e61039dd5591628fe50479a1bdebff38e /pkgs/applications/networking/irc | |
parent | 1fe978713849244f597f58d202adc503b38de09a (diff) |
communi: partial fix for darwin app
Diffstat (limited to 'pkgs/applications/networking/irc')
-rw-r--r-- | pkgs/applications/networking/irc/communi/default.nix | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/pkgs/applications/networking/irc/communi/default.nix b/pkgs/applications/networking/irc/communi/default.nix index 0d0144fbf9156..ab698ea9c5605 100644 --- a/pkgs/applications/networking/irc/communi/default.nix +++ b/pkgs/applications/networking/irc/communi/default.nix @@ -1,4 +1,4 @@ -{ fetchgit, libcommuni, qtbase, qmake, lib, stdenv }: +{ fetchgit, libcommuni, qtbase, qmake, lib, stdenv, wrapQtAppsHook }: stdenv.mkDerivation rec { pname = "communi"; @@ -11,7 +11,8 @@ stdenv.mkDerivation rec { fetchSubmodules = true; }; - nativeBuildInputs = [ qmake ]; + nativeBuildInputs = [ qmake ] + ++ lib.optional stdenv.isDarwin wrapQtAppsHook; buildInputs = [ libcommuni qtbase ]; @@ -25,14 +26,23 @@ stdenv.mkDerivation rec { qmakeFlags = [ "COMMUNI_INSTALL_PREFIX=${placeholder "out"}" - "COMMUNI_INSTALL_BINS=${placeholder "out"}/bin" "COMMUNI_INSTALL_PLUGINS=${placeholder "out"}/lib/communi/plugins" "COMMUNI_INSTALL_ICONS=${placeholder "out"}/share/icons/hicolor" "COMMUNI_INSTALL_DESKTOP=${placeholder "out"}/share/applications" "COMMUNI_INSTALL_THEMES=${placeholder "out"}/share/communi/themes" + (if stdenv.isDarwin + then [ "COMMUNI_INSTALL_BINS=${placeholder "out"}/Applications" ] + else [ "COMMUNI_INSTALL_BINS=${placeholder "out"}/bin" ]) ]; - postInstall = lib.optionalString stdenv.isLinux '' + postInstall = if stdenv.isDarwin then '' + # Nix qmake does not add the bundle rpath by default. + install_name_tool \ + -add_rpath @executable_path/../Frameworks \ + $out/Applications/Communi.app/Contents/MacOS/Communi + + wrapQtApp $out/Applications/Communi.app/Contents/MacOS/Communi + '' else '' substituteInPlace "$out/share/applications/communi.desktop" \ --replace "/usr/bin" "$out/bin" ''; |