nix-community.nixvim/lib/modules.nix

39 lines
1.1 KiB
Nix
Raw Normal View History

{
lib,
self,
}:
2024-09-25 11:01:12 +01:00
let
removed = {
# Removed 2024-09-24
getAssertionMessages = "";
# Removed 2024-09-27
specialArgs = "It has been integrated into `evalNixvim`";
specialArgsWith = "It has been integrated into `evalNixvim`";
};
in
{
# Evaluate nixvim modules, checking warnings and assertions
evalNixvim =
{
modules ? [ ],
extraSpecialArgs ? { },
check ? null, # TODO: Remove stub
}@args:
# TODO: `check` argument removed 2024-09-24
# NOTE: this argument was always marked as experimental
assert lib.assertMsg (!args ? "check")
"`evalNixvim`: passing `check` is no longer supported. Checks are now done when evaluating `config.build.package` and can be avoided by using `config.build.packageUnchecked` instead.";
lib.evalModules {
modules = [ ../modules/top-level ] ++ modules;
2024-09-25 11:01:12 +01:00
specialArgs = {
inherit lib;
# TODO: deprecate `helpers`
helpers = self;
} // extraSpecialArgs;
};
}
2024-09-25 11:01:12 +01:00
// lib.mapAttrs (
name: msg:
throw ("`modules.${name}` has been removed." + lib.optionalString (msg != "") (" " + msg))
) removed