Support for the following files will be useful for overlays: ${repository}/profiles/make.defaults ${repository}/profiles/use.force ${repository}/profiles/package.use.force ${repository}/profiles/use.mask ${repository}/profiles/package.use.mask
http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commitdiff;h=96ab7b436ceb3543f5158aab1fab48470c3f0b98
Does this patch enforce that entries in these files have only an effect on ebuilds in the repository they come from, like it works for the currently supported files? Please add some tests that show that this is the case. Importing stuff from emerge_ should be avoided in the portage namespace. As I see it you do this only to get Package.UNKNOWN_REPO. Please find a place in the portage namespace for this constant and let everything use it from there.
(In reply to comment #2) > Does this patch enforce that entries in these files have only an effect on > ebuilds in the repository they come from (...)? Yes. These files also affect ebuilds from repositories, which specify given repository as master repository. > Importing stuff from emerge_ should be avoided in the portage namespace. > As I see it you do this only to get Package.UNKNOWN_REPO. Please find a > place in the portage namespace for this constant and let everything use it > from there. Some other files (like KeywordsManager.py and MaskManager.py) import _emerge.Package.Package for exactly the same reason :) .
http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commitdiff;h=9838a00a264c90faf8040e923096136a1c022247
http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commitdiff;h=ba059b888a124269df460f82ef8b30f269dd3c50
I'd like to also support package.use, which will be stacked with USE from make.defaults, like it is for profiles.
make.defaults and package.use are in git now: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=1fdeb78d08bac14f3f999f112499d179a87cf342
(In reply to comment #7) - Variables not used by Portage work correctly. - USE works. - USE_EXPAND internally seems to be supported. - USE_EXPAND does not affect output of `emerge -p ${package}`. - USE_EXPAND_HIDDEN does not work. - CONFIG_PROTECT_MASK works. - CONFIG_PROTECT partially works. A configuration file was not overwritten and a corresponding ._cfg0000_ file was created, but `emerge` after installation does not print information about necessity of updating this configuration file. `etc-update` does not find this file.
(In reply to comment #8) > - USE_EXPAND internally seems to be supported. > - USE_EXPAND does not affect output of `emerge -p ${package}`. > - USE_EXPAND_HIDDEN does not work. This should fix it: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=c3f0895fb89c7b0647428de37eb0f893939d93f7 > - CONFIG_PROTECT_MASK works. > - CONFIG_PROTECT partially works. A configuration file was not overwritten and > a corresponding ._cfg0000_ file was created, but `emerge` after installation > does not print information about necessity of updating this configuration > file. `etc-update` does not find this file. This should ensure that CONFIG_PROTECT is a global constant: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=84f53ead91047d1389c80edeb7d9d1720e07e2a4
Here's a fix for ebuild(1) to pass a Package instance to setcpv: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=fa9e85bbe7c513193756a2d13ce63a609138753d
This is included in 2.2.0_alpha42.
`emerge --info` should concatenate USE_EXPAND from make.defaults files from profile and all repositories and print global values of USE_EXPANDed USE flags.
(In reply to comment #12) > `emerge --info` should concatenate USE_EXPAND from make.defaults files from > profile and all repositories and print global values of USE_EXPANDed USE flags. I think mixing them might lead to confusion, so maybe it's better to have separate sections showing make.defaults settings for each repository.
This is fixed in 2.1.10.4.