public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree
@ 2008-02-23  0:32 Erik
  2008-02-23  0:37 ` Alan McKinnon
  0 siblings, 1 reply; 11+ messages in thread
From: Erik @ 2008-02-23  0:32 UTC (permalink / raw
  To: gentoo-user

I am running
emerge -ef world
eclean --destructive distfiles'
emerge -ef world
eclean --destructive distfiles
...

Each time eclean removes the following files:
 * Building file list for distfiles cleaning...
 * Cleaning distfiles...
 [ 258.9 K ] XML-LibXML-1.65.tar.gz
 [ 478.6 K ] klibc-1.5.8.tar.bz2
 [ 290.2 K ] libassuan-1.0.4.tar.bz2
 [  67.7 K ] mftrace-1.2.9.tar.gz
 [   9.2 M ] patch-2.6.24-rc7.bz2
 [ 243.4 K ] setuptools-0.6c7.tar.gz
 * Total space that has been freed in distfiles directory: 10.5 M

Then emerge downloads them again. I had expected that those 2 programs 
should agree on which files belong in the set of distfiles.
-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree
  2008-02-23  0:32 [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree Erik
@ 2008-02-23  0:37 ` Alan McKinnon
  2008-02-23  1:32   ` Dale
                     ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Alan McKinnon @ 2008-02-23  0:37 UTC (permalink / raw
  To: gentoo-user

On Saturday 23 February 2008, Erik wrote:
> I am running
> emerge -ef world
> eclean --destructive distfiles'
> emerge -ef world
> eclean --destructive distfiles
> ...
>
> Each time eclean removes the following files:
>  * Building file list for distfiles cleaning...
>  * Cleaning distfiles...
>  [ 258.9 K ] XML-LibXML-1.65.tar.gz
>  [ 478.6 K ] klibc-1.5.8.tar.bz2
>  [ 290.2 K ] libassuan-1.0.4.tar.bz2
>  [  67.7 K ] mftrace-1.2.9.tar.gz
>  [   9.2 M ] patch-2.6.24-rc7.bz2
>  [ 243.4 K ] setuptools-0.6c7.tar.gz
>  * Total space that has been freed in distfiles directory: 10.5 M
>
> Then emerge downloads them again. I had expected that those 2
> programs should agree on which files belong in the set of distfiles.

What happens if you use 'emerge -uNDf world" instead of 'emerge -ef 
world'

-e is a special case and does not equate to the same thing as -uND

-- 
Alan McKinnon
alan dot mckinnon at gmail dot com

-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree
  2008-02-23  0:37 ` Alan McKinnon
