APKBUILD examples:Neovim: Difference between revisions
WhyNotHugo (talk | contribs) (Fix formatting for code snippets) |
WhyNotHugo (talk | contribs) (Align subtitle hierarchy) |
||
| Line 36: | Line 36: | ||
options="!check" # requires vusted | options="!check" # requires vusted | ||
== Example == | |||
See [https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/community/nvim-lspconfig/APKBUILD?ref_type=heads community/nvim-lspconfig] for a complete example. | See [https://gitlab.alpinelinux.org/alpine/aports/-/blob/master/community/nvim-lspconfig/APKBUILD?ref_type=heads community/nvim-lspconfig] for a complete example. | ||
= See also = | == See also == | ||
* [[APKBUILD examples]] | * [[APKBUILD examples]] | ||
[[Category:Development]] | [[Category:Development]] | ||
Latest revision as of 18:56, 19 July 2025
[Draft] Neovim plugin packaging policy
See #16021.
Name
- Must be prefixed with nvim-
- Only have a single nvim- prefix:
- Use nvim-treesitter, instead of nvim-nvim-treesitter
- Omit .nvim suffix:
- Use nvim-telescope, instead of nvim-telescope.nvim
Version
If there are no tags, upstream should be requested to release.
Site
Plugins must be installed in "$pkgdir"/usr/share/nvim/site/pack/dist/opt/$pkgname/. This allows users to lazy load apk managed neovim packages using: :packadd $pkgname, or vim.cmd.packadd('$pkgname').
Doc
If upstream doesn't contain generated helptags, do so in build:
build() {
nvim -u NONE -i NONE -e --headless -c "helptags doc" -c quit
}
Use amove to package neovim help files and tags in the -doc subpackage:
doc() {
default_doc
amove usr/share/nvim/site/pack/dist/opt/$pkgname/doc
}
Tests
Skipping check is fine if testing a plugin requires vusted (which is not yet packaged):
options="!check" # requires vusted
Example
See community/nvim-lspconfig for a complete example.