aboutsummaryrefslogtreecommitdiff
blob: 292c4478337fbb9fa5c0300083d4e2a9d72c60f8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<?xml version="1.0" encoding="UTF-8"?>
<guide self="ebuild-writing/functions/pkg_nofetch/">
<chapter>
<title>pkg_nofetch</title>

<body>
<table>
  <tr>
    <th>Function</th>
    <ti><c>pkg_nofetch</c></ti>
  </tr>
  <tr>
    <th>Purpose</th>
    <ti>Tell the user how to deal with fetch-restricted packages</ti>
  </tr>
  <tr>
    <th>Sandbox</th>
    <ti>Enabled</ti>
  </tr>
  <tr>
    <th>Privilege</th>
    <ti>root</ti>
  </tr>
  <tr>
    <th>Called for</th>
    <ti>ebuild</ti>
  </tr>
</table>
</body>

<section>
<title>Default <c>pkg_nofetch</c></title>
<body>
<codesample lang="ebuild">
pkg_nofetch() {
	[[ -z ${A} ]] &amp;&amp; return

	elog "The following files cannot be fetched for ${PN}:"
	local x
	for x in ${A}; do
		elog "   ${x}"
	done
}
</codesample>
</body>
</section>

<section>
<title>Sample <c>pkg_nofetch</c></title>
<body>
<codesample lang="ebuild">
pkg_nofetch() {
	einfo "Please download"
	einfo "  - ${P}-main.tar.bz2"
	einfo "  - ${P}-extras.tar.bz2"
	einfo "from ${HOMEPAGE} and place them in your DISTDIR directory."
}
</codesample>
<note>
The <c>DISTDIR</c> variable is not valid in <c>pkg_*</c> phases, so it must not
be referenced.
</note>
</body>
</section>

<section>
<title>Notes on <c>pkg_nofetch</c></title>
<body>
<p>
This function is only triggered for packages which have <c>RESTRICT="fetch"</c>
(see <uri link="::general-concepts/mirrors/#Restricting automatic mirroring"/>)
set, and only if one or more components listed in <c>SRC_URI</c> are not
already available in the <c>distfiles</c> directory.
</p>
</body>
</section>

</chapter>
</guide>