On 10/01/2018 01:04 PM, Sergei Trofimovich wrote: > On Mon, 1 Oct 2018 08:19:29 -0700 > Zac Medico <zmed...@gentoo.org> wrote: > >> Hi all, >> >> The ~arch version of portage hs a new QA check that reports installation >> of files outside of directories that have been whitelisted [1]. The >> current whitelist includes: >> >> directories common to / and /usr >> ================================ >> bin lib lib32 lib64 libx32 sbin >> >> top level directories >> ================================ >> boot dev etc opt srv usr var >> >> /usr level directories >> ================================ >> include libexec share src >> >> /usr/share/doc level directories >> ================================ >> /usr/share/doc/${PF} > > As this will break existing ebuilds I'd suggest guarding it against > next EAPI. Out of top of by head the change will break at least > crossdev outright. At least for two reasons: > 1. building a gcc cross-compiler usually refers to $SYSROOT/sys-include. > 'git grep sys-include' will show a bunch of ebuilds that create that > symlinks outside the space. > 2. cross-building target libc is currently done on the host's emerge > and installs into /usr/$CTARGET/. > > I think whitelist would be able to cover these use cases as they are > a function of ${CTARGET} (or $CATEGORY) value.
The QA check currently does not die, it only calls eqawarn. So the worst case is a message like this: > QA: other > The ebuild is installing to one or more unexpected paths: > > /usr/share/doc/qt-5.11.1 > > Please fix the ebuild to use correct FHS/Gentoo policy paths. It will be annoying if this message triggers for every package installed by crossdev, so we should do something about that. -- Thanks, Zac
signature.asc
Description: OpenPGP digital signature