On 2018-08-22, Zoltán Kócsi wrote: > I have a Gentoo machine, which has not been updated for a while. Quite > a long while, actually. > > Now I needed to install a package, and I did so. It went up, no > problem. Except that it relies on a newer version of openrc than > what's on the system. From here it's all downhill: > > emerge openrc: > - Fails, as the current portage is EAPI 5 (whatever that is), thus all > EAPI 6 packages are masked. Must upgrade portage. > > emerge portage: > - Fails, as it needs tar-1.30 and the installed tar is 1.27. Must update > tar. > > emerge tar: > - Fails, as tar-1.30 needs EAPI 6. Must upgrade portage. > > It seems that I'm kind of stuck. Wiping the disk and rebuilding the > system from scratch is absolutely not an option, the existing (and > running) system must be updated somehow. > > I would appreciate any advice, I'm in complete darkness about the > internal workings of portage (would be happy to find some detailed docs > about that, by the way, preferably in PDF). > > Thanks in advance, > > Zoltan
First, and before anything else: it can be done. You will have to deal with issues that are perhaps a bit more complex than the usual conflicts and issues that show up once in a while even on a stable system which is updated frequently. But it's definitely not impossible. The biggest hurdle in your case is that you need to update tar. Do what was already mentioned elsewhere in the thread, fetch the older EAPI 5 ebuild, put it in the local overlay and let portage grab that. If you're lucky, that might be the only problem you'll have. If you're not so lucky, you will have a couple packages that were since removed from the tree, and which must be either uninstalled or added to a local overlay and adjusted as required. (Because they might depend on older versions of other packages which do not exist anymore.) You will probably find some actual bugs too, for example, some packages may fail because their dependencies are not correct. When was the last time this system was fully updated/upgraded? (Not the last time you synced the tree, but the last time you did emerge -DuN world or the like.) This might be useful to figure out which issues are you going to find. Some recent issues were a change in the C++ ABI and the build system change in certain X11-related packages that pulls python3 as a build dependency. -- Nuno Silva