1 |
On 05/21/2016 03:41 AM, Michał Górny wrote: |
2 |
> |
3 |
> I see the following possibilities: |
4 |
> |
5 |
|
6 |
#2 is ugly and requires a special case due to a bad choice of variable |
7 |
name; #4 will never work. |
8 |
|
9 |
|
10 |
> 3. We remove LINGUAS from USE_EXPAND and stop using it. If ebuilds have |
11 |
> a good reason to use flags for localization, we introduce a new, |
12 |
> non-colliding USE_EXPAND for that. We also ask users to replace LINGUAS |
13 |
> with the new flag in their make.conf files. LINGUAS gets the original |
14 |
> upstream behavior back, and we eventually discourage it in favor of new |
15 |
> INSTALL_MASK features (WiP) [2]. |
16 |
> |
17 |
|
18 |
This is probably the best option because it fixes the real problem: we |
19 |
tried to repurpose somebody else's environment variable for our package |
20 |
manager. If we try to keep the name "LINGUAS", we may run into some |
21 |
other problem down the line. |
22 |
|
23 |
|
24 |
> 1. We start explicitly listing linguas_* in all ebuilds, no matter how |
25 |
> tiny they are. Maintainers are required to keep IUSE up-to-date |
26 |
> and users are forced to rebuild a lot. This is also a QA violation |
27 |
> in terms of invalid use of USE flags. |
28 |
|
29 |
This isn't as bad as you make it sound... the rebuilds would happen once |
30 |
on a revision bump. The QA violation (I'm guessing) is that USE flags |
31 |
shouldn't be used to control the installation of small text files. |
32 |
|
33 |
I prefer a looser interpretation of that rule: maintainers don't have to |
34 |
waste their time and complicate their ebuilds with USE flags to control |
35 |
the installation of small text files if they don't want to. Basically an |
36 |
"it's OK to install systemd unit files unconditionally" rule. Or in |
37 |
other words, the rule is "it's OK not to do it" rather than "it's not OK |
38 |
to do it." |
39 |
|
40 |
I think if someone /wants/ to have a bunch of logic controlling the |
41 |
installation of localization files, that's fine. But, this option would |
42 |
force everyone to do it in order to work around an unfortunate choice of |
43 |
variable name. It also adds some eternal mental overhead in that we have |
44 |
to collectively remember that LINGUAS is special somehow and teach that |
45 |
to everyone. |
46 |
|
47 |
For those reasons I think #3 is a better long-term solution. |