diff options
author | Kevin Cox <kevincox@kevincox.ca> | 2022-06-26 18:03:55 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-26 18:03:55 -0400 |
commit | 3f13b3fb7ead04908cf40be976c91b9268c168d3 (patch) | |
tree | 24b48682c6f6523443b4dddd53a804d38d5b18b3 /nixos | |
parent | de3a07bf85153116f82b432863db1fc5cec9cf34 (diff) | |
parent | d534fa7085900882da0ca9b5ac0e5ad7c5070c81 (diff) |
Merge pull request #179194 from gravndal/supportedLocales
nixos/i18n: include locales from extraLocaleSettings in supportedLocales
Diffstat (limited to 'nixos')
-rw-r--r-- | nixos/doc/manual/from_md/release-notes/rl-2211.section.xml | 10 | ||||
-rw-r--r-- | nixos/doc/manual/release-notes/rl-2211.section.md | 4 | ||||
-rw-r--r-- | nixos/modules/config/i18n.nix | 14 |
3 files changed, 20 insertions, 8 deletions
diff --git a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml index f29f30660be31..f69d23cea8111 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml @@ -192,10 +192,12 @@ <listitem> <para> <literal>i18n.supportedLocales</literal> is now by default - only generated with the default locale set in - <literal>i18n.defaultLocale</literal>. This got copied over - from the minimal profile and reduces the final system size by - 200MB. If you require all locales installed set the option to + only generated with the locales set in + <literal>i18n.defaultLocale</literal> and + <literal>i18n.extraLocaleSettings</literal>. This got + partially copied over from the minimal profile and reduces the + final system size by up to 200MB. If you require all locales + installed set the option to <literal>[ "all" ]</literal>. </para> </listitem> diff --git a/nixos/doc/manual/release-notes/rl-2211.section.md b/nixos/doc/manual/release-notes/rl-2211.section.md index 89a59edee798b..8b8b021c20209 100644 --- a/nixos/doc/manual/release-notes/rl-2211.section.md +++ b/nixos/doc/manual/release-notes/rl-2211.section.md @@ -80,8 +80,8 @@ In addition to numerous new and upgraded packages, this release has the followin and [changelog](https://ngrok.com/docs/ngrok-agent/changelog). Notably, breaking changes are that the config file format has changed and support for single hypen arguments was dropped. -- `i18n.supportedLocales` is now by default only generated with the default locale set in `i18n.defaultLocale`. - This got copied over from the minimal profile and reduces the final system size by 200MB. +- `i18n.supportedLocales` is now by default only generated with the locales set in `i18n.defaultLocale` and `i18n.extraLocaleSettings`. + This got partially copied over from the minimal profile and reduces the final system size by up to 200MB. If you require all locales installed set the option to ``[ "all" ]``. - The `isPowerPC` predicate, found on `platform` attrsets (`hostPlatform`, `buildPlatform`, `targetPlatform`, etc) has been removed in order to reduce confusion. The predicate was was defined such that it matches only the 32-bit big-endian members of the POWER/PowerPC family, despite having a name which would imply a broader set of systems. If you were using this predicate, you can replace `foo.isPowerPC` with `(with foo; isPower && is32bit && isBigEndian)`. diff --git a/nixos/modules/config/i18n.nix b/nixos/modules/config/i18n.nix index 53dd325457e01..c55726d09c608 100644 --- a/nixos/modules/config/i18n.nix +++ b/nixos/modules/config/i18n.nix @@ -53,8 +53,18 @@ with lib; supportedLocales = mkOption { type = types.listOf types.str; - default = [ (config.i18n.defaultLocale + "/UTF-8") ]; - defaultText = literalExpression "[ (config.i18n.defaultLocale + \"/UTF-8\") ]"; + default = builtins.map (l: l + "/UTF-8") + (unique ( + [ config.i18n.defaultLocale ] ++ + (attrValues (filterAttrs (n: v: n != "LANGUAGE") config.i18n.extraLocaleSettings)) + )); + defaultText = literalExpression '' + builtins.map (l: l + "/UTF-8") + (unique ( + [ config.i18n.defaultLocale ] ++ + (attrValues (filterAttrs (n: v: n != "LANGUAGE") config.i18n.extraLocaleSettings)) + )) + ''; example = ["en_US.UTF-8/UTF-8" "nl_NL.UTF-8/UTF-8" "nl_NL/ISO-8859-1"]; description = '' List of locales that the system should support. The value |