@ 2008-02-23  1:32   ` Dale
  2008-02-23  1:39   ` Erik
  2008-02-23  1:41   ` Erik
  2 siblings, 0 replies; 11+ messages in thread
From: Dale @ 2008-02-23  1:32 UTC (permalink / raw
  To: gentoo-user

Alan McKinnon wrote:
> On Saturday 23 February 2008, Erik wrote:
>   
>> I am running
>> emerge -ef world
>> eclean --destructive distfiles'
>> emerge -ef world
>> eclean --destructive distfiles
>> ...
>>
>> Each time eclean removes the following files:
>>  * Building file list for distfiles cleaning...
>>  * Cleaning distfiles...
>>  [ 258.9 K ] XML-LibXML-1.65.tar.gz
>>  [ 478.6 K ] klibc-1.5.8.tar.bz2
>>  [ 290.2 K ] libassuan-1.0.4.tar.bz2
>>  [  67.7 K ] mftrace-1.2.9.tar.gz
>>  [   9.2 M ] patch-2.6.24-rc7.bz2
>>  [ 243.4 K ] setuptools-0.6c7.tar.gz
>>  * Total space that has been freed in distfiles directory: 10.5 M
>>
>> Then emerge downloads them again. I had expected that those 2
>> programs should agree on which files belong in the set of distfiles.
>>     
>
> What happens if you use 'emerge -uNDf world" instead of 'emerge -ef 
> world'
>
> -e is a special case and does not equate to the same thing as -uND
>
>   

I think I see it the same way he does.  If you do a rm -rf 
/usr/portage/distfiles/* and then do a emerge -ef world, then do the 
eclean again, it should not remove anything since everything there is 
needed to recompile everything in world and their dependencies.  It 
should also not have to redownload anything either.

Isn't patch part of system?  setuptools too?

Dale

:-)  :-) 
-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree
  2008-02-23  0:37 ` Alan McKinnon
  2008-02-23  1:32   ` Dale
@ 2008-02-23  1:39   ` Erik
  2008-02-23  1:41   ` Erik
  2 siblings, 0 replies; 11+ messages in thread
From: Erik @ 2008-02-23  1:39 UTC (permalink / raw
  To: gentoo-user

Alan McKinnon skrev:
> On Saturday 23 February 2008, Erik wrote:
>   
>> I am running
>> emerge -ef world
>> eclean --destructive distfiles'
>> emerge -ef world
>> eclean --destructive distfiles
>> ...
>>
>> Each time eclean removes the following files:
>>  * Building file list for distfiles cleaning...
>>  * Cleaning distfiles...
>>  [ 258.9 K ] XML-LibXML-1.65.tar.gz
>>  [ 478.6 K ] klibc-1.5.8.tar.bz2
>>  [ 290.2 K ] libassuan-1.0.4.tar.bz2
>>  [  67.7 K ] mftrace-1.2.9.tar.gz
>>  [   9.2 M ] patch-2.6.24-rc7.bz2
>>  [ 243.4 K ] setuptools-0.6c7.tar.gz
>>  * Total space that has been freed in distfiles directory: 10.5 M
>>
>> Then emerge downloads them again. I had expected that those 2
>> programs should agree on which files belong in the set of distfiles.
>>     
> What happens if you use 'emerge -uNDf world" instead of 'emerge -ef 
> world'
>
> -e is a special case and does not equate to the same thing as -uND  

"emerge -uNDf world" does nothing because the system is up to date. Even 
if all distfiles are missing, it does nothing (try to move the distfiles 
directory away while executing it). That command is supposed to 
"download everything that is missing to update the system". And since 
the system is up to date, nothing is needed to update it and it will 
therefore not download anything.

What I wanted was "download everything that is missing to reinstall 
everything that is currently installed". That is what "emerge -ef world" 
should do. Then I wanted to "remov
-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree
  2008-02-23  0:37 ` Alan McKinnon
  2008-02-23  1:32   ` Dale
  2008-02-23  1:39   ` Erik
@ 2008-02-23  1:41   ` Erik
  2008-02-23  3:18     ` forgottenwizard
  2008-02-23  9:44     ` [gentoo-user] " Alan McKinnon
  2 siblings, 2 replies; 11+ messages in thread
From: Erik @ 2008-02-23  1:41 UTC (permalink / raw
  To: gentoo-user

Alan McKinnon skrev:
> On Saturday 23 February 2008, Erik wrote:
>   
>> I am running
>> emerge -ef world
>> eclean --destructive distfiles'
>> emerge -ef world
>> eclean --destructive distfiles
>> ...
>>
>> Each time eclean removes the following files:
>>  * Building file list for distfiles cleaning...
>>  * Cleaning distfiles...
>>  [ 258.9 K ] XML-LibXML-1.65.tar.gz
>>  [ 478.6 K ] klibc-1.5.8.tar.bz2
>>  [ 290.2 K ] libassuan-1.0.4.tar.bz2
>>  [  67.7 K ] mftrace-1.2.9.tar.gz
>>  [   9.2 M ] patch-2.6.24-rc7.bz2
>>  [ 243.4 K ] setuptools-0.6c7.tar.gz
>>  * Total space that has been freed in distfiles directory: 10.5 M
>>
>> Then emerge downloads them again. I had expected that those 2
>> programs should agree on which files belong in the set of distfiles.
>>     
> What happens if you use 'emerge -uNDf world" instead of 'emerge -ef 
> world'
>
> -e is a special case and does not equate to the same thing as -uND
>   

"emerge -uNDf world" does nothing because the system is up to date. Even 
if all distfiles are missing, it does nothing (try to move the distfiles 
directory away while executing it). That command is supposed to 
"download everything that is missing to update the system". And since 
the system is up to date, nothing is needed to update it and it will 
therefore not download anything.

What I wanted was "download everything that is missing to reinstall 
everything that is currently installed". That is what "emerge -ef world" 
should do. Then I wanted to "remove everything that is not needed to 
reinstall everything that is currently installed". That is what "eclean 
--destructive distfiles" should do. Doing both should result in a set of 
distfiles that is "what is needed and only what is needed to reinstall 
everything that is currently installed (assuming that the system is up 
to date)". But since the 2 commands do not agree, something is broken 
somewhere.
-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree
  2008-02-23  1:41   ` Erik
