diff options
| author | William Boman <william@redwill.se> | 2022-07-12 19:53:30 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-07-12 17:53:30 +0000 |
| commit | 20b192ffd9cf81f94ed6c23973ecbd7ddc69d695 (patch) | |
| tree | ae616df1adcb90ef6c4894c1d289bdf52134eb5b /lua/mason-registry/ccls/linux.lua | |
| parent | fix(jdtls)!: remove lspconfig settings override (#58) (diff) | |
| download | mason-20b192ffd9cf81f94ed6c23973ecbd7ddc69d695.tar mason-20b192ffd9cf81f94ed6c23973ecbd7ddc69d695.tar.gz mason-20b192ffd9cf81f94ed6c23973ecbd7ddc69d695.tar.bz2 mason-20b192ffd9cf81f94ed6c23973ecbd7ddc69d695.tar.lz mason-20b192ffd9cf81f94ed6c23973ecbd7ddc69d695.tar.xz mason-20b192ffd9cf81f94ed6c23973ecbd7ddc69d695.tar.zst mason-20b192ffd9cf81f94ed6c23973ecbd7ddc69d695.zip | |
chore!: remove ccls (#59)
This is a package that doesn't see frequent releases and it's been a
mess to get to build across platforms.
Installing via the system default package manager provides a much better
experience atm.
Diffstat (limited to 'lua/mason-registry/ccls/linux.lua')
| -rw-r--r-- | lua/mason-registry/ccls/linux.lua | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/lua/mason-registry/ccls/linux.lua b/lua/mason-registry/ccls/linux.lua deleted file mode 100644 index fa735266..00000000 --- a/lua/mason-registry/ccls/linux.lua +++ /dev/null @@ -1,73 +0,0 @@ -local path = require "mason-core.path" -local platform = require "mason-core.platform" -local installer = require "mason-core.installer" -local github = require "mason-core.managers.github" -local _ = require "mason-core.functional" -local Result = require "mason-core.result" -local Optional = require "mason-core.optional" - -local ccls_installer = require "mason-registry.ccls.common" - -local coalesce, when = _.coalesce, _.when - ----@param release string -local function normalize_llvm_release(release) - -- Strip the "llvmorg-" prefix from tags (llvm releases tags like llvmorg-13.0.0) - local normalized_release = release:gsub("^llvmorg%-", "") - return normalized_release -end - ----@async -local function llvm_installer() - local ctx = installer.context() - local os_dist = platform.os_distribution() - - local asset_name = coalesce( - when( - platform.arch == "x64", - coalesce( - when( - os_dist.id == "ubuntu" and os_dist.version.major >= 20, - "clang+llvm-%s-x86_64-linux-gnu-ubuntu-20.04" - ), - when( - os_dist.id == "ubuntu" and os_dist.version.major >= 16, - "clang+llvm-%s-x86_64-linux-gnu-ubuntu-16.04" - ) - ) - ), - when(platform.arch == "arm64", "clang+llvm-%s-aarch64-linux-gnu"), - when(platform.arch == "armv7", "clang+llvm-%s-armv7a-linux-gnueabihf") - ) - - local source = github.untarxz_release_file { - repo = "llvm/llvm-project", - version = Optional.of "llvmorg-13.0.0", - asset_file = function(release) - local normalized_release = normalize_llvm_release(release) - return asset_name and ("%s.tar.xz"):format(asset_name):format(normalized_release) - end, - } - - ctx.fs:rename(asset_name:format(normalize_llvm_release(source.release)), "llvm") - -- We move the clang headers out, because they need to be persisted - ctx.fs:rename(path.concat { "llvm", "lib", "clang", normalize_llvm_release(source.release) }, "clang-resource") - - return path.concat { ctx.cwd:get(), "llvm" } -end - ----@async -return function() - local ctx = installer.context() - Result.run_catching(llvm_installer) - :map(function(llvm_dir) - ccls_installer { llvm_dir = llvm_dir } - ctx.fs:rmrf "llvm" - end) - :recover(function() - pcall(function() - ctx.fs:rmrf "llvm" - end) - ccls_installer {} - end) -end |
