nvim-neorocks / rocks.nvim

🌒 Neovim plugin management inspired by Cargo, powered by luarocks
GNU General Public License v3.0
729 stars 15 forks source link

luarocks packaging requests #111

Open mrcjkb opened 10 months ago

mrcjkb commented 10 months ago

[!NOTE]

🦥 This tracking issue is for the lazy and desperate 🦥

If you would like to actively contribute to getting plugins on luarocks.org, see this wiki page 🙏

Feel free to post your issues or PRs here.

Original text:

If you come across a plugin that isn't on luarocks.org, and you think it should be, you can leave a comment here (or thumbs up on any open PRs).

glindstedt commented 8 months ago

Migrated most of my config to use rocks.nvim and found these plugins to be missing from luarocks:

mrcjkb commented 8 months ago
datwaft commented 7 months ago

Just found this issue and I found that rktjmp/hotpot.nvim is missing from luarocks.

mrcjkb commented 7 months ago

Just found this issue and I found that rktjmp/hotpot.nvim is missing from luarocks.

I'm going to wait for https://github.com/nvim-neorocks/rocks.nvim/pull/236, because ~hotpot.nvim would need to be installed with opt=true and loaded manually, using require("rocks").packadd(...).~

zackerydev commented 7 months ago

https://github.com/nvim-neo-tree/neo-tree.nvim

Found this one today that is missing a luarocks package, last one I need for my config!

mrcjkb commented 7 months ago
NTBBloodbath commented 7 months ago

I would love to have this one to make some extensions for rocks.nvim like a rocks-ui.nvim module and easily write the UI/UX with it, nui.nvim is already on luarocks so it shouldn't take so long :p

mrcjkb commented 7 months ago
Anrock commented 7 months ago

https://github.com/freddiehaddad/feline.nvim ?

mrcjkb commented 7 months ago
benlubas commented 7 months ago

molten-nvim

but, it's a remote python plugin with a few python dependencies, so I haven't done it myself. I'm not sure if you have any advice on this? If there's going to be a lot of discussion we can move somewhere else to not pollute this thread.

mrcjkb commented 7 months ago

molten-nvim

but, it's a remote python plugin with a few python dependencies, so I haven't done it myself. I'm not sure if you have any advice on this? If there's going to be a lot of discussion we can move somewhere else to not pollute this thread.

benjstephenson commented 7 months ago

https://github.com/Olical/conjure would be lovely :)

calebeby commented 6 months ago

These would be helpful:

https://github.com/nvim-telescope/telescope-fzf-native.nvim https://github.com/nvim-telescope/telescope-fzy-native.nvim https://github.com/natecraddock/telescope-zf-native.nvim

mrcjkb commented 6 months ago

telescope-fzy-native.nvim uses submodules to depend on fzy-lua-native. fzy-lua-native is packaged in a very weird way, without any regard for potential module naming clashes (e.g. a lua/native.lua file, wtf?). I don't think it makes sense to attempt to package that. A better alternative might be to rewrite telescope-fzy-native.nvim, so that it depends on fzy, which is packaged properly, instead.

boltlessengineer commented 6 months ago

treesj is already on luarocks, but its dependency should be updated. nvim-treesitter should be removed from dependency^1.

craigmac commented 5 months ago

Some I've come across as I'm moving away from Lazy.nvim to rocks.nvim (huge thanks for this btw, I love the simplicity and thought behind it):

https://github.com/ggandor/leap.nvim https://github.com/ggandor/flit.nvim https://github.com/glacambre/firenvim

mrcjkb commented 5 months ago

@boltlessengineer Updated :smile:

@craigmac sorry for taking so long to respond. I hope to get back to this soon :sweat_smile:

Update:

simifalaye commented 5 months ago

Thanks a lot for all the work on this. I'd like to request these:

Also, I saw you've been working on getting cmp to update its releases so hopefully the maintainer will notice soon. Thanks!

EDIT: @mrcjkb Thanks for publishing these plugins. One thing on the friendly-snippets package: I'm not seeing the "snippets" directory which contains all the snippets it provides on my machine after installing the plugin.

mrcjkb commented 4 months ago

