aboutsummaryrefslogtreecommitdiff
path: root/doc/configuration/packagemask.html.part.in
blob: 1b3e05e064e817b851a1eef0bb0223e8ab0eef91 (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
<!-- vim: set tw=120 ft=html sw=4 sts=4 et : -->

<h1>package_mask.conf and package_unmask.conf</h1>

###PALUDISENVIRONMENTONLY###

<p>The <code>package_mask.conf</code> file allows a package to be explicitly masked. The
<code>package_unmask.conf</code> file allows repository and profile masked packages to be unmasked. Both are standard
configuration files which may be bash files (<code>package_mask.bash</code> etc) and which may use a
<code>.conf.d/</code> directory.</p>

<p>Each line in the file consists of a specification.</p>

<p>The specifications in <code>package_unmask.conf</code> override the
specifications in <code>package_mask.conf</code>. If a package version is
matched by entries in both files, it is unmasked.</p>

<p>Exheres layout repositories allow masks to be categories by a token such as "security" or "scm". To unmask a package,
but only if its token is of a particular kind, follow the specification by one or more whitespace separated token names.
If token names are specified this way, an unmask is only taken if at least one of the tokens matches the mask.</p>

<h2>Example</h2>

<p>An example <code>package_mask.conf</code>:</p>

<pre>
# Mask gcc 4.2 for now
sys-devel/gcc:4.2

# Mask all versions of Portage
sys-apps/portage
</pre>

<p>And an example <code>package_unmask.conf</code>:</p>

<pre>
# Ignore repository and profile masks for things in the toolchain overlay
*/*::toolchain

# (Exheres layout repositories only) ignore security masks for PHP
dev-lang/php security
</pre>