Gentoo Archives: gentoo-portage-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-portage-dev@l.g.o, Zac Medico <zmedico@g.o>
Subject: Re: [gentoo-portage-dev] [PATCH v2] Move INSTALL_MASK handling into merging
Date: Sun, 12 Jun 2016 09:28:45
Message-Id: B1A06A94-D6BC-4412-9E5B-AC0DBC679560@gentoo.org
In Reply to: Re: [gentoo-portage-dev] [PATCH v2] Move INSTALL_MASK handling into merging by Zac Medico
1 Dnia 12 czerwca 2016 11:10:55 CEST, Zac Medico <zmedico@g.o> napisał(a):
2 >On 05/22/2016 01:21 AM, Michał Górny wrote:
3 >> Introduce a new logic for INSTALL_MASK handling in merging code,
4 >> replacing the old code that removed matching files and directories
5 >> from imagedir in bash. The new code actually ignores matching files
6 >> on-the-fly while testing for file collisions and merging files.
7 >> The files are still written to CONTENTS, and output using "###" zing
8 >> to indicate being masked, yet are not actually merged to the
9 >filesystem.
10 >
11 >Since collision-protect relies on existing files in its collision test,
12 >install-masked files are no longer going to trigger collisions. Then,
13 >since the install-masked files are still written to CONTENTS, it's
14 >possible for the unmerge of one package to unmerge colliding files that
15 >belong to another package!
16 >
17 >There are a number of ways to solve this problem. For example, we could
18 >have the unmerge code ignore any files in CONTENTS that match the
19 >INSTALL_MASK value that was used at merge time.
20
21 Hmm, thinking about this more widely (i.e. actually thinking rather than mimicking the old behavior), I think it would be better to actually use the original file set for collision-protect. This will make it possible to detect collisions that would otherwise be hidden via INSTALL_MASK.
22
23 --
24 Best regards,
25 Michał Górny (by phone)

Replies