{ lib, config, ... }: let inherit (lib) mkOption types ; cfg = config.i18n; in { options = { i18n = { localeSettings = mkOption { type = types.attrsOf types.str; description = "The system wide locale settings"; default = {}; }; locales = mkOption { type = types.listOf types.str; description = "The locales of the system"; }; }; }; config = { i18n.locales = builtins.attrValues cfg.localeSettings; }; }