From bb24fafbfad04cd23431de14176cdc581a906f66 Mon Sep 17 00:00:00 2001 From: hyperfekt Date: Wed, 16 Oct 2019 21:52:31 +0200 Subject: [PATCH] vscode-with-extensions: fix insiders build Extensions are no longer unwrapped to the /share directory so the extensions' derivations do not have to know about VSCode's package name. --- pkgs/applications/editors/vscode/with-extensions.nix | 4 ++-- pkgs/misc/vscode-extensions/vscode-utils.nix | 10 +++------- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/editors/vscode/with-extensions.nix b/pkgs/applications/editors/vscode/with-extensions.nix index 074e6b8b12d52c..5dcd1f6fb7839a 100644 --- a/pkgs/applications/editors/vscode/with-extensions.nix +++ b/pkgs/applications/editors/vscode/with-extensions.nix @@ -48,7 +48,7 @@ let wrappedPkgName = lib.removeSuffix "-${wrappedPkgVersion}" vscode.name; combinedExtensionsDrv = buildEnv { - name = "${wrappedPkgName}-extensions-${wrappedPkgVersion}"; + name = "vscode-extensions"; paths = vscodeExtensions; }; @@ -70,6 +70,6 @@ runCommand "${wrappedPkgName}-with-extensions-${wrappedPkgVersion}" { ln -sT "${vscode}/share/applications/${executableName}.desktop" "$out/share/applications/${executableName}.desktop" ln -sT "${vscode}/share/applications/${executableName}-url-handler.desktop" "$out/share/applications/${executableName}-url-handler.desktop" makeWrapper "${vscode}/bin/${executableName}" "$out/bin/${executableName}" ${lib.optionalString (vscodeExtensions != []) '' - --add-flags "--extensions-dir ${combinedExtensionsDrv}/share/${wrappedPkgName}/extensions" + --add-flags "--extensions-dir ${combinedExtensionsDrv}" ''} '' diff --git a/pkgs/misc/vscode-extensions/vscode-utils.nix b/pkgs/misc/vscode-extensions/vscode-utils.nix index 2216e425897370..df8f24fcce73b8 100644 --- a/pkgs/misc/vscode-extensions/vscode-utils.nix +++ b/pkgs/misc/vscode-extensions/vscode-utils.nix @@ -1,9 +1,6 @@ -{ stdenv, lib, fetchurl, vscode, unzip }: +{ stdenv, lib, fetchurl, unzip }: let - extendedPkgVersion = lib.getVersion vscode; - extendedPkgName = lib.removeSuffix "-${extendedPkgVersion}" vscode.name; - mktplcExtRefToFetchArgs = ext: { url = "https://${ext.publisher}.gallery.vsassets.io/_apis/public/gallery/publisher/${ext.publisher}/extension/${ext.name}/${ext.version}/assetbyname/Microsoft.VisualStudio.Services.VSIXPackage"; sha256 = ext.sha256; @@ -14,7 +11,6 @@ let buildVscodeExtension = a@{ name, - namePrefix ? "${extendedPkgName}-extension-", src, # Same as "Unique Identifier" on the extension's web page. # For the moment, only serve as unique extension dir. @@ -28,12 +24,12 @@ let }: stdenv.mkDerivation ((removeAttrs a [ "vscodeExtUniqueId" ]) // { - name = namePrefix + name; + name = "vscode-extension-${name}"; inherit vscodeExtUniqueId; inherit configurePhase buildPhase dontPatchELF dontStrip; - installPrefix = "share/${extendedPkgName}/extensions/${vscodeExtUniqueId}"; + installPrefix = "${vscodeExtUniqueId}"; buildInputs = [ unzip ] ++ buildInputs;