Some ebuilds which inherit from live eclasses aren't live, so Portage should treat these ebuilds as non-live ebuilds. @live-rebuild set which was added in r11292 and r11295 shouldn't contain these ebuilds. These ebuild could set RESTRICT="live".
Created attachment 161911 [details, diff] portage-RESTRICT-live.patch
I think it might be even better if RESTRICT="live" has the opposite meaning. Then, we won't even have to check INHERITED or maintain a hardcoded list of live eclasses. We should something similar anyway in order to solve bug 182028 (RESTRICT would work but we can also do all kinds of other things in an EAPI bump).
By the way, some new metadata, like a RESTRICT or something, will also be useful for an ebuild to declare that it needs exclusive access to DISTDIR or one of it's subdirectories during a certain phase. This type of exclusive access is needed to prevent live ebuild from interfering with eachothers checkouts (sometimes multiple live ebuilds use the same checkout location).
Created attachment 162051 [details, diff] portage-VariableSet.patch This patch replaces InheritSet and RestrictSet with more general VariableSet which can check the values of any specified variable.
Thanks, the VariableSet is in svn now. I left @live-rebuild using INHERITED since we still need to add a RESTRICT to the ebuilds (and I'd like to use RESTRICT=live-sources instead of constant-sources.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=50ced6592b3135de393a0ee60b291df22ed4c5f1 commit 50ced6592b3135de393a0ee60b291df22ed4c5f1 Author: Ulrich Müller <ulm@gentoo.org> AuthorDate: 2019-07-23 08:33:30 +0000 Commit: Ulrich Müller <ulm@gentoo.org> CommitDate: 2019-07-27 14:11:57 +0000 eclass: Add "live" to PROPERTIES in all live eclasses. Bug: https://bugs.gentoo.org/233589 Signed-off-by: Ulrich Müller <ulm@gentoo.org> eclass/bzr.eclass | 4 +++- eclass/cvs.eclass | 2 ++ eclass/darcs.eclass | 4 +++- eclass/git-2.eclass | 4 +++- eclass/git-r3.eclass | 4 +++- eclass/golang-vcs.eclass | 4 +++- eclass/mercurial.eclass | 4 +++- eclass/subversion.eclass | 2 ++ 8 files changed, 22 insertions(+), 6 deletions(-)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/portage.git/commit/?id=e75e46958b6b032890ed27d10239e07eced63087 commit e75e46958b6b032890ed27d10239e07eced63087 Author: Ulrich Müller <ulm@gentoo.org> AuthorDate: 2019-07-26 08:51:08 +0000 Commit: Ulrich Müller <ulm@gentoo.org> CommitDate: 2019-07-26 23:00:22 +0000 Support PROPERTIES="live". Bug: https://bugs.gentoo.org/233589 Signed-off-by: Ulrich Müller <ulm@gentoo.org> cnf/sets/portage.conf | 8 +++++++- lib/_emerge/EbuildExecuter.py | 4 ++-- lib/portage/_sets/__init__.py | 12 +++++++++--- repoman/lib/repoman/modules/scan/ebuild/ebuild.py | 3 +-- 4 files changed, 19 insertions(+), 8 deletions(-)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea52ac5964e3242159373adf567ff61403b31f96 commit ea52ac5964e3242159373adf567ff61403b31f96 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2019-08-02 03:41:26 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2019-08-02 03:46:19 +0000 sys-apps/portage: Bump to version 2.3.70 #233589 Support PROPERTIES=live #690304 dispatch-conf unicode safety #690446 emaint -c binhost support for binpkg-multi-instance #690758 network-sandbox support for AI_ADDRCONFIG Bug: https://bugs.gentoo.org/233589 Bug: https://bugs.gentoo.org/690304 Bug: https://bugs.gentoo.org/690446 Bug: https://bugs.gentoo.org/690758 Bug: https://bugs.gentoo.org/691278 Package-Manager: Portage-2.3.70, Repoman-2.3.16 Signed-off-by: Zac Medico <zmedico@gentoo.org> sys-apps/portage/Manifest | 1 + sys-apps/portage/portage-2.3.70.ebuild | 260 +++++++++++++++++++++++++++++++++ 2 files changed, 261 insertions(+)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fdb165ba6696f962ea4b3a1c6be8d70fb370fd52 commit fdb165ba6696f962ea4b3a1c6be8d70fb370fd52 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2019-08-05 06:12:34 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2019-08-05 06:20:21 +0000 app-portage/repoman: Bump to version 2.3.17 #233589 Support PROPERTIES="live" Bug: https://bugs.gentoo.org/233589 Package-Manager: Portage-2.3.71, Repoman-2.3.17 Signed-off-by: Zac Medico <zmedico@gentoo.org> app-portage/repoman/Manifest | 1 + app-portage/repoman/repoman-2.3.17.ebuild | 63 +++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+)