diff --git a/pkgs/applications/editors/vscode/extensions/default.nix b/pkgs/applications/editors/vscode/extensions/default.nix index 8ede4c33ab43..fd53a475f4d9 100644 --- a/pkgs/applications/editors/vscode/extensions/default.nix +++ b/pkgs/applications/editors/vscode/extensions/default.nix @@ -3245,6 +3245,8 @@ let }; }; + mkhl.shfmt = callPackage ./mkhl.shfmt { }; + mongodb.mongodb-vscode = callPackage ./mongodb.mongodb-vscode { }; moshfeu.compare-folders = buildVscodeMarketplaceExtension { diff --git a/pkgs/applications/editors/vscode/extensions/mkhl.shfmt/default.nix b/pkgs/applications/editors/vscode/extensions/mkhl.shfmt/default.nix new file mode 100644 index 000000000000..84c2bd9a93a0 --- /dev/null +++ b/pkgs/applications/editors/vscode/extensions/mkhl.shfmt/default.nix @@ -0,0 +1,28 @@ +{ + lib, + vscode-utils, + jq, + shfmt, + moreutils, +}: +vscode-utils.buildVscodeMarketplaceExtension { + mktplcRef = { + name = "shfmt"; + publisher = "mkhl"; + version = "1.3.1"; + hash = "sha256-V7pXPwabmUJLC/T0X4dsc52IZa7SaN70zd4mCjqk4X4="; + }; + + postInstall = '' + cd "$out/$installPrefix" + ${lib.getExe jq} '.contributes.configuration.properties."shfmt.executablePath".default = "${lib.getExe shfmt}"' package.json | ${lib.getExe' moreutils "sponge"} package.json + ''; + + meta = { + description = "Extension uses shfmt to provide a formatter for shell script documents"; + downloadPage = "https://marketplace.visualstudio.com/items?itemName=mkhl.shfmt"; + homepage = "https://codeberg.org/mkhl/vscode-shfmt"; + license = lib.licenses.bsd0; + maintainers = [ lib.maintainers.therobot2105 ]; + }; +}