Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev <gentoo-dev@l.g.o>
Subject: [gentoo-dev] [News item review] amd64 17.1 profiles are now stable
Date: Sun, 19 May 2019 07:00:27
Message-Id: e96b6df7d4a4b30055636f0118082c661f35ea03.camel@gentoo.org
1 Hi,
2
3 As discussed during the Council meeting, I'm sending an updated news
4 item for 17.1 profile migration. This item will be published along with
5 the profiles being marked stable, and the old one will be removed.
6
7 Besides removing all references to the profiles being 'experimental',
8 I've reformatted and updated the text to be a little more clear about
9 the new design.
10
11 ---
12 Title: amd64 17.1 profiles are now stable
13 Author: Michał Górny <mgorny@g.o>
14 Posted: 2019-05-xx
15 Revision: 1
16 News-Item-Format: 2.0
17 Display-If-Profile: default/linux/amd64/13.0
18 Display-If-Profile: default/linux/amd64/13.0/selinux
19 Display-If-Profile: default/linux/amd64/13.0/desktop
20 Display-If-Profile: default/linux/amd64/13.0/desktop/gnome
21 Display-If-Profile: default/linux/amd64/13.0/desktop/gnome/systemd
22 Display-If-Profile: default/linux/amd64/13.0/desktop/plasma
23 Display-If-Profile: default/linux/amd64/13.0/desktop/plasma/systemd
24 Display-If-Profile: default/linux/amd64/13.0/developer
25 Display-If-Profile: default/linux/amd64/13.0/no-multilib
26 Display-If-Profile: default/linux/amd64/13.0/systemd
27 Display-If-Profile: default/linux/amd64/17.0
28 Display-If-Profile: default/linux/amd64/17.0/selinux
29 Display-If-Profile: default/linux/amd64/17.0/hardened
30 Display-If-Profile: default/linux/amd64/17.0/hardened/selinux
31 Display-If-Profile: default/linux/amd64/17.0/desktop
32 Display-If-Profile: default/linux/amd64/17.0/desktop/gnome
33 Display-If-Profile: default/linux/amd64/17.0/desktop/gnome/systemd
34 Display-If-Profile: default/linux/amd64/17.0/desktop/plasma
35 Display-If-Profile: default/linux/amd64/17.0/desktop/plasma/systemd
36 Display-If-Profile: default/linux/amd64/17.0/developer
37 Display-If-Profile: default/linux/amd64/17.0/no-multilib
38 Display-If-Profile: default/linux/amd64/17.0/no-multilib/hardened
39 Display-If-Profile: default/linux/amd64/17.0/no-multilib/hardened/selinux
40 Display-If-Profile: default/linux/amd64/17.0/systemd
41
42 A new set of 17.1 amd64 profiles has been added to the Gentoo
43 repository in Dec 2017. These profiles switch to a more standard
44 'no SYMLINK_LIB' multilib layout, and require explicit migration as
45 described below. They are considered stable at the moment, and we would
46 like to request all users to upgrade their systems. The old profiles
47 will be deprecated in the near future.
48
49 In the new profiles, the lib->lib64 compatibility symlink is removed.
50 64-bit libraries need to be installed directly to lib64. /lib
51 and /usr/lib become real directories, that are used for cross-arch
52 and native non-library packages (gcc, clang) and 32-bit libraries
53 on the multilib profile (which improves compatibility with prebuilt x86
54 packages).
55
56 Migration from both 13.0 and 17.0 profiles is supported. In case
57 of the former, please read the news item for 17.0 upgrade first
58 and enable gcc 6.4.0 or newer first as explained there.
59
60 The migration is performed using app-portage/unsymlink-lib tool.
61 The following steps can be used to upgrade your system:
62
63 1. Sync and upgrade your system to the newest package versions
64 to reduce the risk of issues.
65
66 2. Install the tool, e.g. via 'emerge -1v app-portage/unsymlink-lib'
67
68 3. Run 'unsymlink-lib --analyze' and check the output for obvious
69 mistakes. If you need to perform any changes to the system, remember
70 to run 'unsymlink-lib --analyze' again afterwards.
71
72 [past this point do not call emerge or modify /usr manually]
73
74 4. This is a very good time to make a backup.
75
76 5. Run 'unsymlink-lib --migrate'. You can add '--pretend' first to see
77 what is going to happen.
78
79 6. Reboot your system. Check if important programs work.
80 In particular, verify that e.g. 'emerge --info' works (but do not
81 install anything). If you hit any serious problems, you can use
82 'unsymlink-lib --rollback' to revert the changes and return to
83 step 3.
84
85 7. Run 'unsymlink-lib --finish'. You can add '--pretend' first to see
86 what is going to happen but note that you're going to see a very long
87 list of files to remove.
88
89 8. Switch the profile, e.g.:
90
91 eselect profile set default/linux/amd64/17.1/desktop
92
93 [at this point you can start using emerge again]
94
95 9. Rebuild sys-devel/gcc. If you are switching from 13.0 profiles,
96 rebuild sys-devel/binutils and sys-libs/glibc afterwards.
97
98 10. If you are using a multilib profile, rebuild all 32-bit packages.
99 This can be done using:
100
101 emerge -1v /lib32 /usr/lib32
102
103 Alternatively, if you are switching from one of the 13.0 profiles
104 you can rebuild all packages as detailed in the 17.0 news item.
105
106 11. Once the last 32-bit package is rebuilt, your package manager
107 should remove the orphaned /lib32 and /usr/lib32 symlinks. If that
108 does not happen, remove them manually.
109
110 For known issues, please see bug #506276 [1]. If you have any problems
111 with the new profiles or the migration procedure, please report a bug
112 and make it block the tracker.
113
114 For more information on the layout, please see the wiki article
115 on AMD64 multilib layouts [2].
116
117 [1]:https://bugs.gentoo.org/506276
118 [2]:https://wiki.gentoo.org/wiki/Project:AMD64/Multilib_layout
119
120 --
121 Best regards,
122 Michał Górny

Replies