neovim: set provider configuration to initrc

as an attempt to simplify configuration: 
instead of having wrapping arguments + an optional neovim configuration
let's always generate a neovim configuration.
The change should be transparent for most users, and require
intervention for users that fulfill both conditions:
- using remote plugins (rare already)
- that set `wrapRc = false` in wrapNeovimUnstable without loading later
  the generated luaRcContent

The fix is then to pass as wrapping arguments the wrapper's generated config via 

(wrapNeovimUnstable neovim-unwrapped { } ).overrideAttrs(oa: { wrapperArgs = oa.wrapperArgs ++ [ ''--cmd "lua dofile('${writeText "init.lua" oa.luaRcContent}')"'' ]; })

neovim: avoid creating empty newlines
This commit is contained in:
teto
2026-02-15 15:50:44 +01:00
parent 9ae96f2f36
commit bd66006c65
2 changed files with 14 additions and 14 deletions
+2
View File
@@ -183,6 +183,8 @@
- `openrgb` was updated to 1.0rc2, which now uses Plugin API version 4.
Some existing OpenRGB plugins may be incompatible or require updates.
- the `neovim` wrapper sets provider-related configuration in its generated config rather than as wrapper arguments. It should not affect configuration unless you set `wrapRc` to false.
- We now use the upstream wrapper script for Gradle, supporting both the `JAVA_HOME` and `GRADLE_OPTS` environment variables.
## Nixpkgs Library {#sec-nixpkgs-release-26.05-lib}
+12 -14
View File
@@ -104,13 +104,16 @@ let
packpathDirs.myNeovimPackages = vimPackageInfo.vimPackage;
finalPackdir = neovimUtils.packDir packpathDirs;
rcContent = ''
${luaRcContent}
''
+ lib.optionalString (neovimRcContent' != "") ''
vim.cmd.source "${writeText "init.vim" neovimRcContent'}"
''
+ lib.optionalString autoconfigure (lib.concatStringsSep "\n" vimPackageInfo.pluginAdvisedLua);
rcContent = lib.concatStringsSep "\n" (
[
providerLuaRc
]
++ lib.optional (luaRcContent != "") luaRcContent
++ lib.optional (neovimRcContent' != "") ''
vim.cmd.source "${writeText "init.vim" neovimRcContent'}"
''
++ lib.optionals autoconfigure vimPackageInfo.pluginAdvisedLua
);
python3Env =
lib.warnIf (attrs ? python3Env)
@@ -125,12 +128,7 @@ let
wrapperArgsStr = if lib.isString wrapperArgs then wrapperArgs else lib.escapeShellArgs wrapperArgs;
generatedWrapperArgs = [
# vim accepts a limited number of commands so we join all the provider ones
"--add-flags"
''--cmd "lua ${providerLuaRc}"''
]
++
generatedWrapperArgs =
lib.optionals
(
finalAttrs.packpathDirs.myNeovimPackages.start != [ ]
@@ -181,7 +179,7 @@ let
++ lib.optionals finalAttrs.wrapRc [
"--set-default"
"VIMINIT"
"lua dofile('${writeText "init.lua" rcContent}')"
"lua dofile('${writeText "init.lua" finalAttrs.luaRcContent}')"
]
++ finalAttrs.generatedWrapperArgs;