1 |
Following the feedback so far, here is v2 of the news item. It will be |
2 |
released as a new news items and the old news item removed. This will |
3 |
ensure that users are prompted again and can follow the appropriate |
4 |
directions. Now wrapped at 72 chars. |
5 |
|
6 |
Thanks to MichaĆ for the feedback. |
7 |
|
8 |
=== |
9 |
|
10 |
Title: amd64 17.1 Profiles |
11 |
Author: Aaron Bauman <bman@g.o> |
12 |
Posted: 2019-02-xx |
13 |
Revision: 0 |
14 |
News-Item-Format: 2.0 |
15 |
Display-If-Profile: default/linux/amd64/13.0 |
16 |
Display-If-Profile: default/linux/amd64/13.0/selinux |
17 |
Display-If-Profile: default/linux/amd64/13.0/desktop |
18 |
Display-If-Profile: default/linux/amd64/13.0/desktop/gnome |
19 |
Display-If-Profile: default/linux/amd64/13.0/desktop/gnome/systemd |
20 |
Display-If-Profile: default/linux/amd64/13.0/desktop/plasma |
21 |
Display-If-Profile: default/linux/amd64/13.0/desktop/plasma/systemd |
22 |
Display-If-Profile: default/linux/amd64/13.0/developer |
23 |
Display-If-Profile: default/linux/amd64/13.0/no-multilib |
24 |
Display-If-Profile: default/linux/amd64/13.0/systemd |
25 |
Display-If-Profile: default/linux/amd64/17.0 |
26 |
Display-If-Profile: default/linux/amd64/17.0/selinux |
27 |
Display-If-Profile: default/linux/amd64/17.0/hardened |
28 |
Display-If-Profile: default/linux/amd64/17.0/hardened/selinux |
29 |
Display-If-Profile: default/linux/amd64/17.0/desktop |
30 |
Display-If-Profile: default/linux/amd64/17.0/desktop/gnome |
31 |
Display-If-Profile: default/linux/amd64/17.0/desktop/gnome/systemd |
32 |
Display-If-Profile: default/linux/amd64/17.0/desktop/plasma |
33 |
Display-If-Profile: default/linux/amd64/17.0/desktop/plasma/systemd |
34 |
Display-If-Profile: default/linux/amd64/17.0/developer |
35 |
Display-If-Profile: default/linux/amd64/17.0/no-multilib |
36 |
Display-If-Profile: default/linux/amd64/17.0/no-multilib/hardened |
37 |
Display-If-Profile: default/linux/amd64/17.0/no-multilib/hardened/selinux |
38 |
Display-If-Profile: default/linux/amd64/17.0/systemd |
39 |
|
40 |
The 17.1 amd64 profiles have been in the Gentoo repository for over a |
41 |
year and have been tested in exp and dev profile statuses. These |
42 |
profiles switch to a more standard 'no SYMLINK_LIB' multilib layout |
43 |
and require explicit migration as described below. |
44 |
|
45 |
They are now considered stable and the removal of all 13.0 profiles |
46 |
is imminent. Users are highly encouraged to transition their systems. |
47 |
|
48 |
In these profiles, the lib->lib64 compatibility symlink is removed. |
49 |
The 'lib' directory becomes a separate directory, that is used |
50 |
for cross-arch and native non-library packages (gcc, clang) and 32-bit |
51 |
libraries on the multilib profile (for better compatibility with |
52 |
prebuilt x86 packages). |
53 |
|
54 |
Migration from both 13.0 and 17.0 profiles are supported. In case |
55 |
of the former, please read the news item for 17.0 upgrade first |
56 |
and enable gcc 6.4.0 or newer first as explained there. |
57 |
|
58 |
The migration is performed using app-portage/unsymlink-lib tool. |
59 |
The following steps can be used to upgrade your system: |
60 |
|
61 |
1. Sync and upgrade your system to the newest package versions |
62 |
to reduce the risk of issues. |
63 |
|
64 |
2. Install the tool, e.g. via 'emerge -1v app-portage/unsymlink-lib' |
65 |
|
66 |
3. Run 'unsymlink-lib --analyze' and check the output for obvious |
67 |
mistakes. If you need to perform any changes to the system, remember |
68 |
to run 'unsymlink-lib --analyze' again afterwards. |
69 |
|
70 |
[past this point do not call emerge or modify /usr manually] |
71 |
|
72 |
4. This is a very good time to make a backup. |
73 |
|
74 |
5. Run 'unsymlink-lib --migrate'. You can add '--pretend' first to see |
75 |
what is going to happen. |
76 |
|
77 |
6. Reboot your system and see if it still boots. Check if important |
78 |
programs work. In particular, check if e.g. 'emerge --info' works |
79 |
(but do not install anything). If you hit any serious problems, |
80 |
you can use 'unsymlink-lib --rollback' to revert the changes |
81 |
and return to step 3. |
82 |
|
83 |
7. Run 'unsymlink-lib --finish'. You can add '--pretend' first to see |
84 |
what is going to happen but note that you're going to see a very long |
85 |
list of files to remove. |
86 |
|
87 |
8. Switch the profile, e.g.: |
88 |
|
89 |
eselect profile set --force default/linux/amd64/17.1/desktop |
90 |
|
91 |
[at this point you can start using emerge again] |
92 |
|
93 |
9. Rebuild sys-devel/gcc. If you are switching from 13.0 profiles, |
94 |
rebuild sys-devel/binutils and sys-libs/glibc afterwards. |
95 |
|
96 |
10. If you are using a multilib profile, rebuild all 32-bit packages. |
97 |
This can be done using: |
98 |
|
99 |
emerge -1v /lib32 /usr/lib32 |
100 |
|
101 |
Alternatively, if you are switching from one of the 13.0 profiles |
102 |
you can rebuild all packages as detailed in the 17.0 news item. |
103 |
|
104 |
11. Once the last 32-bit package is rebuilt, your package manager |
105 |
should remove the orphaned /lib32 and /usr/lib32 symlinks. If that |
106 |
does not happen, remove them manually. |
107 |
|
108 |
For known issues, please see bug #506276 [1]. If you have any problems |
109 |
with the new profiles or the migration procedure, please report a bug |
110 |
and make it block the tracker. |
111 |
|
112 |
For more information on the layout, please see the wiki article |
113 |
on AMD64 multilib layouts [2]. |
114 |
|
115 |
[1]:https://bugs.gentoo.org/506276 |
116 |
[2]:https://wiki.gentoo.org/wiki/Project:AMD64/Multilib_layout |
117 |
|
118 |
|
119 |
-- |
120 |
Cheers, |
121 |
Aaron |