1 |
On 15/12/17 14:49, Michael Orlitzky wrote: |
2 |
> On 12/15/2017 06:09 AM, Robert Sharp wrote: |
3 |
>> MISSING="berkdb gdbm tcpd ptpax session dri urandom" |
4 |
>> |
5 |
>> Is this a deliberate change or are they actually missing? |
6 |
>> |
7 |
> These are all intentional, but perhaps with an unintended side effect. |
8 |
> The default/linux profile sets, |
9 |
> |
10 |
> USE="berkdb crypt ipv6 ncurses nls pam readline ssl tcpd zlib" |
11 |
> ... |
12 |
> USE="${USE} cli pcre session" |
13 |
> |
14 |
> Most of those flags are unnecessary, so the hardened profile disables |
15 |
> them (to reduce the surface area for attack): |
16 |
> |
17 |
> # Default starting set of USE flags for all default/linux profiles. |
18 |
> # We unset them so we get a clean use flag profile. |
19 |
> USE="${USE} -berkdb -gdbm -tcpd" |
20 |
> USE="${USE} -fortran" |
21 |
> USE="${USE} -cli -session" |
22 |
> USE="${USE} -dri" |
23 |
> USE="${USE} -modules" |
24 |
> |
25 |
> What that's trying to accomplish is to undo the overzealous USE in the |
26 |
> default/linux profile, but unfortunately, the "-foo" flags (with the |
27 |
> default stacking order in portage) will override the IUSE="+foo" |
28 |
> defaults set in the ebuilds themselves. So, for example, dev-lang/php |
29 |
> sets IUSE="+cli +session", but they'll be disabled when using the |
30 |
> hardened profile. |
31 |
> |
32 |
> USE=ptpax is something else entirely. By now, everyone should be using |
33 |
> the default xattr markings with PAX_MARKINGS=XT in make.conf (the new |
34 |
> profile does this for you). USE=ptpax was dropped by default because you |
35 |
> shouldn't need it any more. |
36 |
> |
37 |
> At least for "modules" and "session", we will eventually drop them as |
38 |
> defaults so that everything works right again: |
39 |
> |
40 |
> *https://bugs.gentoo.org/635720 (modules) |
41 |
> *https://bugs.gentoo.org/635742 (session) |
42 |
> |
43 |
So just to be sure I am doing the right thing, I should keep my MISSING |
44 |
use flags excluding ptpax because that way the packages that use them by |
45 |
default will be unchanged? I guess the more correct solution would be to |
46 |
add per-package use flags so that I don't add them for packages that |
47 |
have that flag but not by default? Seems like a bit more effort so I |
48 |
probably won't bother unless there is a good reason to take that approach. |
49 |
|
50 |
Thanks, Robert |