Dnia 31 maja 2016 23:34:07 CEST, "Jörg Schaible" <joerg.schai...@gmx.de> 
napisał(a):
>How can I select different linguas for individual packages with this 
>approach?

Using the currently available mechanisms you could use package.env to alter 
INSTALL_MASK, e.g.:

/etc/portage/env/german:
  INSTALL_MASK="@l10n -@l10n-de"

/etc/portage/package.env:
  dev-foo/* german

However, we will probably deploy a convenient package.install_mask file.

>Michał Górny wrote:
>
>> Hello, everyone.
>> 
>> Since the previous thread doesn't seem to have brought any good
>> solution to the problem other than stopping to (ab)use LINGUAS
>> as USE_EXPAND, I would like to start a RFC on a draft solution that
>> I'd like afterwards to propose to the Council.
>> 
>> 
>> Rationale
>> ---------
>> 
>> The direct reason for this is that LINGUAS is treated as non-standard
>> special variable by multiple build systems. This includes the
>following
>> problems:
>> 
>> 1. no localizations are installed if it is set to an empty value
>(which
>> happens in EAPI 5 when the ebuild does not use the flags),
>> 
>> 2. there were historical cases where order of LINGUAS mattered.
>> 
>> Those problems can't be reasonably solved within the scope of
>> USE_EXPAND. Furthermore, the use of flags to control localizations is
>> causing the following problems:
>> 
>> a. maintaining correct flag list is a serious maintenance burden,
>> especially that differences in build systems make it hard to figure
>out
>> the 'most correct' set automatically,
>> 
>> b. missing flags result in localizations being silently dropped, with
>> no clear way (i.e. for QA check) to detect that,
>> 
>> c. large number of additional USE flags make it pretty much
>impossible
>> to limit localizations this way when using binary packages.
>> 
>> 
>> The plan
>> --------
>> 
>> 1. Get approval on INSTALL_MASK GLEP [1] and finish implementing it
>> in Portage.
>> 
>> 2. Introduce a new USE_EXPAND that can be used to control
>localizations
>> whenever this is really required (dependencies, large files, etc.).
>> Let's use L10N as a draft name for it.
>> 
>> 3. Fix all packages using LINGUAS as USE_EXPAND, either by converting
>> to L10N or by removing the needless flags.
>> 
>> 4. Remove LINGUAS from USE_EXPAND, therefore removing the special
>EAPI
>> rules from the variable.
>> 
>> 5. Release a news item explaining the users the change,
>> and the necessary action. Request changing LINGUAS to L10N
>> in make.conf, and make LINGUAS considered an 'advanced variable' for
>> implicit localization control (i.e. passed through to build systems).
>> Recommend clean INSTALL_MASK solution instead.
>> 
>> The example 'new' make.conf would probably look like:
>> 
>>   # controlling e.g. langpacks
>>   L10N="en_US pl"
>>   # stripping unneeded files
>>   INSTALL_MASK="@linguas -@linguas_pl"
>> 
>> 
>> Your thoughts?
>> 
>> 
>> [1]:https://wiki.gentoo.org/wiki/User:MGorny/GLEP:INSTALL_MASK
>> 


-- 
Best regards,
Michał Górny (by phone)

Reply via email to