about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/tools/electron/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/tools/electron/default.nix')
-rw-r--r--nixpkgs/pkgs/development/tools/electron/default.nix15
1 files changed, 12 insertions, 3 deletions
diff --git a/nixpkgs/pkgs/development/tools/electron/default.nix b/nixpkgs/pkgs/development/tools/electron/default.nix
index b6f7d0b072b2..fca9bc866fac 100644
--- a/nixpkgs/pkgs/development/tools/electron/default.nix
+++ b/nixpkgs/pkgs/development/tools/electron/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, libXScrnSaver, makeWrapper, fetchurl, unzip, atomEnv, libuuid, at-spi2-atk }:
+{ stdenv, libXScrnSaver, makeWrapper, fetchurl, wrapGAppsHook, gtk3, unzip, atomEnv, libuuid, at-spi2-atk }:
 
 let
   version = "4.1.5";
@@ -35,7 +35,15 @@ let
       };
     }.${stdenv.hostPlatform.system} or throwSystem;
 
-    buildInputs = [ unzip makeWrapper ];
+    buildInputs = [ gtk3 ];
+
+    nativeBuildInputs = [
+      unzip
+      makeWrapper
+      wrapGAppsHook
+    ];
+
+    dontWrapGApps = true; # electron is in lib, we need to wrap it manually
 
     buildCommand = ''
       mkdir -p $out/lib/electron $out/bin
@@ -50,7 +58,8 @@ let
         $out/lib/electron/electron
 
       wrapProgram $out/lib/electron/electron \
-        --prefix LD_PRELOAD : ${stdenv.lib.makeLibraryPath [ libXScrnSaver ]}/libXss.so.1
+        --prefix LD_PRELOAD : ${stdenv.lib.makeLibraryPath [ libXScrnSaver ]}/libXss.so.1 \
+        "''${gappsWrapperArgs[@]}"
     '';
   };