Hello, LINGUAS is a concept in gettext tooling. I do not understand why we overload it in package management in the first place. It is an environment variable that we set up in make.conf, because that's an easy way to get it into the build environment to have the standard way of limiting translations work.
By overloading it for IUSE_EXPAND we effectively make it pretty much impossible to have the choice of ALL translation files, except when it means extra packages; without conditional LINGUAS setting, that is. The standard LINGUAS variable acts as follows: If unset: Build all translations If set to an UNORDERED listing of language codes: Include translations for listed languages (or dialects) If set to an empty string or similar: Don't include any translations We currently have wrong behaviour for when it's unset, as as far as IUSE_EXPAND is concerned - we don't have a default that includes all available linguas as far as I know. Though in the real world, I don't think it matters much, and it's convenient for those that just build a gentoo machine for use within the family, with known language capabilities within. As a side note: LINGUAS does not only control which .mo files happen to be installed (which you could get rid of later easily with localepurge) - it also is used to filter out unwanted translations in files which have all the translations in the same file; this includes, but is not limited to .desktop files. This used to be a intltool thing, but nowadays gettext has derived such support directly as well. Mart