1 |
On Sat, May 21, 2016 at 09:41:28AM +0200, Micha?? Górny wrote |
2 |
|
3 |
> I see the following possibilities: |
4 |
> |
5 |
> 1. We start explicitly listing linguas_* in all ebuilds, no matter how |
6 |
> tiny they are. Maintainers are required to keep IUSE up-to-date |
7 |
> and users are forced to rebuild a lot. This is also a QA violation |
8 |
> in terms of invalid use of USE flags. |
9 |
> |
10 |
> 2. We hack-unset LINGUAS in ebuilds. This is a lot of effort, easy to |
11 |
> miss and probably would need to repeated for every single phase anyway |
12 |
> due to how global variables are handled in PMS. Additionally, it may |
13 |
> break at some point since those variables are likely expected to be |
14 |
> read-only anyway. |
15 |
> |
16 |
> 3. We remove LINGUAS from USE_EXPAND and stop using it. If ebuilds have |
17 |
> a good reason to use flags for localization, we introduce a new, |
18 |
> non-colliding USE_EXPAND for that. We also ask users to replace LINGUAS |
19 |
> with the new flag in their make.conf files. LINGUAS gets the original |
20 |
> upstream behavior back, and we eventually discourage it in favor of new |
21 |
> INSTALL_MASK features (WiP) [2]. |
22 |
> |
23 |
> 4. We fix build systems not to do magic depending on whether LINGUAS |
24 |
> is unset or set-to-empty. Instead, we could some special special value |
25 |
> like '-' to signify not installing localizations at all. But that's |
26 |
> upstream thing to do, and breaks backwards compatibility with existing |
27 |
> systems disabling localizations. |
28 |
> |
29 |
> |
30 |
> Your thoughts? |
31 |
|
32 |
5. An reversed variant of INSTALL_MASK in make.conf, e.g. |
33 |
LOCALE_ALLOW="foo bar fubar" |
34 |
|
35 |
which would block installing files in /usr/share/locale/* and |
36 |
/usr/share/man/* EXCEPT for... |
37 |
|
38 |
/usr/share/locale/foo |
39 |
/usr/share/locale/bar |
40 |
/usr/share/locale/fubar |
41 |
/usr/share/man/foo |
42 |
/usr/share/man/bar |
43 |
/usr/share/man/fubar |
44 |
|
45 |
6. Integrate localepurge into Portage, and run it post install |
46 |
|
47 |
There are some lazy programmers out there who *DO NOT* respect the |
48 |
LINGUAS setting, and splatter files throughout /usr/share/locale/* and |
49 |
/usr/share/man/* regardless. That's the reason "localepurge" was |
50 |
written in the first place. Any proposed solution should take that |
51 |
problem into consideration, and handle it too. |
52 |
|
53 |
-- |
54 |
Walter Dnes <waltdnes@××××××××.org> |
55 |
I don't run "desktop environments"; I run useful applications |