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 |