A warning could be a great way of making the user aware of this situation.
Having said that, if eselect repository is able to check and warn the user of a not synced overlay(ies) dependency, then the hard bit is done (Right?).
Being able to "sync it for them" should only be a tiny extra step. That step being: "Hey, there's a dependency that you are missing. Would you like to add it? (Yes/No)"

Best regards,
- Tomas Fabrizio Orsi


El mar, 20 jun 2023 a las 15:07, Andrew Ammerlaan (<andrewammerlaan@gentoo.org>) escribió:
On 20/06/2023 19:26, Mike Gilbert wrote:
> On Tue, Jun 20, 2023 at 1:08 PM Florian Schmaus <flow@gentoo.org> wrote:
>>
>> On 20.06.23 16:41, TOMAS FABRIZIO ORSI wrote:
>>>      Isn't that duplicating the information of metadata/layout.conf's
>>>      'master' key-value pair [1]?
>>>
>>>
>>> Yes, I agree that it would be duplicating that information. As a matter
>>> of fact, Michał Górny pointed the same thing out.
>>> However, Michał also added, quote: "What's really lacking here is
>>> support for specifying dependencies via |repositories.xml|
>>
>> Do we need to duplicate the information in repositories.xml, with all
>> the drawbacks of duplication?
>>
>> Can't eselect repository add the new repository, then read the 'masters'
>> value from layout.conf, and add the missing repositories recursively?
>
> That would be a significant change in behavior for eselect repository.
> Currently, it does not actually sync any repos; it just manages the
> config in /etc/portage/repos.conf.
>
Or maybe we just output a warning after syncing if a repository listed
in masters= is not enabled? Less automated, but simpler. I don't think
this situation happens very often so this is probably good enough IMO.

Best regards,
Andrew