Skip to content

_modules.args is not respected #188

@PerchunPak

Description

@PerchunPak

I am not sure why, but values from _module.args cannot be accessed by modules in modules/nixos

Placing this module in modules/nixos

{ lib, config, ... }@options:
{
  time.timeZone =
    let
      log-options = lib.trace (lib.attrNames options);
      log-module-args = lib.trace (lib.attrNames config._module.args);
    in
    log-options log-module-args "UTC";
}

and then running nix eval .#nixosConfigurations.my-system.config.system.build.toplevel gives this result

# modules get these arguments
trace: [ "_class" "_prefix" "channel" "config" "format" "host" "inputs" "lib" "modulesPath" "namespace" "nixpkgsModulesPath" "options" "pkgs" "specialArgs" "system" "systems" "target" "virtual" ]
# but there are also these arguments in `_module.args`
trace: [ "baseModules" "extendModules" "extraModules" "inputs" "moduleType" "modules" "noUserModules" "pkgs" "utils" ]

As we can see, nothing except inputs and pkgs is passed to the modules

mre.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions