1# TODO check that no license information gets lost
2{ callPackage, config, lib, vimUtils, vim, darwin, llvmPackages
3, neovimUtils
4, luaPackages
5}:
6
7let
8
9 inherit (vimUtils.override {inherit vim;})
10 buildVimPlugin;
11
12 inherit (lib) extends;
13
14 initialPackages = self: { };
15
16 plugins = callPackage ./generated.nix {
17 inherit buildVimPlugin;
18 inherit (neovimUtils) buildNeovimPlugin;
19 };
20
21 # TL;DR
22 # * Add your plugin to ./vim-plugin-names
23 # * run ./update.py
24 #
25 # If additional modifications to the build process are required,
26 # add to ./overrides.nix.
27 overrides = callPackage ./overrides.nix {
28 inherit (darwin.apple_sdk.frameworks) Cocoa CoreFoundation CoreServices;
29 inherit buildVimPlugin;
30 inherit llvmPackages luaPackages;
31 };
32
33 aliases = if config.allowAliases then (import ./aliases.nix lib) else final: prev: {};
34
35 extensible-self = lib.makeExtensible
36 (extends aliases
37 (extends overrides
38 (extends plugins initialPackages)
39 )
40 );
41in
42 extensible-self