1
0
mirror of https://github.com/nix-community/home-manager synced 2024-06-26 08:28:30 +02:00

neovim: suffix path with extraPackages (#1756)

* neovim: suffix path with extraPackages
* neovim: avoid generating empty blocks in config
* fix(neovim): install plugin regardless if there is config
This commit is contained in:
Matthieu Coudron 2021-02-06 20:43:17 +01:00 committed by GitHub
parent d420287583
commit fc87ac92af
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -43,29 +43,28 @@ let
# A function to get the configuration string (if any) from an element of 'plugins'
pluginConfig = p:
if builtins.hasAttr "plugin" p && builtins.hasAttr "config" p then ''
if p ? plugin && (p.config or "") != "" then ''
" ${p.plugin.pname} {{{
${p.config}
" }}}
'' else
"";
moduleConfigure = optionalAttrs (cfg.extraConfig != ""
|| (lib.filter (hasAttr "config") cfg.plugins) != [ ]) {
customRC = cfg.extraConfig
+ pkgs.lib.concatMapStrings pluginConfig cfg.plugins;
packages.home-manager = {
start = filter (f: f != null) (map (x:
if x ? plugin && x.optional == true then null else (x.plugin or x))
moduleConfigure = {
packages.home-manager = {
start = filter (f: f != null) (map
(x: if x ? plugin && x.optional == true then null else (x.plugin or x))
cfg.plugins);
opt = filter (f: f != null)
(map (x: if x ? plugin && x.optional == true then x.plugin else null)
cfg.plugins);
opt = filter (f: f != null)
(map (x: if x ? plugin && x.optional == true then x.plugin else null)
cfg.plugins);
};
};
customRC = cfg.extraConfig
+ pkgs.lib.concatMapStrings pluginConfig cfg.plugins;
};
extraMakeWrapperArgs = lib.optionalString (cfg.extraPackages != [ ])
''--prefix PATH : "${lib.makeBinPath cfg.extraPackages}"'';
''--suffix PATH : "${lib.makeBinPath cfg.extraPackages}"'';
in {
options = {
@ -242,8 +241,6 @@ in {
};
config = let
extraMakeWrapperArgs = lib.optionalString (cfg.extraPackages != [ ])
''--prefix PATH : "${lib.makeBinPath cfg.extraPackages}"'';
neovimConfig = pkgs.neovimUtils.makeNeovimConfig {
inherit (cfg)
extraPython3Packages withPython3 extraPythonPackages withPython