Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Solved] Upgrading a 2005.1 system?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
Carnildo
Guru
Guru


Joined: 17 Jun 2004
Posts: 594

PostPosted: Fri Jul 17, 2009 5:25 am    Post subject: [Solved] Upgrading a 2005.1 system? Reply with quote

I'm trying to install Gentoo on an NSLU2 (an embedded ARM system). I've tried following the handbook, but after chrooting, I get error messages that lead me to believe the stage3 is incompatible with the NSLU2. There are specific instructions for the NSLU2, but they mention that a 2005.1 stage3 is the newest available (and as far as I can tell, this is the case). The stage3 works, but leaves me with a version of portage that is incompatible with modern portage trees. To upgrade, it looks like I need one of the following:

1) A way to upgrade Portage without using Portage.
2) A Portage snapshot, probably from early 2007, that will let me bootstrap to a modern version.
3) A stage3 that works with the NSLU2.


Last edited by Carnildo on Sun Jul 19, 2009 1:10 am; edited 1 time in total
Back to top
View user's profile Send private message
cwr
Veteran
Veteran


Joined: 17 Dec 2005
Posts: 1969

PostPosted: Fri Jul 17, 2009 10:37 am    Post subject: Reply with quote

Yes, I remember there was a major incompatibility in the portage database sometime
in 2007; I got round it with a complete re-install. The only thing I can think of is to
re-install a current portage (the program) by hand, and then use a current portage
snapshot to rebuild the rest of the system.

Furthermore, it may well be that a current version of portage needs a relatively
current Python. I think you'll have to try it and see.

Will
Back to top
View user's profile Send private message
John R. Graham
Administrator
Administrator


Joined: 08 Mar 2005
Posts: 10587
Location: Somewhere over Atlanta, Georgia

PostPosted: Fri Jul 17, 2009 11:20 am    Post subject: Re: Upgrading a 2005.1 system? Reply with quote

Carnildo wrote:
1) A way to upgrade Portage without using Portage.
See Manually fixing broken portage installations. It contains all the guidance you need to install a modern Portage over that ancient one.

- John
_________________
I can confirm that I have received between 0 and 499 National Security Letters.
Back to top
View user's profile Send private message
dol-sen
Retired Dev
Retired Dev


Joined: 30 Jun 2002
Posts: 2805
Location: Richmond, BC, Canada

PostPosted: Fri Jul 17, 2009 1:35 pm    Post subject: Reply with quote

You may want to do a new stage1 install instead as there have been gcc glibc, portage upgrades that will probably make it difficult to upgrage from the old versions.

While it is not the main supported install method it is the method to install on an arch that does not have a stage3. There are still stage1 directions still available to get you to a stage3. Then continue with the stage3 instructions.
_________________
Brian
Porthole, the Portage GUI frontend irc@freenode: #gentoo-guis, #porthole, Blog
layman, gentoolkit, CoreBuilder, esearch...
Back to top
View user's profile Send private message
Carnildo
Guru
Guru


Joined: 17 Jun 2004
Posts: 594

PostPosted: Fri Jul 17, 2009 9:17 pm    Post subject: Reply with quote

john_r_graham wrote:
Carnildo wrote:
1) A way to upgrade Portage without using Portage.
See Manually fixing broken portage installations. It contains all the guidance you need to install a modern Portage over that ancient one.

Doesn't work: upgrading to Portage 2.1.1 produces the following:
Code:
Traceback (most recent call last):
  File "/usr/bin/emerge", line 4049, in ?
    emerge_main()
  File "/usr/bin/emerge", line 3768, in emerge_main
    settings, trees, mtimedb = load_emerge_config()
  File "/usr/bin/emerge", line 3679, in load_emerge_config
    trees = portage.create_trees(trees=trees, **kwargs)
  File "/usr/lib/portage/pym/portage.py", line 6771, in create_trees
    config_incrementals=portage_const.INCREMENTALS)
  File "/usr/lib/portage/pym/portage.py", line 921, in __init__
    addProfile(os.path.realpath(self.profile_path))
  File "/usr/lib/portage/pym/portage.py", line 915, in addProfile
    addProfile(parentPath)
  File "/usr/lib/portage/pym/portage.py", line 915, in addProfile
    addProfile(parentPath)
  File "/usr/lib/portage/pym/portage.py", line 908, in addProfile
    raise portage_exception.ParseError(
NameError: global name 'parents_file' is not defined


dol-sen wrote:
You may want to do a new stage1 install instead as there have been gcc glibc, portage upgrades that will probably make it difficult to upgrage from the old versions.

While it is not the main supported install method it is the method to install on an arch that does not have a stage3. There are still stage1 directions still available to get you to a stage3. Then continue with the stage3 instructions.


Where are these instructions?
Back to top
View user's profile Send private message
Carnildo
Guru
Guru


Joined: 17 Jun 2004
Posts: 594

PostPosted: Sat Jul 18, 2009 2:11 am    Post subject: Reply with quote

Carnildo wrote:
john_r_graham wrote:
Carnildo wrote:
1) A way to upgrade Portage without using Portage.
See Manually fixing broken portage installations. It contains all the guidance you need to install a modern Portage over that ancient one.

