williamboman / mason.nvim

Portable package manager for Neovim that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters.
Apache License 2.0
7.51k stars 264 forks source link

Lua-language-server aarch64 Android #1602

Open colemichae opened 7 months ago

colemichae commented 7 months ago

I've searched open issues for similar requests

I've manually reviewed logs to find potential errors

I've recently downloaded the latest plugin version of mason.nvim

Problem description

I get error on every start of neovim.

I am using Lazy version

Log file details 8 [ERROR Mon Jan 15 17:19:29 2024] .. .e/nvim/lazy/mason.nvim/lua/mason-c ore/installer/init.lua:249: Install ation failed for Package(name=lua-language-server) error="The current platform is unsupported."

lua-language-server/stable,now 3.7.4 aarch64 [installed] Sumneko Lua Language Server coded in Lua

Expected behavior

No error I expect the repository to be able to support this aarch64 or look for file installed

Steps to reproduce

Install on termux on Android and it wants to use lua-language-server

I have installed via apt install /data/data/com.termux/files/usr/bin/lua-language-server

Because the package is not available via your repository.

Affected packages

Lua-language-server

Neovim version (>= 0.7)

NVIM v0.9.4 Build type: Release LuaJIT 2.1.0-beta3

Operating system/version

Linux localhost 4.14.199+ #1 SMP PREEMPT Sat May 6 21:41:06 CST 2023 aarch64 Android

Healthcheck

mason:-
 - ERROR No healthcheck found for         "mason" plugin.

Screenshots or recordings

Screenshot_20240115-171919

boltlessengineer commented 3 months ago

I’m having same issue from aarch64 server (not android) I’ve installed lua-language-server before with mason.nvim but after uninstall it, I can’t reinstall it from current mason.nvim version.

uname -a

Linux boltless-dev 5.15.0-1051-oracle #57-Ubuntu SMP Wed Jan 24 18:31:24 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux

:MasonLog

[INFO  Thu May 16 11:42:55 2024] ...e/nvim/lazy/mason.nvim/lua/mason-core/installer/init.lua:184: Executing installer for Package(name=lua-language-server) {}
[DEBUG Thu May 16 11:42:55 2024] ...e/nvim/lazy/mason.nvim/lua/mason-core/installer/init.lua:58: Attempting to lock package Package(name=lua-language-server)
[DEBUG Thu May 16 11:42:55 2024] ...e/nvim/lazy/mason.nvim/lua/mason-core/installer/init.lua:70: Wrote lockfile Package(name=lua-language-server)
[DEBUG Thu May 16 11:42:55 2024] .../.local/share/nvim/lazy/mason.nvim/lua/mason-core/fs.lua:71: fs: mkdirp /home/ubuntu/.local/share/nvim/mason/staging/lua-language-server
[DEBUG Thu May 16 11:42:55 2024] ...zy/mason.nvim/lua/mason-core/installer/registry/init.lua:149: Compiling installer. lua-language-server {}
[DEBUG Thu May 16 11:42:55 2024] ...zy/mason.nvim/lua/mason-core/installer/registry/init.lua:141: Failed to parse spec spec lua-language-server PLATFORM_UNSUPPORTED
[DEBUG Thu May 16 11:42:55 2024] .../.local/share/nvim/lazy/mason.nvim/lua/mason-core/fs.lua:59: fs: unlink /home/ubuntu/.local/share/nvim/mason/staging/lua-language-server.lock
[DEBUG Thu May 16 11:42:55 2024] .../.local/share/nvim/lazy/mason.nvim/lua/mason-core/fs.lua:47: fs: rmrf /home/ubuntu/.local/share/nvim/mason/staging/lua-language-server
[DEBUG Thu May 16 11:42:55 2024] ...e/nvim/lazy/mason.nvim/lua/mason-core/installer/init.lua:39: Building receipt for Package(name=lua-language-server)
[ERROR Thu May 16 11:42:55 2024] ...e/nvim/lazy/mason.nvim/lua/mason-core/installer/init.lua:249: Installation failed for Package(name=lua-language-server) error="The current platform is unsupported."

:checkhealth


==============================================================================
mason: require("mason.health").check()

mason.nvim ~
- OK mason.nvim version v1.10.0
- OK PATH: prepend
- OK Providers: 
    mason.providers.registry-api
    mason.providers.client
- OK neovim version >= 0.7.0

mason.nvim [Registries] ~
- OK Registry `github.com/mason-org/mason-registry version: 2024-05-16-minute-hose` is installed.

