Move primary cache code to libminixfs.
[minix.git] / man / man1 / pkg_view.1
blob376dd79a152c9b86d21115432338e5e14cc7be91
1 .\"     $NetBSD: pkg_view.1,v 1.13 2010/01/22 13:30:42 joerg Exp $
2 .\"
3 .\" Copyright (c) 2003 The NetBSD Foundation, Inc.
4 .\" All rights reserved.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\"    notice, this list of conditions and the following disclaimer in the
13 .\"    documentation and/or other materials provided with the distribution.
14 .\" 3. All advertising materials mentioning features or use of this software
15 .\"    must display the following acknowledgement:
16 .\"        This product includes software developed by the NetBSD
17 .\"        Foundation, Inc. and its contributors.
18 .\" 4. Neither the name of The NetBSD Foundation nor the names of its
19 .\"    contributors may be used to endorse or promote products derived
20 .\"    from this software without specific prior written permission.
21 .\"
22 .\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
23 .\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
24 .\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
25 .\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
26 .\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27 .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28 .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29 .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
30 .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
31 .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
32 .\" POSSIBILITY OF SUCH DAMAGE.
33 .\"
34 .Dd September 8, 2003
35 .Dt PKG_VIEW 1
36 .Os
37 .Sh NAME
38 .Nm pkg_view
39 .Nd add and delete instances of depoted packages in views
40 .Sh SYNOPSIS
41 .Nm
42 .Op Fl nVv
43 .Op Fl d Ar stowdir
44 .Op Fl i Ar ignore
45 .Op Fl k Ar pkg_dbdir
46 .Op Fl W Ar viewbase
47 .Op Fl w Ar view
48 .Ar command
49 .Ar package ...
50 .Sh DESCRIPTION
51 The
52 .Nm
53 command is used to add and delete instances of depoted packages in
54 .Ar stowdir
55 in a
56 .Ar view
57 in the
58 .Ar viewbase
59 directory.
60 .Sh WARNING
61 .Bf -emphasis
62 Since the
63 .Nm
64 command may execute scripts or programs provided by a package file,
65 your system may be susceptible to
66 .Dq Trojan horses
67 or other subtle
68 attacks from miscreants who create dangerous package files.
69 .Pp
70 You are advised to verify the competence and identity of those who
71 provide installable package files.
72 For extra protection, examine all the package control files in the
73 package database directory
74 .Pa ( /usr/pkg/packages/\*[Lt]pkg-name\*[Gt]/ ) .
75 Pay particular attention to any
76 .Pa +INSTALL
78 .Pa +DEINSTALL
79 files, and inspect the
80 .Pa +CONTENTS
81 file for
82 .Cm @cwd ,
83 .Cm @mode
84 (check for setuid),
85 .Cm @dirrm ,
86 .Cm @exec ,
87 and
88 .Cm @unexec
89 directives, and/or use the
90 .Xr pkg_info 1
91 command to examine the installed package control files.
92 .Ef
93 .Sh OPTIONS
94 The following command-line options are supported:
95 .Bl -tag -width indent
96 .It Fl d Ar stowdir
97 Set
98 .Ar stowdir
99 as the directory in which the depoted packages can be found.
100 If this option isn't specified, then the
101 .Ar stowdir
102 is taken from the value of the environment variable
103 .Ev DEPOTBASE
104 if it's set, otherwise the default
105 .Ar stowdir
106 is the path to the
107 .Pa packages
108 directory under
109 .Ar viewbase .
110 .It Fl i Ar ignore
112 .Ar ignore
113 to the list of files in
114 .Ar package
115 that should ignored when adding or removing the package instance from
116 .Ar view .
117 .It Fl k Ar pkg_dbdir
118 Override the value of the
119 .Dv PKG_DBDIR
120 configuration option with the value
121 .Ar pkg_dbdir .
122 This is used as as the package database directory for the
123 default (empty) view.
124 .It Fl n
125 Don't actually execute the commands for manipulating the package instances.
126 .It Fl V
127 Print the version number and exit.
128 .It Fl v
129 Turn on verbose output.
130 Specifying
131 .Fl v
132 multiple times increases the level of verbosity.
133 .It Fl W Ar viewbase
135 .Ar viewbase
136 as the directory in which all the views are managed.
137 The default
138 .Ar viewbase
139 directory is
140 .Pa /usr/pkg
141 but may be overridden by the
142 .Ev LOCALBASE
143 environment variable.
144 .It Fl w Ar view
146 .Ar view
147 as the directory in
148 .Ar viewbase
149 in which the package instances should be added or deleted.
150 The default
151 .Ar view
152 is the empty view but may be overridden by the
153 .Ev PKG_VIEW
154 environment variable.
157 The following commands are supported:
158 .Bl -tag -width indent
159 .It Cm add
160 Add the listed package instances into
161 .Ar view .
162 .It Cm check
163 Check whether the listed package instances are present in
164 .Ar view .
165 If they are not present, then return 0, otherwise return 1.
166 .It Cm delete
167 Delete the listed package instances from
168 .Ar view .
170 .Sh ENVIRONMENT
171 .Bl -tag -width indent
172 .It Ev DEPOTBASE
173 This is the location of the
174 .Ar stowdir
175 directory inside which all depoted packages are kept.
176 The default
177 .Ar stowdir
178 is the
179 .Pa packages
180 directory under
181 .Ar viewbase .
182 .It Ev LOCALBASE
183 This is the location of the
184 .Ar viewbase
185 directory in which all the views are managed.
186 The default
187 .Ar viewbase
188 directory is
189 .Pa /usr/pkg .
190 .It Ev PKG_DBDIR
191 If the
192 .Fl k
193 flag isn't given, then the value of the environment variable
194 .Ev PKG_DBDIR
195 is the package database directory for the default view,
196 otherwise it defaults to
197 .Pa /var/db/pkg .
198 .It Ev PLIST_IGNORE_FILES
199 This can be used to specify files in
200 .Ar package
201 that should ignored when adding or removing the package instance from
202 .Ar view .
203 .Ev PLIST_IGNORE_FILES
204 is a space-separated list of shell glob patterns that match files relative
205 to the
206 .Ar package
207 depot directory, and it defaults to "info/dir *[~#] *.OLD *.orig *,v".
208 This is overridden by any
209 .Ev _PLIST_IGNORE_FILES
210 setting in a package's
211 .Ar build-info-file
212 (see
213 .Xr pkg_create 1 )
214 if it exists.
215 .It Ev PKG_VIEW
216 The default view can be specified in the
217 .Ev PKG_VIEW
218 environment variable.
220 .Sh FILES
221 .Bl -tag -width indent
222 .It Pa \*[Lt]pkg-dbdir\*[Gt]/\*[Lt]package\*[Gt]/+INSTALL
223 If the package contains an
224 .Ar install
225 script (see
226 .Xr pkg_create 1 ) ,
227 then after the package instance is added into a view, the script is
228 executed with the following arguments:
229 .Bl -tag -width package
230 .It Ar package
231 The name of the package instance being added.
232 .It Cm VIEW-INSTALL
233 Keyword denoting that the script is to perform any actions needed after
234 the package instance is added to a view.
237 If the
238 .Ar install
239 script exits with a non-zero status code, the installation is terminated.
240 .It Pa \*[Lt]pkg-dbdir\*[Gt]/\*[Lt]package\*[Gt]/+DEINSTALL
241 If the package contains an
242 .Ar deinstall
243 script (see
244 .Xr pkg_create 1 ) ,
245 then before the package instance is deleted from a view, the script is
246 executed with the following arguments:
247 .Bl -tag -width package
248 .It Ar package
249 The name of the package instance being deleted.
250 .It Cm VIEW-DEINSTALL
251 Keyword denoting that the script is to perform any actions needed before
252 the package instance is deleted from a view.
255 If the
256 .Ar deinstall
257 script exits with a non-zero status code, the de-installation is terminated.
261 .Ar install
263 .Ar deinstall
264 scripts are called with the environment variable
265 .Ev PKG_PREFIX
266 set to the path to the
267 .Ar view
268 directory.
269 .Sh SEE ALSO
270 .Xr linkfarm 1 ,
271 .Xr pkg_delete 1
272 .Sh AUTHORS
275 utility was written by
276 .An Alistair G. Crooks Aq agc@NetBSD.org .