@ 2008-02-23  3:18     ` forgottenwizard
  2008-02-23 10:02       ` Erik
  2008-02-23  9:44     ` [gentoo-user] " Alan McKinnon
  1 sibling, 1 reply; 11+ messages in thread
From: forgottenwizard @ 2008-02-23  3:18 UTC (permalink / raw
  To: gentoo-user

On 02:41 Sat 23 Feb     , Erik wrote:
> Alan McKinnon skrev:
>
> "emerge -uNDf world" does nothing because the system is up to date. Even if 
> all distfiles are missing, it does nothing (try to move the distfiles 
> directory away while executing it). That command is supposed to "download 
> everything that is missing to update the system". And since the system is 
> up to date, nothing is needed to update it and it will therefore not 
> download anything.
>
> What I wanted was "download everything that is missing to reinstall 
> everything that is currently installed". That is what "emerge -ef world" 
> should do. Then I wanted to "remove everything that is not needed to 
> reinstall everything that is currently installed". That is what "eclean 
> --destructive distfiles" should do. Doing both should result in a set of 
> distfiles that is "what is needed and only what is needed to reinstall 
> everything that is currently installed (assuming that the system is up to 
> date)". But since the 2 commands do not agree, something is broken 
> somewhere.
> -- 
> gentoo-user@lists.gentoo.org mailing list
>
>

Have you checked to see if the files deleted by eclean are the current
versions, or are they old? If they are the most recent you have
installed, then there is a problem with eclean. If not, then the problem
is with --fetchonly

-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree
  2008-02-23  1:41   ` Erik
  2008-02-23  3:18     ` forgottenwizard
@ 2008-02-23  9:44     ` Alan McKinnon
  1 sibling, 0 replies; 11+ messages in thread
