mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-20 16:15:43 +02:00
modules/nixpkgs: initial pkgs
option, drop defaultPkgs
specialArg
This minimal implementation allows `nixpkgs.pkgs` to be defined, but does not implement evaluating an instance from a pkgsPath when _not_ defined. The `defaultPkgs` specialArg is dropped in favour of `nixpkgs.pkgs` being defined. If it's not defined, an assertion is thrown. In the future, a nixpkgs source path can be supplied, defaulting to the flake's `inputs.nixpkgs`. Along with other `nixpkgs.*` options, this will allow a `pkgs` instance to be evaluated within the module eval.
This commit is contained in:
parent
8c3d521bff
commit
4b7a41276a
11 changed files with 111 additions and 43 deletions
|
@ -55,6 +55,10 @@ in
|
|||
_module.args.nixvimLib = lib.mkDefault config.lib.nixvim.extendedLib;
|
||||
}
|
||||
|
||||
# Use global packages by default in nixvim's submodule
|
||||
# TODO: `useGlobalPackages` option and/or deprecate using host packages?
|
||||
{ programs.nixvim.nixpkgs.pkgs = lib.mkDefault pkgs; }
|
||||
|
||||
# Propagate nixvim's assertions to the host modules
|
||||
(lib.mkIf cfg.enable { inherit (cfg) warnings assertions; })
|
||||
|
||||
|
|
|
@ -18,7 +18,6 @@ let
|
|||
cfg = config.programs.nixvim;
|
||||
nixvimConfig = config.lib.nixvim.modules.evalNixvim {
|
||||
extraSpecialArgs = {
|
||||
defaultPkgs = pkgs;
|
||||
darwinConfig = config;
|
||||
};
|
||||
modules = [
|
||||
|
|
|
@ -17,7 +17,6 @@ let
|
|||
cfg = config.programs.nixvim;
|
||||
nixvimConfig = config.lib.nixvim.modules.evalNixvim {
|
||||
extraSpecialArgs = {
|
||||
defaultPkgs = pkgs;
|
||||
hmConfig = config;
|
||||
};
|
||||
modules = [
|
||||
|
|
|
@ -18,7 +18,6 @@ let
|
|||
cfg = config.programs.nixvim;
|
||||
nixvimConfig = config.lib.nixvim.modules.evalNixvim {
|
||||
extraSpecialArgs = {
|
||||
defaultPkgs = pkgs;
|
||||
nixosConfig = config;
|
||||
};
|
||||
modules = [
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
default_pkgs: self:
|
||||
{
|
||||
# TODO: Deprecate this arg in favour of using module options
|
||||
pkgs ? default_pkgs,
|
||||
lib ? pkgs.lib,
|
||||
extraSpecialArgs ? { },
|
||||
|
@ -18,10 +19,13 @@ let
|
|||
nixvimConfig = evalNixvim {
|
||||
modules = [
|
||||
mod
|
||||
# TODO: only include this when `args?pkgs`:
|
||||
{
|
||||
_file = ./standalone.nix;
|
||||
nixpkgs.pkgs = lib.mkDefault pkgs;
|
||||
}
|
||||
];
|
||||
extraSpecialArgs = {
|
||||
defaultPkgs = pkgs;
|
||||
} // extraSpecialArgs;
|
||||
inherit extraSpecialArgs;
|
||||
};
|
||||
inherit (nixvimConfig.config) enableMan build;
|
||||
in
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue