- Replace nullable lua option with a no-default option.
- Made it so the deprecated option is only declared when `lua = true` is passed.
- Replace `normalizeMappings` with a `removeDeprecatedMapAttrs` helper.
- Added warnings for all options that historically had `lua` support.
Allow passing in `key` and `action` as either bool or an attrset.
If `false`, the option is omitted. If `true` or an attrset, the option is included.
If an attrset is used, it will update the default `mkOption` args.
This is useful for overriding `type` or adding an `example`.
This allows to avoid calling `mkRaw` on lua functions, as they will get
applied automatically.
This could also help in the future to refactor the use of Lua code to
make it more user-friendly.