Skip to content

netbox module won't evaluate in recent nixos-unstable #281680

@mjm

Description

@mjm

Describe the bug

The NixOS tests for netbox are failing to evaluate:

in job ‘nixos.tests.netbox_3_6.x86_64-linux’:
error:
       … while evaluating a branch condition

         at /nix/store/wcidiyklj0nrljlz5m3qlkvhv8f2ddv8-source/nixos/release-combined.nix:17:28:

           16|
           17|   removeMaintainers = set: if builtins.isAttrs set
             |                            ^
           18|     then if (set.type or "") == "derivation"

       … while calling the 'isAttrs' builtin

         at /nix/store/wcidiyklj0nrljlz5m3qlkvhv8f2ddv8-source/nixos/release-combined.nix:17:31:

           16|
           17|   removeMaintainers = set: if builtins.isAttrs set
             |                               ^
           18|     then if (set.type or "") == "derivation"

       (stack trace truncated; use '--show-trace' to show the full trace)

       error: function 'anonymous lambda' called with unexpected argument 'plugins'

       at /nix/store/wcidiyklj0nrljlz5m3qlkvhv8f2ddv8-source/pkgs/servers/web-apps/netbox/default.nix:1:1:

            1| { lib, nixosTests, callPackage, }:
             | ^
            2| let

It seems like the module tries to override the package to pass in the plugins that are configured in the module, but for some reason it's overriding the function in pkgs/servers/web-apps/netbox/default.nix instead of the one in pkgs/servers/web-apps/netbox/generic.nix. The former doesn't have a plugins argument, so that causes this error.

You can also replicate this in nix repl:


nix-repl> :lf nixpkgs                                
Added 15 variables.

nix-repl> pkgs = legacyPackages.x86_64-linux         

nix-repl> pkgs.netbox_3_6.override { plugins = []; } 
error:
       … while calling a functor (an attribute set with a '__functor' attribute)

         at «string»:1:1:

            1| pkgs.netbox_3_6.override { plugins = []; }
             | ^

       … while calling a functor (an attribute set with a '__functor' attribute)

         at /nix/store/7ddzmp96d5m8j4fmh057akxi6fml7jm7-source/lib/customisation.nix:104:43:

          103|       # Re-call the function but with different arguments
          104|       overrideArgs = mirrorArgs (newArgs: makeOverridable f (overrideWith newArgs));
             |                                           ^
          105|       # Change the result of the function call by applying g to it

       (stack trace truncated; use '--show-trace' to show the full trace)

       error: function 'anonymous lambda' called with unexpected argument 'plugins'

       at /nix/store/7ddzmp96d5m8j4fmh057akxi6fml7jm7-source/pkgs/servers/web-apps/netbox/default.nix:1:1:

            1| { lib, nixosTests, callPackage, }:
             | ^
            2| let

I don't really know what changed to cause this to happen, as it doesn't seem like it should.

Steps To Reproduce

Steps to reproduce the behavior:

  1. services.netbox.enable = true;

Expected behavior

The system configuration should evaluate.

Notify maintainers

@minijackson @RaitoBezarius @n0emis

Metadata

Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.7.0, NixOS, 24.05 (Uakari), 24.05.20240115.c3e128f`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.1`
 - nixpkgs: `/nix/store/g16z4fs1mrbkxc4x6wm8xbrh13nc7aw4-source`

Add a 👍 reaction to issues you find important.

Metadata

Metadata

Assignees

No one assigned

    Labels

    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