{ pname, version, src, openasar, meta, stdenv, binaryName, desktopName, lib, undmg, makeWrapper, branch, withOpenASAR ? false }: stdenv.mkDerivation { inherit pname version src meta; nativeBuildInputs = [ undmg makeWrapper ]; sourceRoot = "."; installPhase = '' runHook preInstall mkdir -p $out/Applications cp -r "${desktopName}.app" $out/Applications # wrap executable to $out/bin mkdir -p $out/bin makeWrapper "$out/Applications/${desktopName}.app/Contents/MacOS/${binaryName}" "$out/bin/${binaryName}" runHook postInstall ''; postInstall = lib.strings.optionalString withOpenASAR '' cp -f ${openasar} $out/Applications/${desktopName}.app/Contents/Resources/app.asar ''; }