It's not so much a bug in postgres as it is a requirement: to set up a cluster with the right configuration, it needs a working locale.
For the generic job of creating an initial cluster, it's probably better for it to fail than to make a sensible-but-not-necessarily-correct choice. What we have though is an application-specific database. We're in a better position to enforce choices.
I'm attaching a term.log from a failed installation. For reference, here's my locale (which, honestly, I didn't set up this way to be difficult — it's just what came out of the system installer):
$ locale
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=en_GB.UTF-8
LC_TIME=en_GB.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=en_GB.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=en_GB.UTF-8
LC_NAME=en_GB.UTF-8
LC_ADDRESS=en_GB.UTF-8
LC_TELEPHONE=en_GB.UTF-8
LC_MEASUREMENT=en_GB.UTF-8
LC_IDENTIFICATION=en_GB.UTF-8
LC_ALL=
It's not so much a bug in postgres as it is a requirement: to set up a cluster with the right configuration, it needs a working locale.
For the generic job of creating an initial cluster, it's probably better for it to fail than to make a sensible- but-not- necessarily- correct choice. What we have though is an application- specific database. We're in a better position to enforce choices.
I'm attaching a term.log from a failed installation. For reference, here's my locale (which, honestly, I didn't set up this way to be difficult — it's just what came out of the system installer):
$ locale "en_US. UTF-8" en_GB.UTF- 8 "en_US. UTF-8" en_GB.UTF- 8 "en_US. UTF-8" en_GB.UTF- 8 en_GB.UTF- 8 en_GB.UTF- 8 en_GB.UTF- 8 ON=en_GB. UTF-8
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE=
LC_NUMERIC=
LC_TIME=en_GB.UTF-8
LC_COLLATE=
LC_MONETARY=
LC_MESSAGES=
LC_PAPER=
LC_NAME=en_GB.UTF-8
LC_ADDRESS=
LC_TELEPHONE=
LC_MEASUREMENT=
LC_IDENTIFICATI
LC_ALL=