diff --git a/pkgs/applications/editors/pinegrow/default.nix b/pkgs/applications/editors/pinegrow/default.nix index 1f069024eb9..dfcf8e4f787 100644 --- a/pkgs/applications/editors/pinegrow/default.nix +++ b/pkgs/applications/editors/pinegrow/default.nix @@ -8,6 +8,7 @@ , autoPatchelfHook , gsettings-desktop-schemas , gtk3 +, wrapGAppsHook , makeWrapper }: @@ -24,6 +25,7 @@ stdenv.mkDerivation rec { unzip autoPatchelfHook makeWrapper + wrapGAppsHook ]; buildInputs = [ @@ -34,7 +36,8 @@ stdenv.mkDerivation rec { gtk3 ]; - wrapProgramFlags = [ + dontWrapGApps = true; + makeWrapperArgs = [ "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ gcc-unwrapped.lib gtk3 udev ]}" "--prefix PATH : ${lib.makeBinPath [ stdenv.cc ]}" ]; @@ -51,7 +54,7 @@ stdenv.mkDerivation rec { # we can't unzip it in $out/lib, because nw.js will start with # an empty screen. Therefore it will be unzipped in a non-typical # folder and symlinked. - unzip $src -d $out/opt/pinegrow + unzip -q $src -d $out/opt/pinegrow substituteInPlace $out/opt/pinegrow/Pinegrow.desktop \ --replace 'Exec=sh -c "$(dirname %k)/PinegrowLibrary"' 'Exec=sh -c "$out/bin/Pinegrow"' mv $out/opt/pinegrow/Pinegrow.desktop $out/share/applications/Pinegrow.desktop @@ -60,9 +63,11 @@ stdenv.mkDerivation rec { runHook postInstall ''; + # GSETTINGS_SCHEMAS_PATH is not set in installPhase preFixup = '' - export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS - wrapProgram "$out/opt/pinegrow/PinegrowLibrary" ''${wrapProgramFlags[@]} + wrapProgram $out/bin/Pinegrow \ + ''${makeWrapperArgs[@]} \ + ''${gappsWrapperArgs[@]} ''; meta = with lib; {