| … | |
… | |
| 2 | <!DOCTYPE sections SYSTEM "/dtd/book.dtd"> |
2 | <!DOCTYPE sections SYSTEM "/dtd/book.dtd"> |
| 3 | |
3 | |
| 4 | <!-- 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 --> |
| 5 | <!-- See http://creativecommons.org/licenses/by-sa/1.0 --> |
5 | <!-- See http://creativecommons.org/licenses/by-sa/1.0 --> |
| 6 | |
6 | |
| 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 $ --> |
7 | <!-- $Header: /var/cvsroot/gentoo/xml/htdocs/doc/en/handbook/hb-working-portage.xml,v 1.28 2004/07/26 11:41:23 swift Exp $ --> |
| 8 | |
8 | |
| 9 | <sections> |
9 | <sections> |
| 10 | <section> |
10 | <section> |
| 11 | <title>Obtaining Package Information</title> |
11 | <title>Obtaining Package Information</title> |
| 12 | <subsection> |
12 | <subsection> |
| … | |
… | |
| 118 | Manifest metadata.xml openoffice-1.1.0-r1.ebuild openoffice-1.1.0.ebuild |
118 | Manifest metadata.xml openoffice-1.1.0-r1.ebuild openoffice-1.1.0.ebuild |
| 119 | </pre> |
119 | </pre> |
| 120 | |
120 | |
| 121 | <p> |
121 | <p> |
| 122 | Remember that we told you that a Gentoo package is called an ebuild? Well, in |
122 | Remember that we told you that a Gentoo package is called an ebuild? Well, in |
| 123 | the example directory four of such ebuilds are stored. Their naming is |
123 | the example directory, four of such ebuilds are stored. Their naming is |
| 124 | almost identical: they only differ in the version name. |
124 | almost identical; they only differ in the version name. |
| 125 | You are free to view the contents of such a package: they are plain scripts. We |
125 | You are free to view the contents of such a package: they are plain scripts. We |
| 126 | will not discuss it right now as it isn't important to know if you plan on just |
126 | will not discuss it right now as it isn't important to know if you plan on just |
| 127 | using Gentoo. |
127 | using Gentoo. |
| 128 | </p> |
128 | </p> |
| 129 | |
129 | |
| … | |
… | |
| 135 | such as the responsible development group -- called <e>herd</e> -- and a more |
135 | such as the responsible development group -- called <e>herd</e> -- and a more |
| 136 | extensive description). |
136 | extensive description). |
| 137 | </p> |
137 | </p> |
| 138 | |
138 | |
| 139 | <p> |
139 | <p> |
| 140 | Inside the <path>files</path> directory you will find extra files, needed by |
140 | Inside the <path>files</path> directory, you will find extra files, needed by |
| 141 | Portage: digests (checksums and permissions of the files needed by a single |
141 | Portage: digests (checksums and permissions of the files needed by a single |
| 142 | version of the package), patches, example configuration files, etc. |
142 | version of the package), patches, example configuration files, etc. |
| 143 | </p> |
143 | </p> |
| 144 | |
144 | |
| 145 | <pre caption="Viewing the extra files"> |
145 | <pre caption="Viewing the extra files"> |
| … | |
… | |
| 153 | nptl.patch |
153 | nptl.patch |
| 154 | </pre> |
154 | </pre> |
| 155 | |
155 | |
| 156 | <p> |
156 | <p> |
| 157 | If you go back to the root of the Portage tree (<path>/usr/portage</path>) you |
157 | If you go back to the root of the Portage tree (<path>/usr/portage</path>) you |
| 158 | will notice that there are other, non-category directories too. We will discuss |
158 | will notice that there are other, non-category directories, too. We will discuss |
| 159 | those later in this chapter. |
159 | those later in this chapter. |
| 160 | </p> |
160 | </p> |
| 161 | |
161 | |
| 162 | </body> |
162 | </body> |
| 163 | </subsection> |
163 | </subsection> |
| … | |
… | |
| 236 | </p> |
236 | </p> |
| 237 | |
237 | |
| 238 | <!-- |
238 | <!-- |
| 239 | <note> |
239 | <note> |
| 240 | Searching the Portage Tree, especially when using <c>- -searchdesc</c>, is very |
240 | Searching the Portage Tree, especially when using <c>- -searchdesc</c>, is very |
| 241 | time consuming. There are other, more performant tools available. We will |
241 | time consuming. There are other, best performing tools available. We will |
| 242 | describe those in the chapter on <uri link="?part=2&chap=7">Gentoolkit and |
242 | describe those in the chapter on <uri link="?part=2&chap=7">Gentoolkit and |
| 243 | Other Tools</uri>. |
243 | Other Tools</uri>. |
| 244 | </note> |
244 | </note> |
| 245 | --> |
245 | --> |
| 246 | |
246 | |
| … | |
… | |
| 550 | <p> |
550 | <p> |
| 551 | For instance, if you want Portage to pretend that none of the dependencies of a |
551 | For instance, if you want Portage to pretend that none of the dependencies of a |
| 552 | package are installed, you can use <c>--emptytree</c> (<c>-e</c> in short). This |
552 | package are installed, you can use <c>--emptytree</c> (<c>-e</c> in short). This |
| 553 | is useful with <c>--pretend</c> to display a complete tree of dependencies for |
553 | is useful with <c>--pretend</c> to display a complete tree of dependencies for |
| 554 | any particular package. Without <c>--pretend</c>, <c>emerge</c> will (re)compile |
554 | any particular package. Without <c>--pretend</c>, <c>emerge</c> will (re)compile |
| 555 | all listed packages. However, <c>glibc</c> will <e>not</e> be listed as |
555 | all listed packages. |
| 556 | dependency for safety reasons. |
|
|
| 557 | </p> |
556 | </p> |
| 558 | |
557 | |
| 559 | <pre caption="Show all dependencies of gnumeric"> |
558 | <pre caption="Show all dependencies of gnumeric"> |
| 560 | # <i>emerge --emptytree --pretend gnumeric</i> |
559 | # <i>emerge --emptytree --pretend gnumeric</i> |
| 561 | </pre> |
560 | </pre> |
| … | |
… | |
| 675 | <c>--upgradeonly</c> option (<c>-U</c> in short): |
674 | <c>--upgradeonly</c> option (<c>-U</c> in short): |
| 676 | </p> |
675 | </p> |
| 677 | |
676 | |
| 678 | <pre caption="Upgrading your entire system"> |
677 | <pre caption="Upgrading your entire system"> |
| 679 | # <i>emerge --update --upgradeonly world</i> |
678 | # <i>emerge --update --upgradeonly world</i> |
|
|
679 | </pre> |
|
|
680 | |
|
|
681 | <p> |
|
|
682 | We have mentioned that the <e>world</e> file doesn't contain dependencies. When |
|
|
683 | you run <c>emerge --update world</c> only the packages mentioned in the |
|
|
684 | <e>world</e> file and it's immediate dependencies are checked and, if necessary, |
|
|
685 | upgraded. If you want <c>emerge</c> to check <e>all</e> the dependencies |
|
|
686 | (including the dependencies of the dependencies), add the <c>--deep</c> flag: |
|
|
687 | </p> |
|
|
688 | |
|
|
689 | <pre caption="Upgrading your entire system, including all dependencies"> |
|
|
690 | # <i>emerge --update --deep world</i> |
| 680 | </pre> |
691 | </pre> |
| 681 | |
692 | |
| 682 | <p> |
693 | <p> |
| 683 | Of course, we are talking here about <e>system</e> and <e>world</e>, but you can |
694 | Of course, we are talking here about <e>system</e> and <e>world</e>, but you can |
| 684 | perform the same actions for individual software packages. |
695 | perform the same actions for individual software packages. |
| … | |
… | |
| 804 | <li>The package is in <e>~ARCH</e> while you use <e>ARCH</e></li> |
815 | <li>The package is in <e>~ARCH</e> while you use <e>ARCH</e></li> |
| 805 | <li>The package is hard-masked explicitly</li> |
816 | <li>The package is hard-masked explicitly</li> |
| 806 | </ol> |
817 | </ol> |
| 807 | |
818 | |
| 808 | <p> |
819 | <p> |
| 809 | If the package is masked because of the first reason, and you <e>really</e> want |
820 | If the package is masked because of the first reason, and you <e>really</e> |
| 810 | to install it (knowing that there <e>is</e> a reason why it isn't available in |
821 | want to install it (knowing that there <e>is</e> a reason why it isn't |
| 811 | <e>ARCH</e>), you can temporarily accept <e>~ARCH</e> packages: |
822 | available in <e>ARCH</e>), you can accept the <e>~ARCH</e> version of any |
|
|
823 | package by adding it to your <path>/etc/portage/package.keywords</path> file: |
| 812 | </p> |
824 | </p> |
| 813 | |
825 | |
| 814 | <pre caption="Temporarily accepting ~ARCH packages"> |
826 | <pre caption="Accepting the ~ARCH version of a package"> |
| 815 | # <i>ACCEPT_KEYWORDS="~x86" emerge gnumeric</i> |
827 | # <i>echo "app-office/gnumeric ~x86" >> /etc/portage/package.keywords</i> |
|
|
828 | # <i>emerge gnumeric</i> |
| 816 | </pre> |
829 | </pre> |
| 817 | |
830 | |
| 818 | <p> |
831 | <p> |
| 819 | A package is hardmasked if it is listed in |
832 | A package is hardmasked if it is listed in |
| 820 | <path>/usr/portage/profiles/package.mask</path>. If you read this file, you |
833 | <path>/usr/portage/profiles/package.mask</path>. If you read this file, you |