public inbox for gentoo-soc@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Otávio Pontes" <otaviobp@gmail.com>
To: Brian Harring <ferringb@gmail.com>
Cc: gentoo-soc@lists.gentoo.org
Subject: Re: [gentoo-soc] Multiple Repository Support in Portage - Report
Date: Thu, 29 Jul 2010 16:26:10 -0300	[thread overview]
Message-ID: <AANLkTikJdp_2-N1ezodDHOuAuyXKLZrb_=jx_N2YWb+p@mail.gmail.com> (raw)
In-Reply-To: <20100728014933.GB31924@hrair>

[-- Attachment #1: Type: text/plain, Size: 3044 bytes --]

On Tue, Jul 27, 2010 at 22:49, Brian Harring <ferringb@gmail.com> wrote:

> On Tue, Jul 27, 2010 at 12:56:44PM -0300, Otttvio Pontes wrote:
> >    Hi,
> >
> >    I have been some time without reporting my work at this mailing list
> >    and i will send my report for the last weeks.
> >
> >    When i sent my last e-mail I was working on emerging a package from
> one
> >    specific repository using emerge package::repository syntax. It is now
> >    working. It's possible to use the ::repository syntax in emerge
> command
> >    line, ebuild dependencies and when masking/unmasking/setting use flags
> >    in /etc/portage/package.*.
>
> Just verifying- if you have repository configuration equivalent to the
> following
>
> overlay stacking:
>        master: /usr/portage: repo id gentoo
>                has dev-util/diffball-1.0
>        slave:  /usr/local/overlay1: repo id local1
>                has dev-util/diffball-1.0
>                has dev-util/bsdiff-1.1
>        slave:  /usr/local/overlay2: repo id local2
>                has dev-util/bsdiff-1.1
>
> generated from a make.conf being
> PORTDIR=/usr/portage
> PORTDIR_OVERLAY="/usr/local/overlay1 /usr/local/overlay2"
>
> For such a setup, =dev-util/diffball-1.0 is only visible from the
> local1 repo- specifically, emerge =dev-util/diffball-1.0::gentoo will
> not find the package, emerge =dev-util/diffball-1.0::local1 however
> will.
>

Actually multirepo-portage is working different. If you try to
emerge =dev-util/diffball-1.0, it will use the ebuild from local1.
emerge =dev-util/diffball-1.0::local1 will do the same. But if you run
emerge =dev-util/diffball-1.0::gentoo, it will use the ebuild from gentoo
repository.


>
> Further, =dev-util/bsdiff-1.1::local2 will match, but
> dev-util/bsdiff-1.1::local1 will not.
>

The same happens here. emerge dev-util/bsdiff-1.1::local1 will match and
will get the ebuild from local1.


>
> The reason I ask is that an overlay literally stacks repositories,
> slaves shadowing the master.  If you do an emerge
> =dev-util/diffball-1.0 for the configuration above, you get local1's
> ebuild, not gentoo's.  Repository atom's should not be able to bypass
> this- namely it violates the very nature of repository stacking.
>
>
I see no reason to avoid this. Imagine if I use an overlay with some kde
ebuilds. But, for some reason, i want to install kcalc from portage, and not
from this overlay.
Portage has this versions of kcalc: 4.4.2 and 4.4.3.
And this overlay has the version: 4.4.3.

If i try to emerge kcalc::gentoo in multirepo-portage it will install the
kcalc-4.4.3, which is the newer version in portage.
I don't think it's a good idea to install kcalc-4.4.2, because version 4.4.3
is in an overlay too.

And what about keywords/masks? Using your example, if a user adds in
package.mask:
dev-util/diffball::local1
I will mask all diffball ebuilds for local1. So emerge =diffball-1.0::gentoo
is suppose to fail too?


> So... what's the status of multirepo support's repository atom's for
> this case?
> ~brian
>

[-- Attachment #2: Type: text/html, Size: 4117 bytes --]

  reply	other threads:[~2010-07-29 19:27 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-27 15:56 [gentoo-soc] Multiple Repository Support in Portage - Report Otávio Pontes
2010-07-28  1:49 ` Brian Harring
2010-07-29 19:26   ` Otávio Pontes [this message]
2010-07-30  4:03     ` Brian Harring

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='AANLkTikJdp_2-N1ezodDHOuAuyXKLZrb_=jx_N2YWb+p@mail.gmail.com' \
    --to=otaviobp@gmail.com \
    --cc=ferringb@gmail.com \
    --cc=gentoo-soc@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox