summaryrefslogtreecommitdiffstats
path: root/pkgs/development/tools/electron
diff options
context:
space:
mode:
authormucaho <mkucko@gmail.com>2016-04-03 16:04:31 +0100
committermucaho <mkucko@gmail.com>2016-04-03 16:04:46 +0100
commit7b06260c1ccfacc43bf9ba6f9209e7679a52b611 (patch)
treef13e43399aab31fadbb28e0fe2c1a915b63e2fd1 /pkgs/development/tools/electron
parent016d523d8260d867ea4a2f2e4a6675c873fb9866 (diff)
electron: make it compatible with vscode
Use patchelf instead of wrapProgram to inject lookup path of shared libraries. Allow the nix expression to be called with optional version argument.
Diffstat (limited to 'pkgs/development/tools/electron')
-rw-r--r--pkgs/development/tools/electron/default.nix17
1 files changed, 11 insertions, 6 deletions
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index dd7dabf2bf28..aae4b413c3d9 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -1,7 +1,8 @@
-{ stdenv, fetchurl, buildEnv, makeDesktopItem, makeWrapper, zlib, glib, alsaLib
+{ stdenv, fetchurl, buildEnv, zlib, glib, alsaLib
, dbus, gtk, atk, pango, freetype, fontconfig, libgnome_keyring3, gdk_pixbuf
, cairo, cups, expat, libgpgerror, nspr, gconf, nss, xorg, libcap, unzip
, systemd, libnotify
+, version ? "0.36.2", sha256 ? "01d78j8dfrdygm1r141681b3bfz1f1xqg9vddz7j52z1mlfv9f1d", ...
}:
let
atomEnv = buildEnv {
@@ -16,15 +17,15 @@ let
};
in stdenv.mkDerivation rec {
name = "electron-${version}";
- version = "0.36.2";
+ inherit version;
src = fetchurl {
url = "https://github.com/atom/electron/releases/download/v${version}/electron-v${version}-linux-x64.zip";
- sha256 = "01d78j8dfrdygm1r141681b3bfz1f1xqg9vddz7j52z1mlfv9f1d";
+ inherit sha256;
name = "${name}.zip";
};
- buildInputs = [ atomEnv makeWrapper unzip ];
+ buildInputs = [ atomEnv unzip ];
phases = [ "installPhase" "fixupPhase" ];
@@ -35,8 +36,12 @@ in stdenv.mkDerivation rec {
unzip -d $out/bin $src
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
$out/bin/electron
- wrapProgram $out/bin/electron \
- --prefix "LD_LIBRARY_PATH" : "${atomEnv}/lib:${atomEnv}/lib64"
+ '';
+
+ postFixup = ''
+ patchelf \
+ --set-rpath "${atomEnv}/lib:${atomEnv}/lib64:$out/bin:$(patchelf --print-rpath $out/bin/electron)" \
+ $out/bin/electron
'';
meta = with stdenv.lib; {