Merge pull request #185848 from kira-bruneau/electron-darwin-wrapper

electron: use wrapper instead of symlink for bin on darwin
This commit is contained in:
Pavol Rusnak 2022-08-10 11:01:06 +02:00 committed by GitHub
commit be849cd250
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 9 additions and 16 deletions

View File

@ -32,10 +32,6 @@ let
hash = "sha256-4rpoDQ3o0WdWg/TmazTI+J0hL/MxwHcNMXWMq7GE7Tk=";
};
});
electronExec = if stdenv.isDarwin then
"${electron_18}/Applications/Electron.app/Contents/MacOS/Electron"
else
"${electron_18}/bin/electron";
esbuild' = esbuild.override {
buildGoModule = args: buildGoModule (args // rec {
version = "0.12.29";
@ -102,7 +98,7 @@ in nodePackages.deltachat-desktop.override rec {
$out/lib/node_modules/deltachat-desktop/html-dist/fonts
done
makeWrapper ${electronExec} $out/bin/deltachat \
makeWrapper ${electron_18}/bin/electron $out/bin/deltachat \
--set LD_PRELOAD ${sqlcipher}/lib/libsqlcipher${stdenv.hostPlatform.extensions.sharedLibrary} \
--add-flags $out/lib/node_modules/deltachat-desktop
'';

View File

@ -19,7 +19,6 @@
let
pinData = lib.importJSON ./pin.json;
executableName = "element-desktop";
electron_exec = if stdenv.isDarwin then "${electron}/Applications/Electron.app/Contents/MacOS/Electron" else "${electron}/bin/electron";
keytar = callPackage ./keytar { inherit Security AppKit; };
seshat = callPackage ./seshat { inherit CoreServices; };
in
@ -83,7 +82,7 @@ mkYarnPackage rec {
# executable wrapper
# LD_PRELOAD workaround for sqlcipher not found: https://github.com/matrix-org/seshat/issues/102
makeWrapper '${electron_exec}' "$out/bin/${executableName}" \
makeWrapper '${electron}/bin/electron' "$out/bin/${executableName}" \
--set LD_PRELOAD ${sqlcipher}/lib/libsqlcipher.so \
--add-flags "$out/share/element/electron" \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}"

View File

@ -19,7 +19,6 @@
let
pinData = lib.importJSON ./pin.json;
executableName = "schildichat-desktop";
electron_exec = if stdenv.isDarwin then "${electron}/Applications/Electron.app/Contents/MacOS/Electron" else "${electron}/bin/electron";
in
stdenv.mkDerivation rec {
pname = "schildichat-desktop";
@ -88,7 +87,7 @@ stdenv.mkDerivation rec {
done
# executable wrapper
makeWrapper '${electron_exec}' "$out/bin/${executableName}" \
makeWrapper '${electron}/bin/electron' "$out/bin/${executableName}" \
--add-flags "$out/share/element/electron" \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}"

View File

@ -11,10 +11,6 @@
}:
let
executableName = "micropad";
electron_exec =
if stdenv.isDarwin
then "${electron}/Applications/Electron.app/Contents/MacOS/Electron"
else "${electron}/bin/electron";
in
mkYarnPackage rec {
pname = "micropad";
@ -64,7 +60,7 @@ in
done
# executable wrapper
makeWrapper '${electron_exec}' "$out/bin/${executableName}" \
makeWrapper '${electron}/bin/electron' "$out/bin/${executableName}" \
--add-flags "$out/share/micropad" \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--enable-features=UseOzonePlatform --ozone-platform=wayland}}"

View File

@ -104,14 +104,17 @@ let
};
darwin = {
nativeBuildInputs = [ unzip ];
nativeBuildInputs = [
makeWrapper
unzip
];
buildCommand = ''
mkdir -p $out/Applications
unzip $src
mv Electron.app $out/Applications
mkdir -p $out/bin
ln -s $out/Applications/Electron.app/Contents/MacOS/Electron $out/bin/electron
makeWrapper $out/Applications/Electron.app/Contents/MacOS/Electron $out/bin/electron
'';
};
in