Doesn't work: upgrading to Portage 2.1.1 produces the following:
Code:
Traceback (most recent call last):
  File "/usr/bin/emerge", line 4049, in ?
    emerge_main()
  File "/usr/bin/emerge", line 3768, in emerge_main
    settings, trees, mtimedb = load_emerge_config()
  File "/usr/bin/emerge", line 3679, in load_emerge_config
    trees = portage.create_trees(trees=trees, **kwargs)
  File "/usr/lib/portage/pym/portage.py", line 6771, in create_trees
    config_incrementals=portage_const.INCREMENTALS)
  File "/usr/lib/portage/pym/portage.py", line 921, in __init__
    addProfile(os.path.realpath(self.profile_path))
  File "/usr/lib/portage/pym/portage.py", line 915, in addProfile
    addProfile(parentPath)
  File "/usr/lib/portage/pym/portage.py", line 915, in addProfile
    addProfile(parentPath)
  File "/usr/lib/portage/pym/portage.py", line 908, in addProfile
    raise portage_exception.ParseError(
NameError: global name 'parents_file' is not defined

On further checking, 2.1.1 isn't new enough, and everything newer requires Python 2.4 or newer (I've got 2.3).
Back to top
View user's profile Send private message
Loxley
n00b
n00b


Joined: 19 Jul 2006
Posts: 12

PostPosted: Sat Jul 18, 2009 3:20 am    Post subject: Reply with quote

First step is to update your profile and manually upgrade python and portage. You can find these packages at http://tinderbox.dev.gentoo.org/.

Once portage is up you're on the way but there will no doubt be plenty of stumbling blocks. I'm in the middle of a similar upgrade and found this guide to be helpful:

http://www.galador.org/blog/updating-an-old-gentoo-install/
Back to top
View user's profile Send private message
Carnildo
Guru
Guru


Joined: 17 Jun 2004
Posts: 594

PostPosted: Sat Jul 18, 2009 4:40 am    Post subject: Reply with quote

Loxley wrote:
First step is to update your profile and manually upgrade python and portage. You can find these packages at http://tinderbox.dev.gentoo.org/.

The Python on that site doesn't work: trying to run it directly produces the message "bash: /usr/bin/python2.5: No such file or directory"


I think I've found a solution:
1) Manually install Python 2.5 from source (./configure --prefix=/usr; make; make install)
2) Install Portage 2.1.6 following the directions at http://www.gentoo.org/proj/en/portage/doc/manually-fixing-portage.xml
3) With the working copy of Portage that gives you, re-emerge Portage and Python so that Portage knows what's installed. There's a mess of blockers that need to be sorted out, but that's pretty straightforward.

Edit: Step 3 is a bit more complicated than expected:
1) Add python-2.5.4 to /etc/portage/profile/package.provided -- it's installed, Portage just doesn't know it.
2) emerge --pretend --verbose portage
3) Emerge everything on that list except bash, coreutils and portage. It'll prompt you to run etc-update, but don't: it won't work yet.
4) emerge --ask --verbose --oneshot --nodeps bash -- The nodeps option is needed to bypass the bash/portage blocker: Portage thinks portage-2.0.51.22-r2 is installed when 2.1.6 is.
5) etc-update -- it now works.
6) emerge --ask --verbose --oneshot --nodeps portage -- this updates you to portage-2.1.6.13, and informs Portage of what version you really have installed.
7) emerge --fetchonly e2fsprogs e2fsprogs-libs
8) emerge --ask --unmerge com_err ss e2fsprogs
9) emerge --ask --verbose --oneshot e2fsprogs -- this resolves the e2fsprogs blocker
Either:
10a) emerge --ask --verbose --oneshot =uclibc-0.9.28.3-r3 and apply the patch at https://bugs.gentoo.org/249582 to util-linux, or
10b) emerge --ask --verbose --oneshot >=uclibc-0.9.30
11) emerge --ask --verbose --oneshot util-linux -- this resolves the util-linux/coreutils blocker.
12) emerge --ask --verbose --oneshot --nodeps debianutils: both debianutils-2.14.1-r1 and coreutils-7.1 provide /bin/mktemp, but the ebuilds don't have a block here.
13) emerge --ask --verbose --oneshot coreutils -- the remaining dependancy of portage. If you're getting segfaults here, re-emerge lzma-utils.
14) Remove python from package.provided
15) emerge --ask --verbose --oneshot python -- This does a proper update of Python and uninstalls python-2.3.5
16) python-updater
17) emerge --ask --verbose --oneshot findutils -- Portage requires >=findutils-4.2.12, but doesn't have a dependancy on it.
Back to top
View user's profile Send private message
dol-sen
Retired Dev
Retired Dev


Joined: 30 Jun 2002
Posts: 2805
Location: Richmond, BC, Canada

PostPosted: Sun Jul 19, 2009 2:15 pm    Post subject: Reply with quote

It is too late now, but the instructions for a stage 1 are now in the FAQ.
Although, I suspect that it would not have worked quite as easily since your stage3 had the older portage, etc..
_________________
Brian
Porthole, the Portage GUI frontend irc@freenode: #gentoo-guis, #porthole, Blog
layman, gentoolkit, CoreBuilder, esearch...
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum