How to add a new locale to macOS Catalina

On System Preferences, Language and Region, when I select United Kingdom the output of locale is

LANG="en_GB"
LC_COLLATE="en_GB"
LC_CTYPE="en_GB"
LC_MESSAGES="en_GB"
LC_MONETARY="en_GB"
LC_NUMERIC="en_GB"
LC_TIME="en_GB"
LC_ALL=

If I select Norway though the outputs is

LANG="en_NO"
LC_COLLATE="C"
LC_CTYPE="C"
LC_MESSAGES="C"
LC_MONETARY="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_ALL=

I suspect this is the reason why commands like ls show dates in the mon date format instead of date mon, even when Norwegian follows the latter. locale -a | grep en_NO shows nothing and I guess that's why. So I tried to copy /usr/share/locale/no_NO to /usr/share/locale/en_NO and change it to suite my needs and of course I receive mkdir: en_NO: Operation not permitted because the system volume is mounted as read only on Catalina. So, is there any way I can add my own locale?


Solution 1:

I don't know if your issue was identical to mine, but this worked for me at least. I also noticed that my system tried to set nb_no.UTF-8 (and failed) instead of no.NO.

  1. vim ~/.config/fish/config.fish
  2. set -x LC_ALL no_NO.UTF-8