One thing on the friendly-snippets package: I'm not seeing the "snippets" directory which contains all the snippets it provides on my machine after installing the plugin.

Ah, that's not a standard neovim directory. I guess I'll have to open a PR to friendly-snippets then.

mrcjkb commented 4 months ago

@simifalaye friendly-snippets should be fixed now.

simifalaye commented 4 months ago

@mrcjkb Any news on markdown.nvim?

Also, I saw that the gitsigns PR was merged but it's just waiting for a new release to be made?

Thanks very much for all your work, you are a machine!

benlubas commented 4 months ago

Could you possibly help out with benlubas/neorg-se?

It's a plugin that bundles a rust binary using mlua and the luarocks-build-rust-mlua backend. I've been unsuccessful so far in getting lazy to install and build it. I can install with luarocks --local --lua-version 5.1 install neorg-se without errors. But even that doesn't seem like it's building the rust module, and I don't see the libneorg_se.so file that I expect to see anywhere in ~/.luarocks or ~/.local/share/nvim/lazy(-rocks)

relevant part of error: ``` Error: Failed initializing build back-end for build type 'rust-mlua': module 'luarocks.build.rust-mlua' not found: No LuaRocks module found for luarocks.build.rust-mlua no field package.preload['luarocks.build.rust-mlua'] no file '/opt/homebrew/Cellar/luarocks/3.9.2/share/lua/5.4/luarocks/build/rust-mlua.lua' no file '/opt/homebrew/share/lua/5.4/luarocks/build/rust-mlua.lua' no file '/opt/homebrew/share/lua/5.4/luarocks/build/rust-mlua/init.lua' no file '/opt/homebrew/lib/lua/5.4/luarocks/build/rust-mlua.lua' no file '/opt/homebrew/lib/lua/5.4/luarocks/build/rust-mlua/init.lua' no file './luarocks/build/rust-mlua.lua' no file './luarocks/build/rust-mlua/init.lua' no file '/Users/benlubas/.luarocks/share/lua/5.4/luarocks/build/rust-mlua.lua' no file '/Users/benlubas/.luarocks/share/lua/5.4/luarocks/build/rust-mlua/init.lua' no file '/opt/homebrew/lib/lua/5.4/luarocks/build/rust-mlua.so' no file '/opt/homebrew/lib/lua/5.4/loadall.so' no file './luarocks/build/rust-mlua.so' no file '/Users/benlubas/.luarocks/lib/lua/5.4/luarocks/build/rust-mlua.so' no file '/opt/homebrew/lib/lua/5.4/luarocks.so' no file '/opt/homebrew/lib/lua/5.4/loadall.so' no file './luarocks.so' no file '/Users/benlubas/.luarocks/lib/lua/5.4/luarocks.so' luarocks-build-rust-mlua dev-1 is now installed in /Users/benlubas/random/neorg_se_install_bug/.repro/data/nvim/lazy-rocks/neorg-se (license: MIT) ```
mrcjkb commented 4 months ago

I'm away from my laptop this week.

Any news on markdown.nvim?

I'm planning on publishing the tree-sitter parsers with 0-ver versions (in anticipation nvim-treesitter going semver one day). When that is done, markdown.nvim can add them as a dependency. If it depended on the current dev packages, it wouldn't be possible to install a non-dev version of markdown.nvim.

Edit:

mrcjkb commented 4 months ago

Could you possibly help out with benlubas/neorg-se?

I can see if it works with rocks.nvim when I'm back on my laptop.

It looks like whatever lazy.nvim is using to install it can't find the luarocks-build-rust-mlua build backend, which could have something to do with how lazy.nvim installs dependencies and rocks into separate trees (iirc; not sure about this).

You could try working around this by installing luarocks-build-rust-mlua locally: luarocks --local install luarocks-build-rust-mlua

benlubas commented 4 months ago

Thank you, that did allow me to install it! I can get another rocks.nvim user to test it for me so don't worry about that. thank you for the suggestion!

simifalaye commented 4 months ago

This would be great: https://github.com/creativenull/efmls-configs-nvim

vimproved commented 4 months ago

