Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 114887 - "ROOT=/some/path emerge -e world" does not work
Summary: "ROOT=/some/path emerge -e world" does not work
Status: RESOLVED DUPLICATE of bug 34887
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Interface (emerge) (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-12-08 09:16 UTC by Philippe Troin
Modified: 2005-12-10 13:46 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info output (info,2.00 KB, text/plain)
2005-12-08 09:18 UTC, Philippe Troin
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Philippe Troin 2005-12-08 09:16:55 UTC
I'd expect that ROOT=/some/path emerge -e world is going to recompile and emerge
a whole new tree under /some/path.

However most packages (99%+) end up being merged in /.

The first merge package is sys-devel/patch.  From the build log:

>>> Merging sys-devel/patch-2.5.9 to /
--- /usr/
--- /usr/bin/
>>> /usr/bin/patch
--- /usr/share/
--- /usr/share/man/
--- /usr/share/man/man1/
>>> /usr/share/man/man1/patch.1.gz
--- /usr/share/doc/
--- /usr/share/doc/patch-2.5.9/
>>> /usr/share/doc/patch-2.5.9/AUTHORS.gz
>>> /usr/share/doc/patch-2.5.9/NEWS.gz
>>> /usr/share/doc/patch-2.5.9/ChangeLog.gz
>>> /usr/share/doc/patch-2.5.9/README.gz
>>> Safely unmerging already-installed instance...
--- !found obj /mnt/ROOT/usr/share/man/man1/patch.1.gz
--- !found dir /mnt/ROOT/usr/share/man/man1
--- !found obj /mnt/ROOT/usr/share/doc/patch-2.5.9/README.gz
--- !found obj /mnt/ROOT/usr/share/doc/patch-2.5.9/NEWS.gz
--- !found obj /mnt/ROOT/usr/share/doc/patch-2.5.9/ChangeLog.gz
--- !found obj /mnt/ROOT/usr/share/doc/patch-2.5.9/AUTHORS.gz
--- !found dir /mnt/ROOT/usr/share/doc/patch-2.5.9
--- !found obj /mnt/ROOT/usr/bin/patch
--- !found dir /mnt/ROOT/usr/bin
--- !empty dir /mnt/ROOT/usr/share/man
--- !empty dir /mnt/ROOT/usr/share/doc
--- !empty dir /mnt/ROOT/usr/share
--- !empty dir /mnt/ROOT/usr

(ROOT is set to /mnt/ROOT) See how the new version is merged in /, but the old
version is unmerged from /mnt/ROOT.


Reproducible: Always
Steps to Reproduce:
Comment 1 Philippe Troin 2005-12-08 09:18:15 UTC
Created attachment 74316 [details]
emerge --info output

This is my emerge --info.
Comment 2 Carsten Lohrke (RETIRED) gentoo-dev 2005-12-08 10:20:27 UTC
Of course it doesn't work, since most packages don't support it yet. File bugs
for each case, but do not assign the bugs please. This is nothing Portage devs
can do anything about.
Comment 3 SpanKY gentoo-dev 2005-12-08 10:57:43 UTC
wtf are you talking about ?  this is clearly a bug in portage

almost all of system supports ROOT because we cross-compile systems
using portage now
Comment 4 Philippe Troin 2005-12-08 11:21:20 UTC
(In reply to comment #3)
> wtf are you talking about ?  this is clearly a bug in portage
> 
> almost all of system supports ROOT because we cross-compile systems
> using portage now

Yes... For example, "ROOT=/some/path emerge -1 patch" works as expected.
Comment 5 Jason Stubbs (RETIRED) gentoo-dev 2005-12-08 14:54:59 UTC

*** This bug has been marked as a duplicate of 34887 ***
Comment 6 Philippe Troin 2005-12-08 15:37:01 UTC
For reference:

  ROOT=/some/dir emerge $(cat /var/lib/portage/world)

does (correctly) what:

  ROOT=/some/dir emerge -e world

ought to do.  Except for bug #114923, but that can be worked arounc too.