[gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Alexey Luchko

Alexey Luchko wrote:

colinux ~ # emerge portage --pretend --tree

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

Calculating dependencies... done!
[nomerge  ] sys-apps/portage-2.1.6.11 [2.1.2.2]
[ebuild U ]  app-shells/bash-3.2_p39 [3.1_p17] USE=-examples% 
-plugins%

[ebuild U ] sys-apps/portage-2.1.6.11 [2.1.2.2]
[ebuild U ]  dev-python/pycrypto-2.0.1-r6 [2.0.1-r5]
[ebuild U ]  sys-apps/sandbox-1.6-r2 [1.2.17]
[ebuild  N]   app-arch/lzma-utils-4.32.7  USE=-nocxx
[ebuild  N]  app-admin/eselect-news-20080320
[ebuild U ]   app-admin/eselect-1.0.11-r1 [1.0.7] USE=-vim-syntax%
[ebuild U ]  app-misc/pax-utils-0.1.19 [0.1.15]
[blocks B ] sys-apps/portage-2.1.5 (is blocking 
app-shells/bash-3.2_p39)

colinux ~ #


Hi!

Thank every one for your help.

Finally I got it out this way:
first  emerge --nodeps bash
then  emerge portage  upgraded portage to the latest version
and then, of cause,  emerge -uDN system -pvt
it had blocked packages
[blocks B ] sys-apps/man-pages-3 (sys-apps/man-pages-3 is blocking
sys-apps/man-pages-posix-2003a)
[blocks B ] sys-fs/e2fsprogs-1.41 (sys-fs/e2fsprogs-1.41 is blocking
sys-libs/e2fsprogs-libs-1.41.3-r1)
[blocks B ] sys-apps/mktemp (sys-apps/mktemp is blocking
sys-apps/coreutils-7.1)
[blocks B ] sys-libs/com_err (sys-libs/com_err is blocking
sys-libs/e2fsprogs-libs-1.41.3-r1)
[blocks B ] sys-apps/util-linux-2.13 (sys-apps/util-linux-2.13 is
blocking sys-apps/coreutils-7.1)
[blocks B ] sys-libs/ss (sys-libs/ss is blocking
sys-libs/e2fsprogs-libs-1.41.3-r1)

I unmerged them, and then  emerge -uDN system  had been working fine until
sys-libs/e2fsprogs-libs-1.41.3-r1 compilation failed with
../../lib/libuuid.so: undefined reference to `___tls_get_addr'

I had no separate uuid package installed
colinux ~ # emerge --search uuid | less
Searching...
[ Results for search key : uuid ]
[ Applications found : 4 ]
*  dev-libs/ossp-uuid [ Masked ]
  Latest version available: 1.6.2
  Latest version installed: [ Not Installed ]
*  dev-perl/Data-UUID
  Latest version available: 1.148
  Latest version installed: [ Not Installed ]
*  dev-python/uuid [ Masked ]
  Latest version available: 1.30
  Latest version installed: [ Not Installed ]
*  dev-ruby/uuidtools
  Latest version available: 1.0.7
  Latest version installed: [ Not Installed ]


It claimed on
/usr/tmp/portage/sys-libs/e2fsprogs-libs-1.41.3-r1/work/e2fsprogs-libs-1.41.3/lib/libuuid.so

I checked whether the name tls_get_addr exists and found nothing
colinux e2fsprogs-libs-1.41.3 # pwd
/usr/tmp/portage/sys-libs/e2fsprogs-libs-1.41.3-r1/work/e2fsprogs-libs-1.41.3
colinux e2fsprogs-libs-1.41.3 # grep tls_get_addr `find . -iname '*.c'`

After seaching tls_get_addr on http://www.google.com/codesearch I decided to
update glibc first:
colinux ~ # emerge glibc -pvt

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

Calculating dependencies... done!
[ebuild U ] sys-libs/glibc-2.8_p20080602-r1 [2.3.6-r4] USE=-debug% -gd%
-glibc-omitfp (-hardened) (-multilib) -nls* -profile (-selinux) -vanilla%
(-build%) (-erandom%) (-glibc-compat20%) (-nptl%) (-nptlonly%) 0 kB [?=0]

Total: 1 package (1 upgrade), Size of downloads: 0 kB
Portage tree and overlays:
 [0] /usr/portage
 [?] indicates that the source repository could not be determined

 * IMPORTANT: 1 news items need reading for repository 'gentoo'.
 * Use eselect news to read news items.

colinux ~ # emerge glibc

 * i386 CHOSTs are no longer supported.
 * Chances are you don't actually want/need i386.
 * Please read http://www.gentoo.org/doc/en/change-chost.xml

Here I've decided to make yet another backup and tried to remount / readonly.
And found the mount missing. I'm guessing that util-linux is the package 
containing mount and it depends on e2fsprogs-libs-1.41.3-r1.



Here I am now ;)
Any advice is welcome!


Alexey.




Re: [gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Alan McKinnon
On Wednesday 13 May 2009 12:03:40 Alexey Luchko wrote:
 Alexey Luchko wrote:
  colinux ~ # emerge portage --pretend --tree
 
  These are the packages that would be merged, in reverse order:
 
  Calculating dependencies... done!
  [nomerge  ] sys-apps/portage-2.1.6.11 [2.1.2.2]
  [ebuild U ]  app-shells/bash-3.2_p39 [3.1_p17] USE=-examples%
  -plugins%
  [ebuild U ] sys-apps/portage-2.1.6.11 [2.1.2.2]
  [ebuild U ]  dev-python/pycrypto-2.0.1-r6 [2.0.1-r5]
  [ebuild U ]  sys-apps/sandbox-1.6-r2 [1.2.17]
  [ebuild  N]   app-arch/lzma-utils-4.32.7  USE=-nocxx
  [ebuild  N]  app-admin/eselect-news-20080320
  [ebuild U ]   app-admin/eselect-1.0.11-r1 [1.0.7] USE=-vim-syntax%
  [ebuild U ]  app-misc/pax-utils-0.1.19 [0.1.15]
  [blocks B ] sys-apps/portage-2.1.5 (is blocking
  app-shells/bash-3.2_p39)
  colinux ~ #

 Hi!

 Thank every one for your help.

[snip long sad story of portage blockers]

 Here I am now ;)
 Any advice is welcome!

Why are you doing this? Is it to learn how to cope with such things?

If not, you are really wasting time that you will never get back. The last 18 
months has seen much activity in the tree, lot's of it from large packages 
being split into smaller ones, and blockers installed.

You've already come across mktemp/coreutils and e2fsprogs. You still have to 
deal with bash/python then that delicious recent cock-up with wget, expat and 
you have to decide if you want com_err or not. And plenty more. This all 
happened so long ago I forget the details (lucky for you it's all in the mail 
archives!).

Trust me, if this is not a learning exercise, just unmount your data volumes 
and reinstall the machine. The pain is not worth it. Really. Especially if 
glibc decides it doesn't like your headers, then you really are up the creek 
if you didn't quickpkg critical apps in the system set first :-)

-- 
alan dot mckinnon at gmail dot com



Re: [gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Stroller


On 13 May 2009, at 11:17, Alan McKinnon wrote:

...
Why are you doing this? Is it to learn how to cope with such things?

If not, you are really wasting time that you will never get back. ...

Trust me, if this is not a learning exercise, just unmount your data  
volumes

and reinstall the machine. The pain is not worth it. Really. ...


I'm inclined to disagree with you here. Obviously, it depends on the  
user - as I've undertaken this, I knew not to bother asking here  
because I knew I'd receive exactly this response. I examined ebuilds  
to see the blockers  looked up compatible versions in the portage  
attic, and I did my own searches when I came to problems like this  
one. And so far I've been ok.


In my case, reinstallation would be a huge pain. I would be massively  
worrying about which services on the machine I need to configure  
again, and whether everything I needed had been backed up properly. I  
have forgotten the original procedures I followed setting up many of  
these services, and it could easily take a week to set the machine up  
from scratch.


If I upgrade the obsolete portage incrementally, I know that  
everything is still working, and I update the machine without  
disruption to the users who depend upon the machine. If a service  
fails during the procedure, then it is only ONE service that I have to  
fix, not several. As I upgrade a package  run etc-update I can back  
up the original config files, and if I find the new ones are vastly  
different then I can refer to the originals /or diff them in.


If this upgrade procedure is undertaken cautiously, then it is no  
worse or different than it was when the changes originally entered the  
portage tree. One can `emerge -pv world` and then emerge the first  
package with --oneshot, rinse  repeat. Sure, this is potentially time- 
consuming, but I can leave packages compiling whilst I'm doing other  
things - reinstalling from scratch a base Gentoo installation isn't  
too bad (hardware, logger, housekeeping), but once you add in a number  
of services then I'm going to need to dedicate some time to the job.


I'm not reading Alexey too clearly, but it seems to me that he is  
saying he has a full system backup. In this case one can restore to  
that in minutes if something goes hosed badly during an emerge or if  
the users come in the next morning  complain that $facility isn't  
working.


I'm NOT saying that this procedure is for everyone, but equally I  
don't think it's fair to say there's NEVER any justification for it.


Stroller.




Re: [gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Alan McKinnon
On Wednesday 13 May 2009 16:16:10 Stroller wrote:
 In my case, reinstallation would be a huge pain. I would be massively  
 worrying about which services on the machine I need to configure  
 again, and whether everything I needed had been backed up properly. I  
 have forgotten the original procedures I followed setting up many of  
 these services, and it could easily take a week to set the machine up  
 from scratch.

But whether you reinstall (backing up and replacing old configs then runnign 
diff of course) or incrementally upgrade, and $SERVICE breaks, either way you 
equally do not know about it till $USER complains.

It's just that I remember all too well what it took to get through those many 
various blockers. More often than not I was once of the first to run into them 
- I sync and update daily - but I'd hate to do it all again all in one go, 
especially when all my buddies here have forgotten the procedure.

Horses for courses I guess.

-- 
alan dot mckinnon at gmail dot com



Re: [gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Stroller


On 13 May 2009, at 11:03, Alexey Luchko wrote:


Alexey Luchko wrote:

colinux ~ # emerge portage --pretend --tree
These are the packages that would be merged, in reverse order:
Calculating dependencies... done!
[nomerge  ] sys-apps/portage-2.1.6.11 [2.1.2.2]
[ebuild U ]  app-shells/bash-3.2_p39 [3.1_p17] USE=-examples% - 
plugins%

[ebuild U ] sys-apps/portage-2.1.6.11 [2.1.2.2]
[ebuild U ]  dev-python/pycrypto-2.0.1-r6 [2.0.1-r5]
[ebuild U ]  sys-apps/sandbox-1.6-r2 [1.2.17]
[ebuild  N]   app-arch/lzma-utils-4.32.7  USE=-nocxx
[ebuild  N]  app-admin/eselect-news-20080320
[ebuild U ]   app-admin/eselect-1.0.11-r1 [1.0.7] USE=-vim- 
syntax%

[ebuild U ]  app-misc/pax-utils-0.1.19 [0.1.15]
[blocks B ] sys-apps/portage-2.1.5 (is blocking app-shells/ 
bash-3.2_p39)

colinux ~ #


Hi!

Thank every one for your help.

Finally I got it out this way:
first  emerge --nodeps bash
then  emerge portage  upgraded portage to the latest version
and then, of cause,  emerge -uDN system -pvt
it had blocked packages
[blocks B ] sys-apps/man-pages-3 (sys-apps/man-pages-3 is  
blocking

sys-apps/man-pages-posix-2003a)
[blocks B ] sys-fs/e2fsprogs-1.41 (sys-fs/e2fsprogs-1.41 is  
blocking

sys-libs/e2fsprogs-libs-1.41.3-r1)
[blocks B ] sys-apps/mktemp (sys-apps/mktemp is blocking
sys-apps/coreutils-7.1)
[blocks B ] sys-libs/com_err (sys-libs/com_err is blocking
sys-libs/e2fsprogs-libs-1.41.3-r1)
[blocks B ] sys-apps/util-linux-2.13 (sys-apps/util- 
linux-2.13 is

blocking sys-apps/coreutils-7.1)
[blocks B ] sys-libs/ss (sys-libs/ss is blocking
sys-libs/e2fsprogs-libs-1.41.3-r1)

I unmerged them, and then  emerge -uDN system  had been working fine  
until

sys-libs/e2fsprogs-libs-1.41.3-r1 compilation failed with
../../lib/libuuid.so: undefined reference to `___tls_get_addr'




Alexey,

I think `emerge --nodeps bash` was the cause of your problem. You need  
to resolve each and every dependency - often sequentially or  
incrementally - before you go on to the next package. --nodpes is just  
asking your system to break.


I gave you advice in my previous message - you should have emerged  
earlier versions of packages in order, for the reason to avoid  
blockers. The Gentoo devs had a GOOD REASON when they declared  
bash-3.2_p39 as blocking the current portage. If you had tried to  
emerge the earlier bash you would probably have found it blocked by an  
earlier portage /or mktemp /or com_err /or util-linux /or sys-libs/ 
ss. If you had resolved each dependency in turn you would have  
eventually been able to upgrade to the latest versions.


I know this, because last month I did this myself. A system last  
upgraded in August or September 2007 now has bash-3.2_p39 and  
portage-2.1.6.4 installed on it.


If you don't have the patience for this, then do as Alan says   
reinstall the whole system.


If you don't understand what I wrote, then just ask.

If you want to upgrade this system then you're going to have to do a  
lot of work yourself. You WILL need to get older intermediate package  
versions from the CVS attic http://sources.gentoo.org/ and you will  
need to Google  read the list archive to see the correct procedure  
for resolving the mktemp, com_err, util-linux  sys-libs/ss problems.  
But that really is pretty straightforward - it is clearly documented  
on the list emerge version X of this, then version Y of that.


Stroller.



Re: [gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Stroller


On 13 May 2009, at 15:27, Alan McKinnon wrote:

...
It's just that I remember all too well what it took to get through  
those many
various blockers. More often than not I was once of the first to run  
into them
- I sync and update daily - but I'd hate to do it all again all in  
one go,

especially when all my buddies here have forgotten the procedure.


I think it does help if one upgrades a week or two after everyone  
else. I upgrade my main systems only every 4 - 12 weeks, and whenever  
I have a problem I look in the list archives and a clear upgrade  
procedure has most always been described.


I upgraded a 2007 system to current only a few weeks ago, and I  
encountered ALL the portage, mktemp, com_err, util-linux  sys-libs/ss  
problems. Honestly, it was not so bad. All these problems were clearly  
documented on the list - perhaps by yourself! - and I was able to  
overcome all of them in the course of an afternoon. The system was  
down for a couple of hours because I was hasty  impatient at one  
point, but in my case the significant cause of delays was that the  
machine is an old Duron 800mhz  took time with its compilation. With  
a faster machine I could perhaps have done all these upgrades within  
an hour.


Grabbing old versions of ebuilds from the attic is a bit of a pain,  
you wget them, rename them, copy them into /usr/local/portage, create  
the manifest and it's only when you try to emerge them that you find  
you also need a .patch file. But all these blockers are overcome just  
by upgrading the various packages in a straight-forward order.


I reread Alexey's post after replying to yours, and the reason he's  
having problems is because he's being careless. If you break the  
system, it's obviously a gamble whether you'll get your ass out of the  
problem you created for yourself. If you want to be sure of not  
breaking the system then you have to be cautious, resolve EACH and  
EVERY dependency in turn and not just go fukkit, i don't know what  
that package does so, i'll ignore or unmerge it, upgrade this other  
package to the latest version and hope everything resolves.


Stroller.




Re: [gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Alan McKinnon
On Wednesday 13 May 2009 16:49:52 Stroller wrote:
 I reread Alexey's post after replying to yours, and the reason he's  
 having problems is because he's being careless. If you break the  
 system, it's obviously a gamble whether you'll get your ass out of the  
 problem you created for yourself. If you want to be sure of not  
 breaking the system then you have to be cautious, resolve EACH and  
 EVERY dependency in turn and not just go fukkit, i don't know what  
 that package does so, i'll ignore or unmerge it, upgrade this other  
 package to the latest version and hope everything resolves.

Very true. I see he's got the bash/portage mutual blocker one as well.

Nasty one that - only by close study of the ebuilds did I manage to figure out 
that
- upgrade bash to interim version in the tree
- upgrade portage to latest
- upgrade bash to latest
was the only way through. In those days we didn't have automatic blocker 
resolution in portage either.

And yes, if Alexey is being careless then portage is going to bite his ass.

Alexey, if you read this:

Do not unmerge bash, portage, wget or python without first making a quickpkg. 
Otherwise you will be left with an unusable system and no way out of it - 
portage uses those packages directly and cannot function without them. 

-- 
alan dot mckinnon at gmail dot com



Re: [gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Paul Hartman
On Wed, May 13, 2009 at 10:00 AM, Alan McKinnon alan.mckin...@gmail.com wrote:
 On Wednesday 13 May 2009 16:49:52 Stroller wrote:
 I reread Alexey's post after replying to yours, and the reason he's
 having problems is because he's being careless. If you break the
 system, it's obviously a gamble whether you'll get your ass out of the
 problem you created for yourself. If you want to be sure of not
 breaking the system then you have to be cautious, resolve EACH and
 EVERY dependency in turn and not just go fukkit, i don't know what
 that package does so, i'll ignore or unmerge it, upgrade this other
 package to the latest version and hope everything resolves.

 Very true. I see he's got the bash/portage mutual blocker one as well.

 Nasty one that - only by close study of the ebuilds did I manage to figure out
 that
 - upgrade bash to interim version in the tree
 - upgrade portage to latest
 - upgrade bash to latest
 was the only way through. In those days we didn't have automatic blocker
 resolution in portage either.

 And yes, if Alexey is being careless then portage is going to bite his ass.

 Alexey, if you read this:

 Do not unmerge bash, portage, wget or python without first making a quickpkg.
 Otherwise you will be left with an unusable system and no way out of it -
 portage uses those packages directly and cannot function without them.

buildsyspkg in FEATURES (make.conf) can be a life saver too :)



Re: [gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Graham Murray
Paul Hartman paul.hartman+gen...@gmail.com writes:

 buildsyspkg in FEATURES (make.conf) can be a life saver too :)

But it does not (IMHO) save binaries for enough packages. For example,
it saves a binary for portage but not for python. I think it would be
good if it saved a binary package for everything which would be built
in stage-1, which would provide a much better 'get out of jail free' if
a critical package gets corrupted or fails to run.



Re: [gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Paul Hartman
On Wed, May 13, 2009 at 10:30 AM, Graham Murray gra...@gmurray.org.uk wrote:
 Paul Hartman paul.hartman+gen...@gmail.com writes:

 buildsyspkg in FEATURES (make.conf) can be a life saver too :)

 But it does not (IMHO) save binaries for enough packages. For example,
 it saves a binary for portage but not for python. I think it would be
 good if it saved a binary package for everything which would be built
 in stage-1, which would provide a much better 'get out of jail free' if
 a critical package gets corrupted or fails to run.

That's true, I didn't think of that before. Thankfully I have never
needed to use it, but I keep it enabled as a security blanket.



Re: [gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-13 Thread Neil Bothwick
On Wed, 13 May 2009 16:30:09 +0100, Graham Murray wrote:

  buildsyspkg in FEATURES (make.conf) can be a life saver too :)  
 
 But it does not (IMHO) save binaries for enough packages.

Then use buildpkg.


-- 
Neil Bothwick

It's only a hobby ... only a hobby ... only a


signature.asc
Description: PGP signature


[gentoo-user] Re: how to recover a portage that wasn't in use for very long time

2009-05-10 Thread Francesco Talamona
On Sunday 10 May 2009, Alan McKinnon wrote:
 Once you sort that out, there's a whole host of other stuff to fix as
 well - expat, latest xorg and many more - all stuff that everyone
 else fixed a while ago and since forgot.

Yes, beware of mktemp/coreutils too.
I don't remember of other dangers, maybe pam...

Ciao
Francesco

-- 
Linux Version 2.6.29-gentoo-r3, Compiled #2 SMP PREEMPT Sat May 9 
18:15:29 CEST 2009
Two 2.9GHz AMD Athlon 64 Processors, 4GB RAM, 11653 Bogomips Total
aemaeth