Ubuntuでja_JP.EUC-JPを使用する

Ubuntuでは最初に使えるlocaleが決まってるようです。
PostgresでEUC-JPのデータベースを作ろうとすると、EUC-JPなんてねえよ、と言われたので。

$ locale -a
C
POSIX
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZW.utf8
ja_JP.utf8

という感じで確かにEUC-JPとかは標準では使えません。

locale-gen

で、locale-genというやつがあるのでそれを使うとlocaleを追加できるらしい。manを読むと、

多くのユーザはごく限られたロケールしか使用しないにも関わらず、コンパイルされたロケールファイルは50MBほどディスクを使用します。
だからディスク容量を節約するために、コンパイルされたロケールパッケージは配布されていません。
ただし、locale-genを使用すると、自動的に使用したいロケールのパッケージがインストールされます。

的なことが書いてあります。

EUC-JP設定

現在使用できるロケール/var/lib/locales/supported.d/localにあります。

$ cat /var/lib/locales/supported.d/local
ja_JP.UTF-8 UTF-8
en_US.UTF-8 UTF-8

で、locale-genで使用できるようになるロケール/usr/share/i18n/SUPPORTEDにあるそうな。

$ grep -i 'ja' SUPPORTED
ja_JP.UTF-8 UTF-8
ja_JP.EUC-JP EUC-JP

ということで、ja_JP.UTF-8 UTF-8を/var/lib/locales/supported.d/localに追加

$ sudo vi /var/lib/locales/supported.d/local

その後、

$ sudo locale-gen ja_JP.EUC-JP
Generating locales...
  ja_JP.EUC-JP... done
Generation complete.

するとEUC-JPが使用できるように。以上、メモでした。