/[gentoo]/xml/htdocs/doc/en/gentoo-upgrading.xml
Gentoo

Diff of /xml/htdocs/doc/en/gentoo-upgrading.xml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.2 Revision 1.16
1<?xml version='1.0' encoding="UTF-8"?> 1<?xml version='1.0' encoding="UTF-8"?>
2<!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> 2<!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
3<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoo-upgrading.xml,v 1.2 2004/05/15 01:02:37 neysx Exp $ --> 3<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/gentoo-upgrading.xml,v 1.16 2004/12/18 15:14:26 neysx Exp $ -->
4 4
5<guide link="/doc/en/gentoo-upgrading.xml"> 5<guide link="/doc/en/gentoo-upgrading.xml">
6<title>Gentoo Upgrading Guide</title> 6<title>Gentoo Upgrading Guide</title>
7 7
8<author title="Author"> 8<author title="Author">
9 <mail link="g.guidi@sns.it">Gregorio Guidi</mail> 9 <mail link="g.guidi@sns.it">Gregorio Guidi</mail>
10</author> 10</author>
11 11
12<abstract> 12<abstract>
13This document explains how to react when a new Gentoo release is announced. 13This document explains how new Gentoo releases affect existing installs.
14</abstract> 14</abstract>
15 15
16<!-- The content of this document is licensed under the CC-BY-SA license --> 16<!-- The content of this document is licensed under the CC-BY-SA license -->
17<!-- See http://creativecommons.org/licenses/by-sa/1.0 --> 17<!-- See http://creativecommons.org/licenses/by-sa/2.0 -->
18<license/> 18<license/>
19 19
20<version>1.1</version> 20<version>2.7</version>
21<date>May 12, 2004</date> 21<date>November 08, 2004</date>
22 22
23<chapter> 23<chapter>
24<title>Gentoo and Upgrades</title> 24<title>Gentoo and Upgrades</title>
25<section> 25<section>
26<title>Philosophy</title> 26<title>Philosophy</title>
27<body> 27<body>
28 28
29<p> 29<p>
30Here in Gentoo land, the concept of upgrade is quite different with respect to 30Here in Gentoo land, the concept of upgrading is quite different compared to
31the rest of the linux world. Probably you already know that we never got in 31the rest of the Linux world. You probably already know that we never got in
32touch with the "classic" way to upgrade software in our distribution to the 32touch with the "classic" way of upgrading software: waiting for a new release,
33latest version: waiting for a new release, downloading it, burning, putting it 33downloading it, burning, putting it in the cdrom drive and then following the
34in the cdrom drive and then following the upgrade instructions. 34upgrade instructions.
35</p>
36
37<p> 35</p>
36
37<p>
38You know (you chose Gentoo, after all) that this process is extremely 38You know (being a Gentoo user after all) that this process is extremely
39frustrating for power users that want to live on the bleeding edge. Even power 39frustrating for power users that want to live on the bleeding edge. Even power
40users from other distributions must share the same feelings, given the 40users from other distributions probably share the same feelings, given the
41popularity and spread among them of tools like apt or apt-rpm, which make it 41popularity and spread of tools like apt or apt-rpm which make it
42possible to have quick and frequent updates. However, no distibution is more 42possible to have quick and frequent updates. However, no distibution is more
43suited than Gentoo to satisfy these kind of demanding users, because Gentoo was 43suited than Gentoo to satisfy these kind of demanding users. From the beginning,
44shaped from the beginning around the concept of fast, incremental updates. 44Gentoo was designed around the concept of fast, incremental updates.
45</p>
46
47<p> 45</p>
48Ideally, you install once and then do not bother anymore about releases: 46
49just follow the instructions in 47<p>
48Ideally, you install once and never bother with releases: just follow the
49instructions in <uri
50<uri link="/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=2">Portage and 50link="/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=1">A Portage
51Software</uri> in the 51Introduction</uri> in the <uri link="/doc/en/handbook/">Gentoo Handbook</uri>
52<uri link="/doc/en/handbook/">Gentoo Handbook</uri> that explain how to keep 52that explain how to keep your system up to date. While that's the way things
53your system up to date. While that's the way things go usually, it can 53usually go, sometimes changes are made to the core system which require updates
54happen sometimes that developers push out, together with a new release, an 54to be done manually.
55update that touches the basics of the systems. We will consider these cases
56below, when talking about profiles.
57</p> 55</p>
58 56
59</body> 57</body>
60</section> 58</section>
61<section> 59<section>
68There are various reasons: 66There are various reasons:
69</p> 67</p>
70 68
71<ul> 69<ul>
72 <li> 70 <li>
73 A new release means enhanced and more feature-rich LiveCDs. 71 A new release means new LiveCDs with bugfixes and more features.
74 </li> 72 </li>
75 <li> 73 <li>
76 A new release provides an updated set of GRP packages, so that users that 74 A new release provides an updated set of GRP packages, so that users that
77 choose "the fast way" to install, stage3 + precompiled packages, end up 75 choose "the fast way" to install (stage3 + precompiled packages) end up
78 with a system that is not outdated. 76 with a system that is not outdated.
79 </li> 77 </li>
80 <li> 78 <li>
81 Finally, a new release may (not frequently) implement some features that 79 Finally, a new release may, from time to time, implement some features that
82 are incompatible with previous releases. 80 are incompatible with previous releases.
83 </li> 81 </li>
84</ul> 82</ul>
85 83
86<p> 84<p>
87When a release provides new incompatible features, or provides a set of core 85When a release includes new incompatible features, or provides a set of core
88packages and settings that deeply modify the behavior of the system, or simply 86packages and settings that deeply modify the behavior of the system, we say
89when it makes tricky changes to some default parameters, we say that it
90provides a new <e>profile</e>. 87that it provides a new <e>profile</e>.
91</p> 88</p>
92 89
93<p> 90<p>
94A <e>profile</e> is a set of configuration files, stored in a subdirectory of 91A <e>profile</e> is a set of configuration files, stored in a subdirectory of
95<path>/usr/portage/profiles/</path>, that describe things such as the ebuilds 92<path>/usr/portage/profiles</path>, that describe things such as the ebuilds
96that are considered <e>system</e> packages, the default USE flags, the default 93that are considered <e>system</e> packages, the default USE flags, the default
97mapping for virtual packages. 94mapping for virtual packages, and the architecture on which the system is running.
98</p> 95</p>
99 96
100<p> 97<p>
101The profile in use is determined by the symbolic link 98The profile in use is determined by the symbolic link
102<path>/etc/make.profile</path>, which points to the subdirectory of 99<path>/etc/make.profile</path>, which points to a subdirectory of
103<path>/usr/portage/profiles</path> which holds the profile files, for instance <path>/usr/portage/profiles/default-x86-2004.0</path>. 100<path>/usr/portage/profiles</path> which holds the profile files. For instance,
101the x86 2004.2 profile can be found at <path>/usr/portage/profiles/default-x86-2004.2</path>
102(old-style location) or at <path>/usr/portage/profiles/default-linux/x86/2004.2</path> (new-style
103location - only for use with Portage 2.0.51 and later). With respect to new-style profile directories, note that the files in
104parent directories are part of the profile (and are therefore shared
105by different subprofiles).
104</p> 106</p>
105 107
106<p> 108<p>
107Profiles obsoleted by new ones are kept in <path>/usr/portage/profiles</path> 109Profiles obsoleted by new ones are kept in <path>/usr/portage/profiles</path>
108as the current ones, but they are marked as deprecated. When that happens a 110along with the current ones, but they are marked as deprecated. When that happens a
109file named <path>deprecated</path> is put in the profile directory. The content 111file named <path>deprecated</path> is put in the profile directory. The content
110of this file is the name of the profile that should substitute it; portage uses 112of this file is the name of the profile that should be "upgraded to"; portage uses
111this information to automatically warn you about the new profile. 113this information to automatically warn you when you should update to a new profile.
112</p>
113
114<p> 114</p>
115There are various reasons that justify the creation of a new profile: the 115
116<p>
117There are various reasons that a new profile may be created: the release of new
116release of new versions of core packages (such as <c>baselayout</c>, <c>gcc</c> 118versions of core packages (such as <c>baselayout</c>, <c>gcc</c>, or <c>glibc</c>)
117or <c>glibc</c>) that are incompatible with previous versions, a change in the 119that are incompatible with previous versions, a change in the default USE flags or
118default USE flags, or in the virtual mappings, or maybe a change in system-wide 120in the virtual mappings, or maybe a change in system-wide settings (such as defining
119settings (such as defining udev to be the default manager for <path>/dev</path> 121udev to be the default manager for <path>/dev</path> instead of devfs).
120instead of devfs).
121</p> 122</p>
122 123
123</body> 124</body>
124</section> 125</section>
125</chapter> 126</chapter>
130<title>Releases without profile changes</title> 131<title>Releases without profile changes</title>
131<body> 132<body>
132 133
133<p> 134<p>
134If a new Gentoo release is announced that does not include a new profile (such 135If a new Gentoo release is announced that does not include a new profile (such
135as the 2004.1 release for x86), then you can safely pretend that it never 136as the 2004.1 release for x86), then you can safely pretend that it never
136happened. 137happened :).
137</p>
138
139<p> 138</p>
139
140<p>
140If you update your installed packages 141If you update your installed packages
141<uri link="/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=2">as explained in 142<uri link="/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=1">as explained in
142the Gentoo Handbook</uri>, then your system will be exactly the same as one 143the Gentoo Handbook</uri>, then your system will be exactly the same as one
143that has been installed using the new release. 144that has been installed using the new release.
144</p> 145</p>
145 146
146</body> 147</body>
148<section> 149<section>
149<title>Releases with profile changes</title> 150<title>Releases with profile changes</title>
150<body> 151<body>
151 152
152<p> 153<p>
153If a release introduces a new profile, you have the choice to migrate to the 154If a release introduces a new profile, you have the choice to migrate to the
154new profile. 155new profile.
155</p> 156</p>
156 157
157<p> 158<p>
158Naturally, you are not forced to do so, you can continue to use the old profile 159Naturally, you are not forced to do so, and you can continue to use the old profile
159and just update your packages 160and just update your packages
160<uri link="/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=2">as explained in 161<uri link="/doc/en/handbook/handbook-x86.xml?part=2&amp;chap=1">as explained in
161the Gentoo Handbook</uri> (or you may want to not update your system at all). 162the Gentoo Handbook</uri>.
162</p>
163
164<p> 163</p>
164
165<p>
165However, Gentoo strongly recommends a migration if your profile becomes 166However, Gentoo strongly recommends updating your profile if it becomes deprecated.
166deprecated and is no more supported by Gentoo developers, that is to say that 167When this happens, it means that Gentoo developers no longer plan on supporting it.
167your profile is not listed anymore in the table below. 168Using the table below, you can quickly check to see what profiles are currently supported.
168</p> 169</p>
169 170
170<p> 171<p>
171If you decide to migrate to the new profile, then you will have to manually 172If you decide to migrate to the new profile, then you will have to manually
172perform some actions. Those actions may vary a lot from release to release, it 173perform the update. The way you update may vary significantly from release to release; it
173depends on how deep the modifications introduced in the new profile are. 174depends on how deep the modifications introduced in the new profile are.
174</p> 175</p>
175 176
176<p> 177<p>
177In the simplest case you only have to change the <path>/etc/make.profile</path> 178In the simplest case you only have to change the <path>/etc/make.profile</path>
178link, in the worst case you may have to recompile your system from scratch 179symlink, in the worst case you may have to recompile your system from scratch
179while doing some voodoo stuff. In every case we will publish the instructions 180while doing a neat voodoo dance. Migration is usually covered in the release
180for the migration as part of the release. You can find these instructions also 181notes (e.g. <uri
181at the end of this guide. 182link="/proj/en/releng/release/2004.3/x86-release-notes.xml">the x86 2004.3
183release notes</uri>). You can also find <uri
184link="#instructions">instructions</uri> at the end of this guide.
182</p> 185</p>
183 186
184</body> 187</body>
185</section> 188</section>
186<section> 189<section>
196 <th>Architecture</th> 199 <th>Architecture</th>
197 <th>Most recent profile</th> 200 <th>Most recent profile</th>
198 <th>Other supported profiles</th> 201 <th>Other supported profiles</th>
199</tr> 202</tr>
200<tr> 203<tr>
204 <th>alpha</th>
205 <ti>2004.3</ti>
206 <ti></ti>
207</tr>
208<tr>
209 <th>arm</th>
210 <ti>2004.3</ti>
211 <ti></ti>
212</tr>
213<tr>
214 <th>amd64</th>
215 <ti>2004.3</ti>
216 <ti>2004.2, 2004.0</ti>
217</tr>
218<tr>
219 <th>hppa</th>
220 <ti>2004.3</ti>
221 <ti>2004.2</ti>
222</tr>
223<tr>
224 <th>ia64</th>
225 <ti>2004.3</ti>
226 <ti></ti>
227</tr>
228<tr>
229 <th>ppc</th>
230 <ti>2004.3</ti>
231 <ti>2004.0</ti>
232</tr>
233<tr>
234 <th>mips</th>
235 <ti>2004.2</ti>
236 <ti></ti>
237</tr>
238<tr>
239 <th>s390</th>
240 <ti>2004.3</ti>
241 <ti></ti>
242</tr>
243<tr>
244 <th>sparc</th>
245 <ti>2004.3</ti>
246 <ti>2004.0</ti>
247</tr>
248<tr>
201 <th>x86</th> 249 <th>x86</th>
202 <ti>2004.0</ti> 250 <ti>2004.3</ti>
203 <ti>1.4</ti>
204</tr>
205<tr>
206 <th>hardened-x86</th>
207 <ti>2004.0</ti> 251 <ti>2004.2, 2004.0</ti>
208 <ti></ti>
209</tr>
210<tr>
211 <th>amd64</th>
212 <ti>2004.0</ti>
213 <ti></ti>
214</tr>
215<tr>
216 <th>ppc</th>
217 <ti>2004.0</ti>
218 <ti>1.4</ti>
219</tr>
220<tr>
221 <th>sparc</th>
222 <ti>2004.0</ti>
223 <ti>1.4</ti>
224</tr>
225<tr>
226 <th>mips</th>
227 <ti>2004.0</ti>
228 <ti>1.4</ti>
229</tr>
230<tr>
231 <th>hppa</th>
232 <ti>2004.0</ti>
233 <ti></ti>
234</tr> 252</tr>
235</table> 253</table>
236 254
237</body> 255</body>
238</section> 256</section>
239</chapter> 257</chapter>
240 258
241<chapter> 259<chapter id="instructions">
242<title>Profile updating instructions</title> 260<title>Profile updating instructions</title>
243<section> 261<section>
244<title>Updating from 1.4 to 2004.0 (all archs)</title> 262<title>Updating to 2004.3</title>
245<body> 263<body>
246 264
247<p>
248There are no fundamental changes between 1.4 and 2004.0 profiles. Just point
249the <path>/etc/make.profile</path> link to the new location:
250</p> 265<p>
266With the introduction of the 2004.3 profiles, users are not going to see huge
267modifications of their systems (see below for details). However, Gentoo
268developers decided to push out this new profile and to deprecate quite a few of
269the old ones to speed up the adoption of <e>stacked profiles</e>, that is, the
270profiles that follow the new layout of the <path>/usr/portage/profiles</path>
271directory, for instance
272<path>/usr/portage/profiles/default-linux/x86/2004.3</path> (supported by
273Portage 2.0.51 or later).
274</p>
251 275
276<p>
277To switch to the 2004.3 profile, point the <path>/etc/make.profile</path>
278symlink to the new location:
279</p>
280
281<warn>
282Don't forget to upgrade Portage <e>before</e> you change your profile!!!
283</warn>
284
252<pre caption="Updating the /etc/make.profile link"> 285<pre caption="Updating the /etc/make.profile symlink">
286<comment>substitute &lt;arch&gt; with your arch</comment>
253# <i>rm /etc/make.profile</i> 287# <i>rm /etc/make.profile</i>
254# <i>ln -s ../usr/portage/profiles/default-x86-2004.0 /etc/make.profile</i> 288# <i>ln -s ../usr/portage/profiles/default-linux/&lt;arch&gt;/2004.3 /etc/make.profile</i>
255</pre> 289</pre>
290
291<p>
292<b>All archs</b> - As said above, there are no big changes introduced in this
293profile. However, it should be noted that <c>sys-apps/slocate</c> and
294<c>net-misc/dhcpcd</c> are no longer considered system packages. This means
295that if you run <c>emerge depclean</c>, Portage will try to remove them from
296your system. If you need any of those packages, add them to
297<path>/var/lib/portage/world</path> after the profile switch, or manually
298emerge them.
299</p>
300
301<p>
302<b>ppc</b> - <c>sys-fs/udev</c> is now the default instead of <c>sys-fs/devfs</c>
303for newly installed machines. This has no effect on already installed machines,
304though.
305</p>
306
307</body>
308</section>
309<section>
310<title>Updating to 2004.2</title>
311<body>
312
313<p>
314To switch to the 2004.2 profile, point the <path>/etc/make.profile</path> symlink
315to the new location:
316</p>
317
318<warn>
319Don't forget to upgrade Portage <e>before</e> you change your profile!!!
320</warn>
321
322<pre caption="Updating the /etc/make.profile symlink">
323<comment>substitute &lt;arch&gt; with your arch</comment>
324# <i>rm /etc/make.profile</i>
325# <i>ln -s ../usr/portage/profiles/default-linux/&lt;arch&gt;/2004.2 /etc/make.profile</i>
326</pre>
327
328<p>
329<b>x86</b> - This profile changes the default X11 implementation from
330<c>x11-base/xfree</c> to <c>x11-base/xorg-x11</c>. This change only touches
331the <e>default</e> value, and is only relevant for those who have not installed
332an X server yet. If you already have one installed, then it will not affect
333you at all; you are free to switch from one X server to the other exactly as
334before.
335</p>
336
337<p>
338<b>amd64</b> - There are no fundamental changes from previous profiles, no
339specific action needs to be performed.
340</p>
341
342</body>
343</section>
344<section>
345<title>Updating to 2004.0</title>
346<body>
347
348<p>
349To switch to the 2004.0 profile, point the <path>/etc/make.profile</path> symlink
350to the new location:
351</p>
352
353<pre caption="Updating the /etc/make.profile symlink">
354<comment>substitute &lt;arch&gt; with your arch</comment>
355# <i>rm /etc/make.profile</i>
356# <i>ln -s ../usr/portage/profiles/default-&lt;arch&gt;-2004.0 /etc/make.profile</i>
357</pre>
358
359<p>
360<b>All archs</b> - There are no fundamental changes from previous profiles, no
361specific action needs to be performed.
362</p>
256 363
257</body> 364</body>
258</section> 365</section>
259<section> 366<section>
260<title>Updating from profiles older than 1.4 to 1.4</title> 367<title>Updating from profiles older than 1.4 to 1.4</title>
268</body> 375</body>
269</section> 376</section>
270</chapter> 377</chapter>
271 378
272</guide> 379</guide>
273

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.16

  ViewVC Help
Powered by ViewVC 1.1.20