1{ self, inputs }:
2user: pkgs:
3let
4 darwin = pkgs.lib.strings.hasSuffix "-darwin" pkgs.stdenv.hostPlatform.system;
5
6 host = {
7 inherit darwin;
8 linux = !darwin;
9 };
10
11 userDir = ../users + "/${user}";
12 userConfig = import (userDir + "/user.nix");
13
14 config = inputs.nvf.lib.neovimConfiguration {
15 inherit pkgs;
16 modules = builtins.filter (f: f != null) [
17 (../users + ("/" + user + "/vim.nix"))
18 ../modules/neovim
19 ];
20 extraSpecialArgs = {
21 inherit host;
22 flake = self;
23 user = userConfig;
24 };
25 };
26in
27config.neovim // { input = config; }