new ppc64 profiles

Posted: 2021-07-17 by Georgy Yakovlev | Revision: 1
Format:
2.0
Display if profile:
default/linux/powerpc/ppc64/17.0/64bit-userland
Display if profile:
default/linux/powerpc/ppc64/17.0/64bit-userland/desktop
Display if profile:
default/linux/powerpc/ppc64/17.0/64bit-userland/desktop/gnome
Display if profile:
default/linux/powerpc/ppc64/17.0/64bit-userland/desktop/gnome/systemd
Display if profile:
default/linux/powerpc/ppc64/17.0/64bit-userland/developer
A new set of ppc64 profiles has been added to the Gentoo repository in Jan 2020. These profiles switch to a more standard 'no SYMLINK_LIB' multilib layout, and require explicit migration as described below. They are considered stable at the moment, and we would like to request all users to upgrade their systems. The old profiles will be deprecated in the near future.

In the new profiles, the lib->lib64 compatibility symlink is removed. 64-bit libraries need to be installed directly to lib64. /lib and /usr/lib become real directories, that are used for cross-arch and native non-library packages (gcc, clang).

The migration is performed using app-portage/unsymlink-lib tool. The following steps can be used to upgrade your system:

1. Sync and upgrade your system to the newest package versions

 to reduce the risk of issues.

2. Install the tool:


   # emerge -1v app-portage/unsymlink-lib

3. Run 'unsymlink-lib --analyze' and check the output for obvious

 mistakes.  If you need to perform any changes to the system, remember
 to run 'unsymlink-lib --analyze' again afterwards.

[past this point do not call emerge or modify /usr manually]

4. This is a very good time to make a backup.

5. Run 'unsymlink-lib --migrate'. You can add '--pretend' first to see

 what is going to happen.

6. Reboot your system. Check if important programs work.

 In particular, verify that e.g. 'emerge --info' works (but do not
 install anything).  If you hit any serious problems, you can use
 'unsymlink-lib --rollback' to revert the changes and return to
 step 4.

7. Run 'unsymlink-lib --finish'. You can add '--pretend' first to see

 what is going to happen but note that you're going to see a very long
 list of files to remove.

8. Switch the profile, e.g.:


   # eselect profile set default/linux/ppc64/17.0

[at this point you can start using emerge again]

9. Rebuild the toolchain:


    # emerge -1v sys-devel/gcc:10
    [ repeat for other slots you will be using ]
    # emerge -1v sys-devel/binutils
    # emerge -1v sys-libs/glibc

For known issues, please see bugs #506276 [2] and #640184[3] . If you have any problems with the new profiles or the migration procedure, please report a bug and make it block the tracker.

For more information on the layout, please see the wiki article on AMD64 multilib layouts [4], it applies to PPC64 as well.

[1] https://gentoo.org/support/news-items/2017-11-30-new-17-profiles.html [2] https://bugs.gentoo.org/506276 [3] https://bugs.gentoo.org/640184 [4] https://wiki.gentoo.org/wiki/Project:AMD64/Multilib_layout