/[gentoo]/xml/htdocs/doc/en/handbook/hb-working-portage.xml
Gentoo

Diff of /xml/htdocs/doc/en/handbook/hb-working-portage.xml

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

Revision 1.13 Revision 1.22
1<?xml version='1.0' encoding='UTF-8'?>
2<!DOCTYPE sections SYSTEM "/dtd/book.dtd">
3
1<!-- The content of this document is licensed under the CC-BY-SA license --> 4<!-- The content of this document is licensed under the CC-BY-SA license -->
2<!-- See http://creativecommons.org/licenses/by-sa/1.0 --> 5<!-- See http://creativecommons.org/licenses/by-sa/1.0 -->
3 6
4<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-working-portage.xml,v 1.13 2003/12/04 22:26:19 swift Exp $ --> 7<!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-working-portage.xml,v 1.22 2004/02/03 20:25:45 swift Exp $ -->
5 8
6<sections> 9<sections>
7<section> 10<section>
8<title>Obtaining Package Information</title> 11<title>Obtaining Package Information</title>
9<subsection> 12<subsection>
125</p> 128</p>
126 129
127<p> 130<p>
128The other files are the <path>ChangeLog</path> (which contains a listing of all 131The other files are the <path>ChangeLog</path> (which contains a listing of all
129the changes done to the ebuilds), <path>Manifest</path> (which contains the 132the changes done to the ebuilds), <path>Manifest</path> (which contains the
130checksums and permissions of all the files in the directory) and 133checksums and filesizes of all the files in the directory) and
131<path>metadata.xml</path> (which contains more information about the package, 134<path>metadata.xml</path> (which contains more information about the package,
132such as the responsible development group -- called <e>herd</e> -- and a more 135such as the responsible development group -- called <e>herd</e> -- and a more
133extensive description). 136extensive description).
134</p> 137</p>
135 138
224 227
225<p> 228<p>
226You see something new? Yes, <e>downloaded files</e>. When you tell Portage to 229You see something new? Yes, <e>downloaded files</e>. When you tell Portage to
227install a package, it of course needs to have the necessary sources (or 230install a package, it of course needs to have the necessary sources (or
228precompiled packages) available. It therefore checks the contents of 231precompiled packages) available. It therefore checks the contents of
229<path>/usr/portage/distfiles</path> (for sourcecode) or 232<path>/usr/portage/distfiles</path> (for source code) or
230<path>/usr/portage/packages/All</path> (for precompiled packages) to see if the 233<path>/usr/portage/packages/All</path> (for precompiled packages) to see if the
231necessary files are already available. If not, it downloads the necessary files 234necessary files are already available. If not, it downloads the necessary files
232and places them in those directories. 235and places them in those directories.
233</p> 236</p>
234 237
238<!--
235<note> 239<note>
236Searching the Portage Tree, especially when using <c>--searchdesc</c>, is very 240Searching the Portage Tree, especially when using <c>- -searchdesc</c>, is very
237time consuming. There are other, more performant tools available. We will 241time consuming. There are other, more performant tools available. We will
238describe those in the chapter on <uri link="?part=2&amp;chap=7">Gentoolkit and 242describe those in the chapter on <uri link="?part=2&amp;chap=7">Gentoolkit and
239Other Tools</uri>. 243Other Tools</uri>.
240</note> 244</note>
245-->
241 246
242</body> 247</body>
243</subsection> 248</subsection>
244<subsection> 249<subsection>
245<title>Viewing the ChangeLog</title> 250<title>Viewing the ChangeLog</title>
246<body> 251<body>
247 252
248<p> 253<p>
249While browsing through the Portage Tree, you saw that there was a ChangeLog for 254While browsing through the Portage Tree, you saw that there was a ChangeLog for
250each package. You can view this ChangeLog with <c>emerge</c> too. Use the 255each package. You can view the ChangeLog entries between the available version
256and the installed version with <c>emerge</c> too. Use the
251<c>--pretend --changelog</c> (<c>-pl</c> in short) options. As an example we 257<c>--pretend --changelog</c> (<c>-pl</c> in short) options. As an example we
252will view the ChangeLog entries for <c>gnumeric</c>: 258will view the ChangeLog entries for <c>gnumeric</c>:
253</p> 259</p>
254 260
255<pre caption="Viewing the ChangeLog entries for gnumeric"> 261<pre caption="Viewing the ChangeLog entries for gnumeric">
256# <i>emerge --pretend --changelog gnumeric</i> 262# <i>emerge --pretend --changelog gnumeric</i>
263<comment>(Some output removed to improve readability)</comment>
264*gnumeric-1.2.2
265
266 27 Nov 2003; foser &lt;foser@gentoo.org&gt; gnumeric-1.2.2.ebuild :
267 New release, requested in #34492
268 updated deps
269
270 12 Nov 2003; Jason Wever &lt;weeve@gentoo.org&gt; gnumeric-1.2.0.ebuild:
271 Marked stable on sparc, fixes bug #32405.
272
273 14 Oct 2003; Jason Wever &lt;weeve@gentoo.org&gt; gnumeric-1.0.8.ebuild:
274 Added ~sparc keyword. Fixes bug #31150.
257</pre> 275</pre>
258 276
259</body> 277</body>
260</subsection> 278</subsection>
261</section> 279</section>
298# <i>emerge --usepkg mirrorselect</i> 316# <i>emerge --usepkg mirrorselect</i>
299</pre> 317</pre>
300 318
301<p> 319<p>
302Now run <c>mirrorselect</c> to automatically select mirrors for you (it will 320Now run <c>mirrorselect</c> to automatically select mirrors for you (it will
303also setup Portage to use a mirror for the sourcecode): 321also setup Portage to use a mirror for the source code):
304</p> 322</p>
305 323
306<pre caption="Running mirrorselect"> 324<pre caption="Running mirrorselect">
307# <i>mirrorselect -a -s3</i> 325# <i>mirrorselect -a -s3</i>
308</pre> 326</pre>
341<title>Building or Prebuilt?</title> 359<title>Building or Prebuilt?</title>
342<body> 360<body>
343 361
344<p> 362<p>
345Gentoo provides ebuilds, the Gentoo packages if you like. But when you want to 363Gentoo provides ebuilds, the Gentoo packages if you like. But when you want to
346install such an ebuild, you can choose between <e>building</e> the package, or 364install such an ebuild, you can choose between <e>building</e> the package and
347using a <e>prebuilt</e> package. But what are the advantages/disadvantages of 365using a <e>prebuilt</e> package. But what are the advantages/disadvantages of
348both approaches, and can they be used next to each other? 366both approaches, and can they be used next to each other?
349</p> 367</p>
350 368
351<p> 369<p>
364<c>CFLAGS</c> &amp; <c>CXXFLAGS</c> variables. 382<c>CFLAGS</c> &amp; <c>CXXFLAGS</c> variables.
365</p> 383</p>
366 384
367<p> 385<p>
368As previously stated, prebuilt packages are stored in the 386As previously stated, prebuilt packages are stored in the
369<path>/usr/portage/packages/All</path> directory, while the sourcecode of the 387<path>/usr/portage/packages/All</path> directory, while the source code of the
370packages are placed in <path>/usr/portage/distfiles</path>. If you have finished 388packages is placed in <path>/usr/portage/distfiles</path>. If you have finished
371installing a package you can remove the package or sourcecode from the 389installing a package you can remove the package or source code from the
372respective directory. However, you might want to keep the package/sourcecode of 390respective directory. However, you might want to keep the package/source code of
373the latest version, just in case you want to reinstall the package (so you don't 391the latest version, just in case you want to reinstall the package (so you don't
374have to redownload it). 392have to redownload it).
375</p> 393</p>
376 394
377</body> 395</body>
391<pre caption="Building gnumeric"> 409<pre caption="Building gnumeric">
392# <i>emerge gnumeric</i> 410# <i>emerge gnumeric</i>
393</pre> 411</pre>
394 412
395<p> 413<p>
396This will download the sourcecode for you and unpacks, compiles and installs the 414This will download the source code for you and unpacks, compiles and installs
397package on your system. It will also do the same for all the dependencies. If 415the package on your system. It will also do the same for all the dependencies.
398you want to see what dependencies will be installed with it, use the 416If you want to see what dependencies will be installed with it, use the
399<c>--pretend</c> option (<c>-p</c> in short): 417<c>--pretend</c> option (<c>-p</c> in short):
400</p> 418</p>
401 419
402<pre caption="Pretending to build gnumeric"> 420<pre caption="Pretending to build gnumeric">
403# <i>emerge --pretend gnumeric</i> 421# <i>emerge --pretend gnumeric</i>
404</pre> 422</pre>
405 423
406<p> 424<p>
407If you want to download the sourcecode of the package and its dependencies, 425If you want to download the source code of the package and its dependencies,
408but don't want to build the package, use the <c>--fetchonly</c> option 426but don't want to build the package, use the <c>--fetchonly</c> option
409(<c>-f</c> in short): 427(<c>-f</c> in short):
410</p> 428</p>
411 429
412<pre caption="Fetching sources for gnumeric"> 430<pre caption="Fetching sources for gnumeric">
551<pre caption="Installing gnumeric without taking care of the dependencies"> 569<pre caption="Installing gnumeric without taking care of the dependencies">
552# <i>emerge --nodeps gnumeric</i> 570# <i>emerge --nodeps gnumeric</i>
553</pre> 571</pre>
554 572
555<p> 573<p>
556To opposite of <c>--nodeps</c> is <c>--onlydeps</c>, which will have Portage 574The opposite of <c>--nodeps</c> is <c>--onlydeps</c>, which will have Portage
557install all dependencies of a given package, but not the package itself: 575install all dependencies of a given package, but not the package itself:
558</p> 576</p>
559 577
560<pre caption="Installing the dependencies of gnumeric"> 578<pre caption="Installing the dependencies of gnumeric">
561# <i>emerge --onlydeps gnumeric</i> 579# <i>emerge --onlydeps gnumeric</i>
630 </li> 648 </li>
631 <li> 649 <li>
632 <e>R</e> (reemerge) The package isn't new, but needs to be reemerged 650 <e>R</e> (reemerge) The package isn't new, but needs to be reemerged
633 </li> 651 </li>
634 <li> 652 <li>
635 <e>F</e> (fetch) The package requires that you download the sourcecode 653 <e>F</e> (fetch) The package requires that you download the source code
636 manually (for instance due to licencing issues) 654 manually (for instance due to licencing issues)
637 </li> 655 </li>
638 <li> 656 <li>
639 <e>U</e> (update) The package already exists on your system but will be 657 <e>U</e> (update) The package already exists on your system but will be
640 upgraded 658 upgraded
713 </li> 731 </li>
714 <li> 732 <li>
715 <c>!empty</c> : The listed directory is not empty 733 <c>!empty</c> : The listed directory is not empty
716 </li> 734 </li>
717 <li> 735 <li>
718 <c>cfgpro</c> : Another already installed package claims to own this file 736 <c>cfgpro</c> : This file is located inside a protected directory and will
737 not be touched for safety
719 </li> 738 </li>
720</ul> 739</ul>
721 740
722</body> 741</body>
723</subsection> 742</subsection>
742to <e>ARCH</e> after being bugfree for a sufficient amount of time. 761to <e>ARCH</e> after being bugfree for a sufficient amount of time.
743</p> 762</p>
744 763
745<p> 764<p>
746Your system will use <e>ARCH</e> packages per default. If you want to live on 765Your system will use <e>ARCH</e> packages per default. If you want to live on
747the edge, don't mind having a broken package once in a while, and you like 766the edge, don't mind having a broken package once in a while, know how to deal
748submitting bugreports to <uri 767with a broken system and you like submitting bugreports to <uri
749link="http://bugs.gentoo.org">bugs.gentoo.org</uri>, then you can opt to use 768link="http://bugs.gentoo.org">bugs.gentoo.org</uri>, then you can opt to use
750<e>~ARCH</e> packages. To "move" your system to a <e>~ARCH</e>-using system, 769<e>~ARCH</e> packages. To "move" your system to a <e>~ARCH</e>-using system,
751edit the <c>ACCEPT_KEYWORDS</c> variable in <path>/etc/make.conf</path> so that 770edit the <c>ACCEPT_KEYWORDS</c> variable in <path>/etc/make.conf</path> so that
752it reads <e>~ARCH</e> (again: for x86-based systems: <e>~x86</e>, etc.). 771it reads <e>~ARCH</e> (again: for x86-based systems: <e>~x86</e>, etc.).
772</p>
773
774<p>
775Note though that it is far from trivial (if even impossible) to go back to
776<e>ARCH</e> from <e>~ARCH</e>.
753</p> 777</p>
754 778
755<p> 779<p>
756If you want to update your system now, you will notice that <e>a lot</e> of 780If you want to update your system now, you will notice that <e>a lot</e> of
757packages will be updated! 781packages will be updated!
802the same format as is used in <path>/usr/portage/profiles/package.mask</path>). 826the same format as is used in <path>/usr/portage/profiles/package.mask</path>).
803</p> 827</p>
804 828
805<p> 829<p>
806Do <e>not</e> alter the <path>/usr/portage/profiles/package.mask</path> file as 830Do <e>not</e> alter the <path>/usr/portage/profiles/package.mask</path> file as
807all changes are undone the next time you update your Portage tree. 831all changes are undone the next time you update your Portage tree. If you want
832to hardmask a package create <path>/etc/portage/package.mask</path> and list the
833package in it (use the same format as mentioned above).
808</p> 834</p>
809 835
836<!--
810<p> 837<p>
811Another trick to circumvent the "masked package" problem is to install the 838Another trick to circumvent the "masked package" problem is to install the
812package using the full path. This will ignore both the <c>ACCEPT_KEYWORD</c> 839package using the full path. This will ignore both the <c>ACCEPT_KEYWORD</c>
813settings and the <path>package.mask</path> listing. 840settings and the <path>package.mask</path> listing.
814</p> 841</p>
815 842
816<pre caption="Installing a package without checking for stadium / masking"> 843<pre caption="Installing a package without checking for stadium / masking">
817# <i>emerge /usr/portage/app-office/gnumeric/gnumeric-1.2.0.ebuild</i> 844# <i>emerge /usr/portage/app-office/gnumeric/gnumeric-1.2.0.ebuild</i>
818</pre> 845</pre>
846-->
819 847
820</body> 848</body>
821</subsection> 849</subsection>
822<subsection> 850<subsection>
823<title>Blocked Packages</title> 851<title>Blocked Packages</title>

Legend:
Removed from v.1.13  
changed lines
  Added in v.1.22

  ViewVC Help
Powered by ViewVC 1.1.20