mason.nvim [Core utils] ~
- OK unzip: `UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.`
- OK wget: `GNU Wget 1.21.2 built on linux-gnu.`
- OK curl: `curl 7.81.0 (aarch64-unknown-linux-gnu) libcurl/7.81.0 OpenSSL/3.0.2 zlib/1.2.11 brotli/1.0.9 zstd/1.4.8 libidn2/2.3.2 libpsl/0.21.0 (+libidn2/2.3.2) libssh/0.9.6/openssl/zlib nghttp2/1.43.0 librtmp/2.3 OpenLDAP/2.5.17`
- OK gzip: `gzip 1.10`
- OK tar: `tar (GNU tar) 1.34`
- OK bash: `GNU bash, version 5.1.16(1)-release (aarch64-unknown-linux-gnu)`
- OK sh: `Ok`

mason.nvim [Languages] ~
- WARNING Go: not available
  - ADVICE:
    - spawn: go failed with exit code - and signal -. go is not executable
- WARNING Composer: not available
  - ADVICE:
    - spawn: composer failed with exit code - and signal -. composer is not executable
- WARNING PHP: not available
  - ADVICE:
    - spawn: php failed with exit code - and signal -. php is not executable
- WARNING luarocks: not available
  - ADVICE:
    - spawn: luarocks failed with exit code - and signal -. luarocks is not executable
- WARNING Ruby: not available
  - ADVICE:
    - spawn: ruby failed with exit code - and signal -. ruby is not executable
- WARNING javac: not available
  - ADVICE:
    - spawn: javac failed with exit code - and signal -. javac is not executable
- WARNING java: not available
  - ADVICE:
    - spawn: java failed with exit code - and signal -. java is not executable
- WARNING julia: not available
  - ADVICE:
    - spawn: julia failed with exit code - and signal -. julia is not executable
- WARNING RubyGem: not available
  - ADVICE:
    - spawn: gem failed with exit code - and signal -. gem is not executable
- OK python: `Python 3.10.12`
- OK node: `v20.9.0`
- OK cargo: `cargo 1.74.1 (ecb9851af 2023-10-18)`
- OK pip: `pip 22.0.2 from /usr/lib/python3/dist-packages/pip (python 3.10)`
- OK npm: `10.1.0`
- OK python venv: `Ok`

mason.nvim [GitHub] ~
- OK GitHub API rate limit. Used: 0. Remaining: 60. Limit: 60. Reset: Thu May 16 12:50:06 2024.
  Install and authenticate via gh-cli to increase rate limit.

nvim --version

NVIM v0.10.0-dev-3053+g0b8a72b73
Build type: RelWithDebInfo
LuaJIT 2.1.1713484068
antonpetrovmain commented 3 months ago

In the meantime, here is a temporary workaround:

Install lua-language-server with your package manager:

sudo pacman -S lua-language-server

Find where it is installed:

⚡➜ ~ which lua-language-server /data/data/com.termux/files/usr/bin/lua-language-server

Make a symbolic link to where Mason would usually install it:

mkdir -p ~/.local/share/nvim/mason/packages/lua-language-server/libexec ln -s /data/data/com.termux/files/usr/share/lua-language-server ~/.local/share/nvim/mason/packages/lua-language-server/libexec

Create the wrapper script for starting lua-language-server (please fill in your username):

vim ~/.local/share/nvim/mason/packages/lua-language-server/lua-language-server

!/usr/bin/env bash

exec "/home/your-username/.local/share/nvim/mason/packages/lua-language-server/libexec/bin/lua-language-server" "$@"

chmod +x ~/.local/share/nvim/mason/packages/lua-language-server/lua-language-server

Enjoy your lua-lsp-server for aarch64 :)

For reference:

⚡➜ lua-language-server uname -a Linux localhost 6.2.1-PRoot-Distro #1 SMP PREEMPT Tue Mar 19 10:23:20 UTC 2024 aarch64 GNU/Linux

⚡➜ lua-language-server sudo pacman -Qi lua-language-server Name : lua-language-server Version : 3.9.1-1 Description : Lua Language Server coded by Lua Architecture : aarch64 URL : https://luals.github.io Licenses : MIT Groups : None Provides : None Depends On : bash gcc-libs Optional Deps : None Required By : None Optional For : None Conflicts With : None Replaces : None Installed Size : 18.40 MiB Packager : Arch Linux ARM Build System builder+n1@archlinuxarm.org Build Date : Tue 14 May 2024 07:18:22 PM EEST Install Date : Sun 19 May 2024 09:50:19 AM EEST Install Reason : Explicitly installed Install Script : No Validated By : Signature