diff --git a/pkgs/applications/editors/vscode/with-extensions.nix b/pkgs/applications/editors/vscode/with-extensions.nix index 5dcd1f6fb78..c30b52782ef 100644 --- a/pkgs/applications/editors/vscode/with-extensions.nix +++ b/pkgs/applications/editors/vscode/with-extensions.nix @@ -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}" + --add-flags "--extensions-dir ${combinedExtensionsDrv}/share/vscode/extensions" ''} '' diff --git a/pkgs/misc/vscode-extensions/vscode-utils.nix b/pkgs/misc/vscode-extensions/vscode-utils.nix index 743ae13a3e4..1de3bce3d0d 100644 --- a/pkgs/misc/vscode-extensions/vscode-utils.nix +++ b/pkgs/misc/vscode-extensions/vscode-utils.nix @@ -1,12 +1,7 @@ { stdenv, lib, buildEnv, writeShellScriptBin, fetchurl, vscode, unzip, jq }: let - extendedPkgVersion = lib.getVersion vscode; - extendedPkgName = lib.removeSuffix "-${extendedPkgVersion}" vscode.name; - - 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. @@ -18,14 +13,14 @@ let buildInputs ? [], ... }: - stdenv.mkDerivation ((removeAttrs a [ "vscodeExtUniqueId" ]) // { + 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 = "share/vscode/extensions/${vscodeExtUniqueId}"; buildInputs = [ unzip ] ++ buildInputs; @@ -80,7 +75,7 @@ let vscodeDefault = vscode; }; - + vscodeExts2nix = import ./vscodeExts2nix.nix { inherit lib writeShellScriptBin; vscodeDefault = vscode; @@ -90,7 +85,7 @@ let inherit lib buildEnv writeShellScriptBin extensionsFromVscodeMarketplace jq; vscodeDefault = vscode; }; -in +in { inherit fetchVsixFromVscodeMarketplace buildVscodeExtension buildVscodeMarketplaceExtension extensionFromVscodeMarketplace