would love to see https://github.com/udayvir-singh/tangerine.nvim and https://github.com/udayvir-singh/hibiscus.nvim :)

mrcjkb commented 4 months ago

@simifalaye

@vimproved I'll look into opening some PRs. By the looks of it, bootstrapping would be unnecessary with rocks.nvim.

Edit:

Added both plugins to the NURR for now.

Freed-Wu commented 4 months ago

firenvim is going to be a challenge, because it uses an autoload function to install.

Do you mean call firenvim#install(0)? Every time we install a new browser, it should be execute to let it find it. Maybe we don't need to ru this function during installing, and let user do it when they install a browser.

nvim-treesitter going semver one day

nvim-treesitter disappear from luarocks. Anyone know what happened?

mrcjkb commented 4 months ago

Do you mean call firenvim#install(0)? Every time we install a new browser, it should be execute to let it find it. Maybe we don't need to ru this function during installing, and let user do it when they install a browser.

That sounds reasonable to me. Perhaps that info should be added to the firenvim readme (if not already present). Still, it would be nice to have it auto install for existing browsers (but not a must-have). But I suppose since this doesn't get cleaned up when uninstalling the plugin, it might be better to have users call it explicitly.

nvim-treesitter disappear from luarocks. Anyone know what happened?

Yep, we removed it because it's very outdated and causes a lot of problems and conflicts with the luarocks tree-sitter parsers. There's a nvim-treesitter-legacy-api which is basically nvim-treesitter without TSInstall and without queries, which you can use for plugins that depend on the deprecated nvim-treesitter API. If you want nvim-treesitter with TSInstall, you need to use rock-git.nvim. But keep in mind, the master branch may cause conflicts and the main branch requires nvim nightly.

Freed-Wu commented 4 months ago

added to the firenvim readme

Add rocks.nvim to https://github.com/glacambre/firenvim#installing :smile:

very outdated

Perhaps a scm is possible?

mrcjkb commented 4 months ago

Perhaps a scm is possible?

I guess am scm version for the main branch would be reasonable. TSInstall would still be broken though, because it makes assumptions about where the queries are installed. So you might as well use the scm version of the nvim-treesitter-legacy-api.

mrcjkb commented 4 months ago

@Freed-Wu here's an experiment...

Freed-Wu commented 4 months ago

So TSInstall XXX is Rocks install tree-sitter-XXX, right? TSInstall all is search all tree-sitter-XXX in luarocks.org and install them, right?

mrcjkb commented 4 months ago

So TSInstall XXX is Rocks install tree-sitter-XXX, right? TSInstall all is search all tree-sitter-XXX in luarocks.org and install them, right?

Yes - If rocks.nvim is installed.

Freed-Wu commented 4 months ago

I see. Original TSInstall is in parallel and now its behaviour is like TSInstallSync.

bottd commented 3 months ago

Would be nice to get nushell treesitter on luarocks https://github.com/nushell/tree-sitter-nu

boltlessengineer commented 3 months ago

would be nice to have this https://github.com/stevearc/quicker.nvim

mrcjkb commented 3 months ago

Opened an issue with tree-sitter-nu for now

Added quicker.nvim to the NURR.

Nsidorenco commented 3 months ago

Would be nice to have the following :) https://github.com/Issafalcon/neotest-dotnet https://github.com/voldikss/vim-floaterm

mrcjkb commented 3 months ago

@Nsidorenco

simifalaye commented 1 month ago

@mrcjkb Wanted to bring your attention to this: blink.cmp

From the issues, it looks like the maintainer is open to publishing with luarocks but wanted to ping you in case you may have any guidance to give. Thanks!

mrcjkb commented 1 month ago

@simifalaye thanks for the heads-up. I'll keep my eye on the issue 😃

Freed-Wu commented 1 month ago

https://github.com/wasm-lsp/tree-sitter-wasm

Tree-sitter for wasm :smile:

https://github.com/icedman/nvim-textmate/issues/8

A neovim plugin to use textmate theme and grammar

mrcjkb commented 1 month ago

@Freed-Wu any idea why tree-sitter-wasm isn't supported by nvim-treesitter? I'll be busy this week, but I can likely look into those sometime after Sunday.