etc/protocols - sync with NetBSD-8
[minix.git] / external / bsd / pkg_install / dist / info / pkg_info.1
blob786b0608cfa5ae8674f6aafd9e16f08cf24438d3
1 .\" $NetBSD: pkg_info.1,v 1.2 2015/04/28 09:48:30 prlw1 Exp $
2 .\"
3 .\" FreeBSD install - a package for the installation and maintenance
4 .\" of non-core utilities.
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 .\"
15 .\" Jordan K. Hubbard
16 .\"
17 .\"
18 .\"     @(#)pkg_info.1
19 .\"
20 .Dd December 14, 2012
21 .Dt PKG_INFO 1
22 .Os
23 .Sh NAME
24 .Nm pkg_info
25 .Nd a utility for displaying information on software packages
26 .Sh SYNOPSIS
27 .Nm
28 .Op Fl BbcDdFfhIikLmNnpqRrSsVvX
29 .Op Fl E Ar pkg-name
30 .Op Fl e Ar pkg-name
31 .Op Fl K Ar pkg_dbdir
32 .Op Fl l Ar prefix
33 .Ar pkg-name ...
34 .Nm
35 .Op Fl a | Fl u
36 .Op flags
37 .Nm
38 .Op Fl Q Ar variable
39 .Ar pkg-name ...
40 .Sh DESCRIPTION
41 The
42 .Nm
43 command is used to dump out information for packages, which may be either
44 packed up in files or already installed on the system with the
45 .Xr pkg_create 1
46 command.
47 .Pp
48 The
49 .Ar pkg-name
50 may be the name of an installed package (with or without version), a
51 pattern matching several installed packages (see the
52 .Sx PACKAGE WILDCARDS
53 section for a description of possible patterns),
54 the pathname to a
55 binary package, a filename belonging to an installed
56 package (with
57 .Fl F ) ,
58 or a URL to an FTP-available package.
59 .Pp
60 The following command line options are available:
61 .Bl -tag -width indent
62 .It Fl a
63 Show information for all currently installed packages.
64 See also
65 .Fl u .
66 When neither
67 .Fl a
68 nor
69 .Fl u
70 is given, the former is assumed.
71 .It Fl B
72 Show some of the important definitions used when building
73 the binary package (the
74 .Dq Build information )
75 for each package.
76 Additionally, any installation information variables
77 (lowercase) can be queried, too.
78 In particular,
79 .Ar automatic
80 tells if a package was installed automatically
81 as a dependency of another package.
82 .It Fl b
83 Show the
84 .Nx
85 RCS Id strings from the files used in the construction
86 of the binary package (the
87 .Dq Build version )
88 for each package.
89 These files are the package Makefile, any patch files, any checksum
90 files, and the packing list file.
91 .It Fl c
92 Show the one-line comment field for each package.
93 .It Fl D
94 Show the install-message file (if any) for each package.
95 .It Fl d
96 Show the long-description field for each package.
97 .It Fl E Ar pkg-name
98 This option
99 allows you to test for the existence of a given package.
100 If a package identified by
101 .Ar pkg-name
102 is currently installed, return code is 0, otherwise 1.
103 The name of the best matching package found installed is printed to
104 stdout unless turned off using the
105 .Fl q
106 option.
107 .Ar pkg-name
108 can contain wildcards (see the
109 .Sx PACKAGE WILDCARDS
110 section below).
111 .It Fl e Ar pkg-name
112 This option
113 allows you to test for the existence of a given package.
114 If a package identified by
115 .Ar pkg-name
116 is currently installed, return code is 0, otherwise 1.
117 The names of any package(s) found installed are printed to
118 stdout unless turned off using the
119 .Fl q
120 option.
121 .Ar pkg-name
122 can contain wildcards (see the
123 .Sx PACKAGE WILDCARDS
124 section below).
125 .It Fl F
126 Interpret any
127 .Ar pkg-name
128 given as filename, and query information on the package that
129 file belongs to.
130 This can be used to query information on a per-file basis.
131 See the
132 .Sx TECHNICAL DETAILS
133 section below for more information.
134 .It Fl f
135 Show the packing list instructions for each package.
136 .It Fl h
137 Print usage message and exit.
138 .It Fl I
139 Show the index entry for each package.
140 This option is assumed when no arguments or relevant flags are specified.
141 .It Fl i
142 Show the install script (if any) for each package.
143 .It Fl K Ar pkg_dbdir
144 Override the value of the
145 .Dv PKG_DBDIR
146 configuration option with the value
147 .Ar pkg_dbdir .
148 .It Fl k
149 Show the de-install script (if any) for each package.
150 .It Fl L
151 Show the files within each package.
152 This is different from just viewing the packing list, since full pathnames
153 for everything are generated.
154 Files that were created dynamically during installation of the package
155 are not listed.
156 .It Fl l Ar prefix
157 Prefix each information category header (see
158 .Fl q )
159 shown with
160 .Ar prefix .
161 This is primarily of use to front-end programs that want to request a
162 lot of different information fields at once for a package, but don't
163 necessary want the output intermingled in such a way that they can't
164 organize it.
165 This lets you add a special token to the start of each field.
166 .It Fl m
167 Show the mtree file (if any) for each package.
168 .It Fl N
169 Show which packages each package was built with (exact dependencies), if any.
170 .It Fl n
171 Show which packages each package needs (depends upon), if any.
172 .It Fl p
173 Show the installation prefix for each package.
174 .It Fl Q Ar variable
175 Show the definition of
176 .Ar variable
177 from the build information for each package.
178 An empty string is returned if no such variable definition is found for
179 the package(s).
180 .It Fl q
182 .Dq quiet
183 in emitting report headers and such, just dump the
184 raw info (basically, assume a non-human reading).
185 .It Fl R
186 For each package, show the packages that require it.
187 .It Fl r
188 For each package, show the packages that require it.
189 Continue recursively to show all dependents.
190 .It Fl S
191 Show the size of this package and all the packages it requires,
192 in bytes.
193 .It Fl s
194 Show the size of this package in bytes.
195 The size is calculated by adding up the size of each file of the package.
196 .It Fl u
197 Show information for all user-installed packages:
198 automatically installed packages (as dependencies
199 of other packages) are not displayed.
200 See also
201 .Fl a .
202 .It Fl V
203 Print version number and exit.
204 .It Fl v
205 Turn on verbose output.
206 .It Fl X
207 Print summary information for each package.
208 The summary format is
209 described in
210 .Xr pkg_summary 5 .
211 Its primary use is to contain all information about the contents of a
212 (remote) binary package repository needed by package managing software.
214 .Sh TECHNICAL DETAILS
215 Package info is either extracted from package files named on the
216 command line, or from already installed package information
218 .Pa \*[Lt]PKG_DBDIR\*[Gt]/\*[Lt]pkg-name\*[Gt] .
220 When the
221 .Fl F
222 option is used,
223 a filename can be given instead of a package name to query
224 information on the (installed) package that file belongs to.
225 The filename is resolved to a package name using the package database.
226 The filename must be absolute, as in the output of
227 .Dl pkg_info -aF .
228 For example,
229 .Dl pkg_info -eF /path/to/file
230 can be used to display the package the given file belongs to, and
231 .Dl pkg_info -LF /path/to/file
232 can be used to display all files belonging to the package the given
233 file belongs to.
234 .Sh PACKAGE WILDCARDS
235 In the places where a package name/version is expected, e.g., for the
236 .Fl e
237 option, several forms can be used.
238 Either use a package name with or without version, or specify a
239 package wildcard that gets matched against all installed packages.
241 Package wildcards use
242 .Xr fnmatch 3 .
243 In addition,
244 .Xr csh 1
245 style {,} alternates have been implemented.
246 Package version numbers can also be matched in a relational manner
247 using the
248 .Dq \*[Ge] ,
249 .Dq \*[Le] ,
250 .Dq \*[Gt] ,
252 .Dq \*[Lt]
253 operators.
254 For example,
255 .Dl pkg_info -e 'name\*[Ge]1.3'
256 will match versions 1.3 and later of the
257 .Dq name
258 package.
259 (Make sure to use shell quoting.)
260 Additionally, ranges can be defined, by giving both a lower bound
261 .Po with
262 .Dq \*[Gt]
264 .Dq \*[Ge]
266 as well as an upper bound
267 .Po with
268 .Dq \*[Lt]
270 . Dq \*[Le]
271 .Pc .
272 The lower bound has to come first.
273 For example,
274 .Dl pkg_info -e 'name\*[Ge]1.3\*[Lt]2.0'
275 will match versions 1.3 (inclusive) to 2.0 (exclusive) of package
276 .Dq name .
278 The collating sequence of the various package version numbers is
279 unusual, but strives to be consistent.
280 The magic string
281 .Dq alpha
282 equates to
283 .Dq alpha version ,
284 and sorts before a beta version.
285 The magic string
286 .Dq beta
287 equates to
288 .Dq beta version ,
289 and sorts before a release candidate.
290 The magic string
291 .Dq rc
292 equates to
293 .Dq release candidate ,
294 and sorts before a release.
295 The magic string
296 .Dq pre ,
297 short for
298 .Dq pre-release ,
299 is a synonym for
300 .Dq rc .
301 For example,
302 .Dq name-1.3alpha2
303 will sort before
304 .Dq name-1.3beta1 ,
305 and they both sort before
306 .Dq name-1.3rc1 .
307 Similarly,
308 .Dq name-1.3rc3
309 will sort before
310 .Dq name-1.3 ,
311 and after
312 .Dq name-1.2.9 .
313 The magic string
314 .Dq pl
315 equates to
316 .Dq patch level ,
317 and has the same value as a dot
318 .Pq Sq \&.
319 in the dewey-decimal ordering schemes,
320 as does the underscore
321 .Pq Sq _ .
322 Additionally, alphabetic characters sort in the same place as
323 their numeric counterparts, so that
324 .Dq name-1.2e
325 has the same sorting value as
326 .Dq name-1.2.5 .
327 .Sh ENVIRONMENT
329 .Xr pkg_install.conf 5
330 for options, that can also be specified using the environment.
331 .Sh SEE ALSO
332 .Xr pkg_add 1 ,
333 .Xr pkg_admin 1 ,
334 .Xr pkg_create 1 ,
335 .Xr pkg_delete 1 ,
336 .Xr pkg_install.conf 5
337 .Xr pkgsrc 7
338 .Sh AUTHORS
339 .Bl -tag -width indent -compact
340 .It "Jordan Hubbard"
341 most of the work
342 .It "John Kohl"
343 refined it for
345 .It "Hubert Feyrer"
347 wildcard dependency processing, pkgdb, depends displaying,
348 pkg size display, and more.