aboutsummaryrefslogtreecommitdiffstats
path: root/lua/mason-registry/codeql/init.lua
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2022-07-08 17:36:10 +0200
committerGitHub <noreply@github.com>2022-07-08 17:36:10 +0200
commit8cad2361dd63c67d95acf9f79321927b03843959 (patch)
tree951599a91b56cc5be5220fe645e0c5323d21ae83 /lua/mason-registry/codeql/init.lua
parentfix(ui): read from correct path in the receipt to gather linked bins (#26) (diff)
downloadmason-8cad2361dd63c67d95acf9f79321927b03843959.tar
mason-8cad2361dd63c67d95acf9f79321927b03843959.tar.gz
mason-8cad2361dd63c67d95acf9f79321927b03843959.tar.bz2
mason-8cad2361dd63c67d95acf9f79321927b03843959.tar.lz
mason-8cad2361dd63c67d95acf9f79321927b03843959.tar.xz
mason-8cad2361dd63c67d95acf9f79321927b03843959.tar.zst
mason-8cad2361dd63c67d95acf9f79321927b03843959.zip
refactor: move packages to mason-registry (#27)
Diffstat (limited to 'lua/mason-registry/codeql/init.lua')
-rw-r--r--lua/mason-registry/codeql/init.lua30
1 files changed, 30 insertions, 0 deletions
diff --git a/lua/mason-registry/codeql/init.lua b/lua/mason-registry/codeql/init.lua
new file mode 100644
index 00000000..849c355d
--- /dev/null
+++ b/lua/mason-registry/codeql/init.lua
@@ -0,0 +1,30 @@
+local Pkg = require "mason.core.package"
+local _ = require "mason.core.functional"
+local platform = require "mason.core.platform"
+local github = require "mason.core.managers.github"
+local path = require "mason.core.path"
+
+local coalesce, when = _.coalesce, _.when
+
+return Pkg.new {
+ name = "codeql",
+ desc = [[Discover vulnerabilities across a codebase with CodeQL, our industry-leading semantic code analysis engine. CodeQL lets you query code as though it were data. Write a query to find all variants of a vulnerability, eradicating it forever. Then share your query to help others do the same.]],
+ homepage = "https://github.com/github/codeql-cli-binaries",
+ languages = { Pkg.Lang.CodeQL },
+ categories = { Pkg.Cat.LSP },
+ ---@async
+ ---@param ctx InstallContext
+ install = function(ctx)
+ github
+ .unzip_release_file({
+ repo = "github/codeql-cli-binaries",
+ asset_file = coalesce(
+ when(platform.is.mac, "codeql-osx64.zip"),
+ when(platform.is.linux_x64, "codeql-linux64.zip"),
+ when(platform.is.win_x64, "codeql-win64.zip")
+ ),
+ })
+ .with_receipt()
+ ctx:link_bin("codeql", path.concat { "codeql", platform.is.win and "codeql.cmd" or "codeql" })
+ end,
+}