aboutsummaryrefslogtreecommitdiffstats
path: root/lua
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2022-07-07 19:40:52 +0200
committerGitHub <noreply@github.com>2022-07-07 19:40:52 +0200
commitae4dbde7c0c731e93d596441ac3b08b545255681 (patch)
treeaa27c3f857edfb3dee2a0bd35cb0ea4c6a0119d9 /lua
parentfeat: add ktlint (#8) (diff)
downloadmason-ae4dbde7c0c731e93d596441ac3b08b545255681.tar
mason-ae4dbde7c0c731e93d596441ac3b08b545255681.tar.gz
mason-ae4dbde7c0c731e93d596441ac3b08b545255681.tar.bz2
mason-ae4dbde7c0c731e93d596441ac3b08b545255681.tar.lz
mason-ae4dbde7c0c731e93d596441ac3b08b545255681.tar.xz
mason-ae4dbde7c0c731e93d596441ac3b08b545255681.tar.zst
mason-ae4dbde7c0c731e93d596441ac3b08b545255681.zip
feat: add dart-debug-adapter (#9)
Diffstat (limited to 'lua')
-rw-r--r--lua/mason/_generated/package_index.lua1
-rw-r--r--lua/mason/packages/dart-debug-adapter/init.lua25
2 files changed, 26 insertions, 0 deletions
diff --git a/lua/mason/_generated/package_index.lua b/lua/mason/_generated/package_index.lua
index a1b36015..a6173d34 100644
--- a/lua/mason/_generated/package_index.lua
+++ b/lua/mason/_generated/package_index.lua
@@ -25,6 +25,7 @@ return {
["css-lsp"] = "mason.packages.css-lsp",
["cssmodules-language-server"] = "mason.packages.cssmodules-language-server",
["cucumber-language-server"] = "mason.packages.cucumber-language-server",
+ ["dart-debug-adapter"] = "mason.packages.dart-debug-adapter",
debugpy = "mason.packages.debugpy",
delve = "mason.packages.delve",
deno = "mason.packages.deno",
diff --git a/lua/mason/packages/dart-debug-adapter/init.lua b/lua/mason/packages/dart-debug-adapter/init.lua
new file mode 100644
index 00000000..1e5b21c8
--- /dev/null
+++ b/lua/mason/packages/dart-debug-adapter/init.lua
@@ -0,0 +1,25 @@
+local Pkg = require "mason.core.package"
+local github = require "mason.core.managers.github"
+local _ = require "mason.core.functional"
+local path = require "mason.core.path"
+
+return Pkg.new {
+ name = "dart-debug-adapter",
+ desc = [[Dart debug adapter sourced from the VSCode Dart extension.]],
+ homepage = "https://github.com/Dart-Code/Dart-Code",
+ languages = { Pkg.Lang.Dart, Pkg.Lang.Flutter },
+ categories = { Pkg.Cat.DAP },
+ ---@async
+ ---@param ctx InstallContext
+ install = function(ctx)
+ github
+ .unzip_release_file({
+ repo = "Dart-Code/Dart-Code",
+ asset_file = _.compose(_.format "dart-code-%s.vsix", _.gsub("^v", "")),
+ })
+ .with_receipt()
+ ctx.fs:rmrf(path.concat { "extension", "media" }) -- unnecessary media assets
+ ctx:write_node_exec_wrapper("dart-debug-adapter", path.concat { "extension", "out", "dist", "debug.js" })
+ ctx:link_bin("dart-debug-adapter", "dart-debug-adapter")
+ end,
+}