Finally figured it all out, very frustrating. It transpired that there were two typos in my scripts, firstly I had tried to use a character set called UTF8 in my
localedef command (instead of UTF
-8). Then, less critically although the locale was being created as 'en_US.UTF-8', the part after the period gets adjusted down to lower case and loses the hypen. You can check this by running
locale -a which will list the available locales. The
Chinese blog where this information first appeared in fact has it noted correctly, but I had wrongly assumed that difference to be a typo on their part, also because it has appeared online incorrectly
elsewhere. It's less confusing to call the locale
en_US.utf8 from the outset. So:
- Code:
localedef -c -f UTF-8 -i en_US en_US.utf8
locale -a
export LANG=en_US.utf8
locale
Despite that the language is set to en_US, you can still use any unicode characters fine. I just tried successfully with Chinese. They render correctly in the filesystem (viewed from remote machines), in the SSH session, and Java can parse them too.
The final thing that was driving me mad was wondering how I had previously seen accents in SSH, but no longer could. I finally worked out that I needed to define the 'remote character set' in PuTTY as UTF-8. When I had been working on this earlier in the week I was using my Macbook whereas the last few days I was on my PC, which might explain the difference.

Anyhow, I have updated the
Synology Java packages on my blog. I also added a sanity check to the uninstaller (before running a recursive delete against a variable name

). Now I can get going on the Serviio package.
