Strange error when `nixos-rebuild`

Configuration
I set colors at here, and used it in Sway configs at here

But I got this error while rebuilding:

building the system configuration...
error:
       … while calling the 'head' builtin

         at /nix/store/3j9garb3574mxikwbi6zn594j8mjd19s-source/lib/attrsets.nix:784:11:

          783|         || pred here (elemAt values 1) (head values) then
          784|           head values
             |           ^
          785|         else

       … while evaluating the attribute 'value'

         at /nix/store/3j9garb3574mxikwbi6zn594j8mjd19s-source/lib/modules.nix:768:9:

          767|     in warnDeprecation opt //
          768|       { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
             |         ^
          769|         inherit (res.defsFinal') highestPrio;

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

       error: attribute 'crust' missing

       at /nix/store/rdb9cg00wqgj8h7ia83f5b3w7i8s9jzf-source/home/desktop/sway.nix:82:24:

           81|           indicator = "#${colors.text}";
           82|           border = "#${colors.crust}";
             |                        ^
           83|           text = "#${colors.text}";

If color variables passed to sway.nix, there shouldn’t be only crust one variable not found. IDK why.

You’re shadowing the colors variable because the attribute set here is using rec:

You’ll either need to rename your colors variable so that you can safely reference it or you’ll need to remove rec so that you can refer to your variable instead of the attribute of the same name.