mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-10-02 04:50:21 +00:00
Merge pull request #55535 from eadwu/backports/20190210
[18.09] vscode backports - 20190210
This commit is contained in:
@@ -1,37 +1,31 @@
|
||||
{ stdenv, lib, fetchurl, unzip, atomEnv, makeDesktopItem,
|
||||
gtk2, wrapGAppsHook, libXScrnSaver, libxkbfile, libsecret,
|
||||
isInsiders ? false }:
|
||||
{ stdenv, lib, fetchurl, makeDesktopItem
|
||||
, unzip, libsecret, libXScrnSaver, wrapGAppsHook
|
||||
, gtk2, atomEnv, at-spi2-atk, autoPatchelfHook
|
||||
, systemd, fontconfig
|
||||
, isInsiders ? false }:
|
||||
|
||||
let
|
||||
executableName = "code" + lib.optionalString isInsiders "-insiders";
|
||||
|
||||
inherit (stdenv.hostPlatform) system;
|
||||
|
||||
plat = {
|
||||
"i686-linux" = "linux-ia32";
|
||||
"x86_64-linux" = "linux-x64";
|
||||
"x86_64-darwin" = "darwin";
|
||||
}.${stdenv.hostPlatform.system};
|
||||
}.${system};
|
||||
|
||||
sha256 = {
|
||||
"i686-linux" = "1g73fay6fxlqhalkqq5m6rjbp68k9npk0rrxrkhdj8mw0cz74dpm";
|
||||
"x86_64-linux" = "0mil8n5i2ajdyrgq862wq59ajy2122rvvn7m7mxq4ab92sk26rix";
|
||||
"x86_64-darwin" = "07r52scs1sgafzxqal39r8vf9p9qqvwwx8f6z09gqcf6clr6k48q";
|
||||
}.${stdenv.hostPlatform.system};
|
||||
|
||||
archive_fmt = if stdenv.hostPlatform.system == "x86_64-darwin" then "zip" else "tar.gz";
|
||||
|
||||
rpath = lib.concatStringsSep ":" [
|
||||
atomEnv.libPath
|
||||
"${lib.makeLibraryPath [gtk2]}"
|
||||
"${lib.makeLibraryPath [libsecret]}/libsecret-1.so.0"
|
||||
"${lib.makeLibraryPath [libXScrnSaver]}/libXss.so.1"
|
||||
"${lib.makeLibraryPath [libxkbfile]}/libxkbfile.so.1"
|
||||
"$out/lib/vscode"
|
||||
];
|
||||
"i686-linux" = "09mgvff27iljj9z7h0xxmr6152hcxh7qqxl3i7wdc55ra1rsjq1n";
|
||||
"x86_64-linux" = "1gvlvg3cjsscx6khy5gxd4wnb069kska00qdfwcq4kn7x1z04xnz";
|
||||
"x86_64-darwin" = "1mf9nyjnxgmzai7rfd1rkwk0wvil0ripg3mh8icg4mld2jjz8rsy";
|
||||
}.${system};
|
||||
|
||||
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "vscode-${version}";
|
||||
version = "1.30.2";
|
||||
version = "1.31.0";
|
||||
|
||||
src = fetchurl {
|
||||
name = "VSCode_${version}_${plat}.${archive_fmt}";
|
||||
@@ -53,12 +47,18 @@ in
|
||||
categories = "GNOME;GTK;Utility;TextEditor;Development;";
|
||||
};
|
||||
|
||||
buildInputs = if stdenv.hostPlatform.system == "x86_64-darwin"
|
||||
then [ unzip libXScrnSaver libsecret ]
|
||||
else [ wrapGAppsHook libXScrnSaver libxkbfile libsecret ];
|
||||
buildInputs = (if stdenv.isDarwin
|
||||
then [ unzip ]
|
||||
else [ gtk2 at-spi2-atk wrapGAppsHook ] ++ atomEnv.packages)
|
||||
++ [ libsecret libXScrnSaver ];
|
||||
|
||||
nativeBuildInputs = lib.optional (!stdenv.isDarwin) autoPatchelfHook;
|
||||
|
||||
dontBuild = true;
|
||||
dontConfigure = true;
|
||||
|
||||
installPhase =
|
||||
if stdenv.hostPlatform.system == "x86_64-darwin" then ''
|
||||
if system == "x86_64-darwin" then ''
|
||||
mkdir -p $out/lib/vscode $out/bin
|
||||
cp -r ./* $out/lib/vscode
|
||||
ln -s $out/lib/vscode/Contents/Resources/app/bin/${executableName} $out/bin
|
||||
@@ -78,22 +78,8 @@ in
|
||||
cp $out/lib/vscode/resources/app/resources/linux/code.png $out/share/pixmaps/code.png
|
||||
'';
|
||||
|
||||
postFixup = lib.optionalString (stdenv.hostPlatform.system == "i686-linux" || stdenv.hostPlatform.system == "x86_64-linux") ''
|
||||
patchelf \
|
||||
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
|
||||
--set-rpath "${rpath}" \
|
||||
$out/lib/vscode/${executableName}
|
||||
|
||||
patchelf \
|
||||
--set-rpath "${rpath}" \
|
||||
$out/lib/vscode/resources/app/node_modules.asar.unpacked/keytar/build/Release/keytar.node
|
||||
|
||||
patchelf \
|
||||
--set-rpath "${rpath}" \
|
||||
"$out/lib/vscode/resources/app/node_modules.asar.unpacked/native-keymap/build/Release/\
|
||||
keymapping.node"
|
||||
|
||||
ln -s ${lib.makeLibraryPath [libsecret]}/libsecret-1.so.0 $out/lib/vscode/libsecret-1.so.0
|
||||
preFixup = lib.optionalString (system == "i686-linux" || system == "x86_64-linux") ''
|
||||
gappsWrapperArgs+=(--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ systemd fontconfig ]})
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
@@ -111,6 +97,7 @@ in
|
||||
homepage = http://code.visualstudio.com/;
|
||||
downloadPage = https://code.visualstudio.com/Updates;
|
||||
license = licenses.unfree;
|
||||
maintainers = with maintainers; [ eadwu ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -68,8 +68,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
name = "cpptools";
|
||||
publisher = "ms-vscode";
|
||||
version = "0.20.1";
|
||||
sha256 = "1gmnkrn26n57vx2nm5hhalkkl2irak38m2lklgja0bi10jb6y08l";
|
||||
version = "0.21.0";
|
||||
sha256 = "0zq81xfj4hyz01kcw131fmql1mfs9yrjzcmw8i0yha0hymrgwngv";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
||||
Reference in New Issue
Block a user