From: Alan McKinnon @ 2008-02-23  9:44 UTC (permalink / raw
  To: gentoo-user

On Saturday 23 February 2008, Erik wrote:
> Alan McKinnon skrev:
> > On Saturday 23 February 2008, Erik wrote:
> >> I am running
> >> emerge -ef world
> >> eclean --destructive distfiles'
> >> emerge -ef world
> >> eclean --destructive distfiles
> >> ...
> >>
> >> Each time eclean removes the following files:
> >>  * Building file list for distfiles cleaning...
> >>  * Cleaning distfiles...
> >>  [ 258.9 K ] XML-LibXML-1.65.tar.gz
> >>  [ 478.6 K ] klibc-1.5.8.tar.bz2
> >>  [ 290.2 K ] libassuan-1.0.4.tar.bz2
> >>  [  67.7 K ] mftrace-1.2.9.tar.gz
> >>  [   9.2 M ] patch-2.6.24-rc7.bz2
> >>  [ 243.4 K ] setuptools-0.6c7.tar.gz
> >>  * Total space that has been freed in distfiles directory: 10.5 M
> >>
> >> Then emerge downloads them again. I had expected that those 2
> >> programs should agree on which files belong in the set of
> >> distfiles.
> >
> > What happens if you use 'emerge -uNDf world" instead of 'emerge -ef
> > world'
> >
> > -e is a special case and does not equate to the same thing as -uND
>
> "emerge -uNDf world" does nothing because the system is up to date.
> Even if all distfiles are missing, it does nothing (try to move the
> distfiles directory away while executing it). That command is
> supposed to "download everything that is missing to update the
> system". And since the system is up to date, nothing is needed to
> update it and it will therefore not download anything.
>
> What I wanted was "download everything that is missing to reinstall
> everything that is currently installed". That is what "emerge -ef
> world" should do. Then I wanted to "remove everything that is not
> needed to reinstall everything that is currently installed". That is
> what "eclean --destructive distfiles" should do. Doing both should
> result in a set of distfiles that is "what is needed and only what is
> needed to reinstall everything that is currently installed (assuming
> that the system is up to date)". But since the 2 commands do not
> agree, something is broken somewhere.

from man emerge:

      --emptytree (-e)
              Reinstalls all world packages and their dependencies to 
the current USE specifications while dif-
              fering  from  the installed set of packages as little as 
possible.  You should run with --pretend
              first to make sure the result is what you expect.

There's that little bit about "differing from the installed set of 
packages as little as possible". So obviously an --update 
and --emptytree can produce an (unstated) different list of actions to 
be taken, and emerge and eclean are both working correctly according to 
their design specs.

I think you are taking the wrong approach, and should be using -uNDF 
instead. -F fetches everything in src_uri
-- 
Alan McKinnon
alan dot mckinnon at gmail dot com

-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree
  2008-02-23  3:18     ` forgottenwizard
@ 2008-02-23 10:02       ` Erik
  2008-02-23 11:20         ` Alan McKinnon
  0 siblings, 1 reply; 11+ messages in thread
From: Erik @ 2008-02-23 10:02 UTC (permalink / raw
  To: gentoo-user

forgottenwizard skrev:
> On 02:41 Sat 23 Feb     , Erik wrote:
>   
>> Alan McKinnon skrev:
>>
>> "emerge -uNDf world" does nothing because the system is up to date. Even if 
>> all distfiles are missing, it does nothing (try to move the distfiles 
>> directory away while executing it). That command is supposed to "download 
>> everything that is missing to update the system". And since the system is 
>> up to date, nothing is needed to update it and it will therefore not 
>> download anything.
>>
>> What I wanted was "download everything that is missing to reinstall 
>> everything that is currently installed". That is what "emerge -ef world" 
>> should do. Then I wanted to "remove everything that is not needed to 
>> reinstall everything that is currently installed". That is what "eclean 
>> --destructive distfiles" should do. Doing both should result in a set of 
>> distfiles that is "what is needed and only what is needed to reinstall 
>> everything that is currently installed (assuming that the system is up to 
>> date)". But since the 2 commands do not agree, something is broken 
>> somewhere.
> Have you checked to see if the files deleted by eclean are the current
> versions, or are they old? If they are the most recent you have
> installed, then there is a problem with eclean. If not, then the problem
> is with --fetchonly
>   
I check with the file klibc-1.5.8.tar.bz2.
# emerge -up klibc

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U ] dev-libs/klibc-1.5.8 [1.5]

So it seems like klibc is outdated but "emerge -uDNav world" does not 
want want to update it!
# equery d klibc
[ Searching for packages depending on klibc... ]
sys-apps/v86d-0.1.3 (dev-libs/klibc)
localhost ~ # grep sys-apps/v86d /var/lib/portage/world
sys-apps/v86d

So sys-apps/v86d is in world and depends dev-libs/klibc, but yet "emerge 
-uDNp world" does not want to update dev-libs/klibc, like "emerge -up 
dev-libs/klibc" wants to!
-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree
  2008-02-23 10:02       ` Erik
@ 2008-02-23 11:20         ` Alan McKinnon
  2008-02-23 13:12           ` [gentoo-user] [SOLVED] " Erik
  0 siblings, 1 reply; 11+ messages in thread
From: Alan McKinnon @ 2008-02-23 11:20 UTC (permalink / raw
  To: gentoo-user

On Saturday 23 February 2008, Erik wrote:

> I check with the file klibc-1.5.8.tar.bz2.
> # emerge -up klibc
>
> These are the packages that would be merged, in order:
>
> Calculating dependencies... done!
> [ebuild     U ] dev-libs/klibc-1.5.8 [1.5]
>
> So it seems like klibc is outdated but "emerge -uDNav world" does not
> want want to update it!
> # equery d klibc
> [ Searching for packages depending on klibc... ]
> sys-apps/v86d-0.1.3 (dev-libs/klibc)
> localhost ~ # grep sys-apps/v86d /var/lib/portage/world
> sys-apps/v86d
>
> So sys-apps/v86d is in world and depends dev-libs/klibc, but yet
> "emerge -uDNp world" does not want to update dev-libs/klibc, like
> "emerge -up dev-libs/klibc" wants to!


This looks like a --bdeps situation. v86D DEPENDS on klibc, it does not 
RDEPEND on it, meaning that klibc does not need to be updated to 
*build* a new v86d.

v86d is in world so it will be updated because you told portage to 
always keep it up to date. klibc is not in world and a new updated 
klibc is not required to accomplish what you have asked to for - a 
complete update of every package that world expands to with 
dependencies taken into account.

Remember what "world" is - it's a list of packages that you have 
explicitly asked to be there. It is NOT a list of everything you have 
installed. I can think of two ways to accomplish what you are asking 
for

- use "--with-bdeps y" or include it in EMERGE_DEFAULT_OPTS
- put klibc in world

-- 
Alan McKinnon
alan dot mckinnon at gmail dot com

-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

* [gentoo-user] [SOLVED] "emerge -ef world" and "eclean --destructive distfiles" do not agree
  2008-02-23 11:20         ` Alan McKinnon
@ 2008-02-23 13:12           ` Erik
  2008-02-23 15:36             ` Alan McKinnon
  0 siblings, 1 reply; 11+ messages in thread
From: Erik @ 2008-02-23 13:12 UTC (permalink / raw
  To: gentoo-user

Alan McKinnon skrev:
> On Saturday 23 February 2008, Erik wrote:
>   
>> I check with the file klibc-1.5.8.tar.bz2.
>> # emerge -up klibc
>>
>> These are the packages that would be merged, in order:
>>
>> Calculating dependencies... done!
>> [ebuild     U ] dev-libs/klibc-1.5.8 [1.5]
>>
>> So it seems like klibc is outdated but "emerge -uDNav world" does not
>> want want to update it!
>> # equery d klibc
>> [ Searching for packages depending on klibc... ]
>> sys-apps/v86d-0.1.3 (dev-libs/klibc)
>> localhost ~ # grep sys-apps/v86d /var/lib/portage/world
>> sys-apps/v86d
>>
>> So sys-apps/v86d is in world and depends dev-libs/klibc, but yet
>> "emerge -uDNp world" does not want to update dev-libs/klibc, like
>> "emerge -up dev-libs/klibc" wants to!
>>     
> This looks like a --bdeps situation.

That was it, thanks!


> I can think of two ways to accomplish what you are asking for
>
> - use "--with-bdeps y" or include it in EMERGE_DEFAULT_OPTS
> - put klibc in world
>   
I did the first way. Now I can run "emerge -ef world;eclean 
--destructive distfiles" repeatedly without anything being downloaded. 
(The second way is not what I want. The only reason I have klibc is to 
build v86d.)
-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [gentoo-user] [SOLVED] "emerge -ef world" and "eclean --destructive distfiles" do not agree
  2008-02-23 13:12           ` [gentoo-user] [SOLVED] " Erik
@ 2008-02-23 15:36             ` Alan McKinnon
  0 siblings, 0 replies; 11+ messages in thread
From: Alan McKinnon @ 2008-02-23 15:36 UTC (permalink / raw
  To: gentoo-user

On Saturday 23 February 2008, Erik wrote:
> Alan McKinnon skrev:

> > This looks like a --bdeps situation.
>
> That was it, thanks!
>
> > I can think of two ways to accomplish what you are asking for
> >
> > - use "--with-bdeps y" or include it in EMERGE_DEFAULT_OPTS
> > - put klibc in world
>
> I did the first way. Now I can run "emerge -ef world;eclean
> --destructive distfiles" repeatedly without anything being
> downloaded. (The second way is not what I want. The only reason I
> have klibc is to build v86d.)

Cool, I'm glad we got to the bottom of it.

I keep forgetting about --with-bdeps myself. Like you, I usually assume 
that emerge world will just handle everything, maybe because that was 
the only way for a very long time. It was several posts before I even 
remembered that the option exists!

I wonder if there isn't a way to get emerge to list build deps that 
won't be applied. Perhaps something like an extra "l" argument 
to --with-bdeps that will list them if present, but not apply them. I 
would find that useful, I like to know what portage won't do as well as 
what it will do.

Anyone know if this info is available and how to get it?

-- 
Alan McKinnon
alan dot mckinnon at gmail dot com

-- 
gentoo-user@lists.gentoo.org mailing list



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2008-02-23 15:39 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-02-23  0:32 [gentoo-user] "emerge -ef world" and "eclean --destructive distfiles" do not agree Erik
2008-02-23  0:37 ` Alan McKinnon
2008-02-23  1:32   ` Dale
2008-02-23  1:39   ` Erik
2008-02-23  1:41   ` Erik
2008-02-23  3:18     ` forgottenwizard
2008-02-23 10:02       ` Erik
2008-02-23 11:20         ` Alan McKinnon
2008-02-23 13:12           ` [gentoo-user] [SOLVED] " Erik
2008-02-23 15:36             ` Alan McKinnon
2008-02-23  9:44     ` [gentoo-user] " Alan McKinnon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox