mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-01-31 01:04:25 +00:00
vscode-extensions.hashicorp.terraform: init at 2.6.0
This commit is contained in:
parent
ada1fa0adc
commit
dcc609c9b1
@ -357,6 +357,8 @@ let
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hashicorp.terraform = callPackage ./terraform {};
|
||||||
|
|
||||||
hookyqr.beautify = buildVscodeMarketplaceExtension {
|
hookyqr.beautify = buildVscodeMarketplaceExtension {
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "beautify";
|
name = "beautify";
|
||||||
|
25
pkgs/misc/vscode-extensions/terraform/default.nix
Normal file
25
pkgs/misc/vscode-extensions/terraform/default.nix
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{ lib, fetchurl, vscode-utils, terraform-ls }:
|
||||||
|
vscode-utils.buildVscodeMarketplaceExtension rec {
|
||||||
|
mktplcRef = {
|
||||||
|
name = "terraform";
|
||||||
|
publisher = "hashicorp";
|
||||||
|
version = "2.6.0";
|
||||||
|
};
|
||||||
|
|
||||||
|
vsix = fetchurl {
|
||||||
|
name = "${mktplcRef.publisher}-${mktplcRef.name}.zip";
|
||||||
|
url = "https://github.com/hashicorp/vscode-terraform/releases/download/v${mktplcRef.version}/terraform-${mktplcRef.version}.vsix";
|
||||||
|
sha256 = "1zg90x2asl6gakd2w8fn4imllqgrzdb1dn3728s63blmml42a1xp";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [ ./fix-terraform-ls.patch ];
|
||||||
|
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace out/extension.js --replace TERRAFORM-LS-PATH ${terraform-ls}/bin/terraform-ls
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
license = licenses.mit;
|
||||||
|
maintainers = with maintainers; [ rhoriguchi ];
|
||||||
|
};
|
||||||
|
}
|
25
pkgs/misc/vscode-extensions/terraform/fix-terraform-ls.patch
Normal file
25
pkgs/misc/vscode-extensions/terraform/fix-terraform-ls.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
diff --git a/out/extension.js b/out/extension.js
|
||||||
|
index 1de8aab..e2b3a3e 100644
|
||||||
|
--- a/out/extension.js
|
||||||
|
+++ b/out/extension.js
|
||||||
|
@@ -204,19 +204,7 @@ function pathToBinary() {
|
||||||
|
if (!_pathToBinaryPromise) {
|
||||||
|
let command = vscodeUtils_1.config('terraform').get('languageServer.pathToBinary');
|
||||||
|
if (!command) { // Skip install/upgrade if user has set custom binary path
|
||||||
|
- const installDir = `${extensionPath}/lsp`;
|
||||||
|
- const installer = new languageServerInstaller_1.LanguageServerInstaller();
|
||||||
|
- try {
|
||||||
|
- yield installer.install(installDir);
|
||||||
|
- }
|
||||||
|
- catch (err) {
|
||||||
|
- vscode.window.showErrorMessage(err);
|
||||||
|
- throw err;
|
||||||
|
- }
|
||||||
|
- finally {
|
||||||
|
- yield installer.cleanupZips(installDir);
|
||||||
|
- }
|
||||||
|
- command = `${installDir}/terraform-ls`;
|
||||||
|
+ command = 'TERRAFORM-LS-PATH';
|
||||||
|
}
|
||||||
|
_pathToBinaryPromise = Promise.resolve(command);
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user