[gentoo-portage-dev] [PATCH 2/4] EbuildPhase: add PackagePhase class for PKG_INSTALL_MASK

2018-03-27 Thread Zac Medico
The PackagePhase class will be a convient place to invoke a python implementation of PKG_INSTALL_MASK. --- bin/misc-functions.sh | 23 - pym/_emerge/EbuildPhase.py | 7 pym/_emerge/PackagePhase.py | 80 + 3 files changed, 93 inse

[gentoo-portage-dev] [PATCH 0/4] {,PKG_}INSTALL_MASK support for exclusions (bug 651214)

2018-03-27 Thread Zac Medico
This patch series adds {,PKG_}INSTALL_MASK support for exclusions. This includes a python implementation of INSTALL_MASK, with matching performed by fnmatch code from these portage-mgorny commits: https://github.com/mgorny/portage/commit/f5ac3af3216d209618a2f232b4bf720bc8b520ad https://github.com/

[gentoo-portage-dev] [PATCH 1/4] {,PKG_}INSTALL_MASK: record value in vardb

2018-03-27 Thread Zac Medico
Also, skip preinst_mask phase when INSTALL_MASK is empty. --- bin/misc-functions.sh | 8 bin/phase-functions.sh | 12 +++- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/bin/misc-functions.sh b/bin/misc-functions.sh index 7643af7b5..742ce40d2 100755 --- a/bin/mi

[gentoo-portage-dev] [PATCH 3/4] {,PKG_}INSTALL_MASK: python implementation

2018-03-27 Thread Zac Medico
The InstallMask.match code comes from the dblink _is_install_masked method from portage-mgorny: https://github.com/mgorny/portage/commit/f5ac3af3216d209618a2f232b4bf720bc8b520ad --- bin/misc-functions.sh| 73 -- pym/_emerge/PackagePhase.py | 13 - py

[gentoo-portage-dev] [PATCH 4/4] {,PKG_}INSTALL_MASK: Support exclusions (bug 651214)

2018-03-27 Thread Zac Medico
From: Michał Górny Allow INSTALL_MASK patterns to start with '-' to indicate that a specific match is to be excluded from being masked. In this case, the last matching pattern determines whether the file is actually filtered out or kept. Bug: https://bugs.gentoo.org/651214 --- pym/portage/util/