aboutsummaryrefslogtreecommitdiff
blob: 9cb046ffd41a6f7e893b5e8638c93d721ea09b46 (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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
.TH "EQUERY" "1" "August 2009" "GENTOOLKIT" ""
.SH "NAME"
equery \- Gentoo Package Query Tool

.SH "SYNOPSIS"
.BI "equery " "[global\-options] " "module " "[local\-options]"

.SH "DESCRIPTION"
.B Equery
is a collection of modules for querying the state of Gentoo packages, files and USE flags.

.SH "GLOBAL OPTIONS"
.HP
.B \-h, \-\-help
.br
Output a help message.
.HP
.B \-q, \-\-quiet
.br
Be less verbose where possible. In some modules, this option can increase the output speed.
.HP
.B \-C, \-\-no\-color
.br
Do not colorize output.
.HP
.B \-N, \-\-no\-pipe
.br
Turn off automatic pipe detection. Use this option if you do not want
.B equery
to detect if the output is being directed to the screen or to another program and adjust color and verbosity accordingly.
.HP
.B \-V, \-\-version
.br
Display \fBGentoolkit\fP's version. Please include this in all bug reports. (see
.B BUGS
below)

.SH "MODULES"
.B Equery
uses a system of modules. Each module has both a long and short name. The list below uses the notation "\fBmodule (m)\fP", where \fIm\fP is the short name and \fImodule\fP is the long name.
.P
You can view the
.B help
message for a specific module by using
.BR "\-h" ", " "\-\-help "
as either a global option (after
.B equery
and before the module name) or as a local option (after the module name).

.SS
.BI "belongs (b) [OPTIONS] " "FILE"
List the package that owns \fIFILE\fP.
.P
.BI Note:
Normally, only one package will own \fIFILE\fP. If multiple packages own the
same file it should be reported. (see
.B BUGS
below)

.I R "LOCAL OPTIONS" ":"
.HP
.B \-f, \-\-full\-regex
.br
The supplied query is a regular expression.
.HP
.B \-e, \-\-early\-out
.br
Stop when the first match is found. This is generally a safe optimization when searching for the owner of a single file.
.HP
.B \-n, \-\-name\-only
.br
Do not print the version.
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery belongs \-\-early\-out /usr/bin/euse
.EE
.br
Find out what package installed a certain command.
.EX
.HP
emerge \-p $(equery \-q belongs \-nf '^/usr/bin/g?vim.*')
.EE
.br
Tell
.B emerge
to reinstall or update any package that installed a file matching a regular expression.

.SS
.BI "check (k) [OPTIONS] " "PKG"
Check timestamps and MD5 sums for files owned by \fIPKG\fP, where \fIPKG\fP is an installed package.

.I R "LOCAL OPTIONS" ":"
.HP
.B \-f, \-\-full\-regex
.br
The supplied query is a regular expression.
.HP
.B \-o, \-\-only\-failures
.br
Only display packages which don't pass all checks.
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery check \-\-only\-failures '*'
.EE
.br
Verify timestamps and MD5 sums for all installed packages and show only packages which fail checks.
.EX
.HP
equery check 'dev\-python/*' dev\-lang/python
.EE
.br
Verify every installed package in the \fBdev\-python\fP category, and Python itself.

.SS
.BI "depends (d) [OPTIONS] " "PKG"
List all packages that depend on \fIPKG\fP.

.I R "LOCAL OPTIONS" ":"
.HP
.B \-a, \-\-all\-packages
.br
Include dependencies that are not installed. This can take a while.
.HP
.B \-D, \-\-indirect
.br
Search for both direct and indirect dependencies.
.HP
.B \-F, \-\-format=\fITMPL\fP
.br
Customize the output format of the matched packages using the template string \fITMPL\fP. See the \fB\-\-format\fP option for \fBlist\fP below for a description of the \fITMPL\fP argument.
.HP
.BI "\-\-depth=" "NUM"
.br
Limit the indirect dependency tree to a depth of \fINUM\fP. \fB\-\-depth=0\fP is equivalent to not using \fB\-\-indirect\fP.
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery depends \-\-indirect xulrunner
.EE
.br
Figure out why a package got installed on your system.

.SS
.BI "depgraph (g) [OPTIONS] " "PKG"
Display a direct dependency graph for every matching version of \fIPKG\fP. A dependency graph is an
indented tree showing the relationship between packages and their dependencies.

.I R "LOCAL OPTIONS" ":"
.HP
.B \-A, \-\-no\-atom
.br
Do not show the dependency atom that match the package.
.HP
.B \-U, \-\-no\-useflags
.br
Do not show USE flags.
.HP
.B \-l, \-\-linear
.br
Do not format the graph by indenting dependencies. This option will print the
recursion depth in square brackets before the package name for easier viewing
in narrow terminals.
.HP
.BI "\-\-depth=" "NUM"
.br
Limit the dependency graph to a depth of \fINUM\fP. \fB\-\-depth=0\fP means no
maximum depth. Default depth is set to 1.
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery depgraph \-\-depth=0 portage
.EE
.br
View a full tree of all direct and indirect compile\-time, run\-time, and post\-merge dependencies for a package.

.SS
.BI "files (f) [OPTIONS] " "PKG"
List files and directories installed by \fIPKG\fP.

.I R "LOCAL OPTIONS" ":"
.HP
.B \-m, \-\-md5sum
.br
Include the file's MD5 sum in the output.
.HP
.B \-s, \-\-timestamp
.br
Include the file's timestamp in the output.
.HP
.B \-t, \-\-type
.br
Include the file type in the output.
.HP
.B \-\-tree
.br
Display files in a tree format. This option turns off all other local options.
.HP
.BI "\-f, \-\-filter=" "RULES"
.br
Filter output by file type.
.HP
RULES
.br
A comma\-separated list (no spaces); choose from:
.br
.B dir, obj, sym, dev, path, conf, cmd, doc, man, info
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery files \-\-tree vlc
.EE
.br
View a file tree of all files installed by a package.
.EX
.HP
equery files \-\-filter=cmd vlc
.EE
.br
Find out where a package installed its executables.

.SS
.BI "has (a) [OPTIONS] " "KEY  VALUE"
List all installed packages that have a given \fIKEY\fP match.

\fBNote\fP: \fBKEY\fP is case sensitive. Also \fBhas\fP does not currently have the ability to intelligently compare values depending on the type of information being looked up.  It performs a simple string match. It can only list which packages have the matching \fBVALUE\fP as given on the command line. It is a general purpose lookup for most information available via portage's dbapi.aux_get() function.  Warning: the quality of the results printed is dependant on the quality of the search (given the limited comparison method) and the recorded data available in the vardb. (See \fIEXAMPLES\fP)

.I R "LOCAL OPTIONS" ":"
.HP
.B \-I, \-\-exclude\-installed
.br
Exclude installed packages from being output.
.HP
.B \-o, \-\-overlay\-tree
.br
Include package from overlays in the search path.
.HP
.B \-p, \-\-portage\-tree
.br
Include all packages from the Portage tree in the search path. Use this option to search through all standard Gentoo packages, including those that are not installed.
.HP
.B \-F, \-\-format=\fITMPL\fP
.br
Customize the output format of the matched packages using the template string \fITMPL\fP. See the \fB\-\-format\fP option for \fBlist\fP below for a description of the \fITMPL\fP argument.
.P
.I R "OUTPUT" ":"
.HP
(See \fIOUTPUT\fP for \fBlist\fP below)
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery has SLOT 2.4
.EE
.br
View all installed Gentoo packages that have a recorded SLOT = "2.4".
.EX
.HP
equery has repository sunrise
.EE
.br
View all installed Gentoo packages that were recorded to be installed from ebuilds from the "sunrise" overlay.
.EX
.HP
equery has EAPI 2
.EE
.br
View all installed Gentoo packages that were installed with ebuilds with a recorded EAPI of "2".

.SS
.BI "hasuse (h) [OPTIONS] " "USE"
List all installed packages that have a given \fIUSE\fP flag.

\fBNote\fP: \fBhasuse\fP does not currently have the ability to display if packages are built with the given USE flag or not. It can only list which packages have the flag as an option. (See \fIEXAMPLES\fP)

.I R "LOCAL OPTIONS" ":"
.HP
.B \-I, \-\-exclude\-installed
.br
Exclude installed packages from being output.
.HP
.B \-o, \-\-overlay\-tree
.br
Include package from overlays in the search path.
.HP
.B \-p, \-\-portage\-tree
.br
Include all packages from the Portage tree in the search path. Use this option to search through all standard Gentoo packages, including those that are not installed.
.HP
.B \-F, \-\-format=\fITMPL\fP
.br
Customize the output format of the matched packages using the template string \fITMPL\fP. See the \fB\-\-format\fP option for \fBlist\fP below for a description of the \fITMPL\fP argument.
.P
.I R "OUTPUT" ":"
.HP
(See \fIOUTPUT\fP for \fBlist\fP below)
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery hasuse \-pI perl
.EE
.br
View all Gentoo packages that have the "perl" USE flag, exluding installed packages.
.EX
.HP
USE="perl"; for PKG in $(equery \-q hasuse $USE); do echo $PKG: $(equery \-q uses $PKG |grep $USE); done
.EE
.br
This Bash one\-liner uses \fBhasuse\fP to find a list of packages that have a certain USE flag, and \fBuses\fP to check whether the flag is enabled or disabled. Modify \fBUSE="perl"\fP to change the query.

.SS
.BI "list (l) [OPTIONS] " "PKG"
List installed versions of \fIPKG\fP or all packages matching the query pattern.

.I R "LOCAL OPTIONS" ":"
.HP
.B \-d, \-\-duplicates
.br
List only packages with more than one version installed.
.HP
.B \-f, \-\-full\-regex
.br
The supplied query is a regular expression.
.HP
.B \-m, \-\-mask\-reason
.br
Print the reason why a package was masked.
.HP
.B \-I, \-\-exclude\-installed
.br
Exclude installed packages from being output.
.HP
.B \-o, \-\-overlay\-tree
.br
Include package from overlays in the search path.
.HP
.B \-p, \-\-portage\-tree
.br
Include all packages from the Portage tree in the search path. Use this option to search through all standard Gentoo packages, including those that are not installed.
.HP
.B \-F, \-\-format=\fITMPL\fP
.br
Customize the output format of the matched packages using the template string \fITMPL\fP. \fITMPL\fP can contain the following placeholders:
.RS
.TP
\fB$cp\fP \- Contains the category and the package name only (e.g 'app\-portage/gentoolkit').
.TP
\fB$cpv\fP \- Contains the category, the package name and the full version (e.g. 'app\-portage/gentoolkit\-0.3.0_rc10\-r1').
.TP
\fB$category\fP \- Contains just the category (e.g. 'app\-portage').
.TP
\fB$name\fP \- Contains just the package name (e.g. 'gentoolkit').
.TP
\fB$version\fP \- Contains the package version (without the revision) (e.g. '0.3.0_rc10').
.TP
\fB$revision\fP \- Contains the package revision (e.g. 'r1').
.TP
\fB$fullversion\fP \- Contains the package version including its revision (e.g. '0.3.0_rc10\-r1').
.TP
\fB$slot\fP \- Contains the package's slot.
.TP
\fB$repo\fP \- Contains the name of the package's repository (e.g. 'gentoo').
.TP
\fB$mask\fP \- The Mask\-status field (\fB~M\-??\fP), see \fIOUTPUT\fP below for an explanation.
.TP
\fB$mask2\fP \- Contains a verbose description of the packages masking status.
.TP
\fB$location\fP \- The Location field (\fBIPO\-\fP), see \fIOUTPUT\fP below for an explanation.
.P
Apart from the above placeholders the template string can contain arbitrary
text as desired. Similar to bash variables, curly braces can be used to
disambiguate the variable names from the enclosing text.
.RE
.P
.I R "OUTPUT" ":"

.EX
$ equery list binutils
 * Searching for binutils ...
 [I\-\-] [??] sys\-devel/binutils\-2.18\-r1:i686\-pc\-linux\-gnu\-2.18
 [IP\-] [ ~] sys\-devel/binutils\-2.19.1\-r1:i686\-pc\-linux\-gnu\-2.19.1
.EE
.HP
Location field (\fB[IPO\-]\fP):
.br
The first field shows the location and install status of the package. It consists of three letters in square brackets. \fBI\fP indicates the package is currently installed. \fBP\fP indicates the package is available in the Portage tree. \fBO\fP indicates the package is available in at least one overlay. \fB\-\fP is a place holder and has no meaning. \fB[I\-O]\fP would mean that the package is installed and available from an overlay, but not available from the Portage tree.
.HP
Mask\-status field (\fB[ ~M\-??]\fP):
.br
The second field shows the mask status of the package. Empty brackets indicate that the package is unmasked. A \fB~\fP means the package is masked by keyword, e.g., you are running a stable system and the package is marked testing). \fBM\fP means hard masked, e.g., the package maintainer has determined the package is unfit for widespread usage. \fB\-\fP means arch masked, e.g., you are running an amd64 system, but this package only works on x86. Lastly, \fB??\fP only occurs when the location field is \fB[I\-\-]\fP. Together, they indicate that the package was installed from the Portage tree or an overlay, but has since been removed from that tree; therefore \fBequery\fP can not determine a mask status for it.
.HP
Package name:
.br
The third field is the full package name and version.
.HP
Slot:
.br
The fourth field, after the colon, is the package's slot. \fB0\fP is the default slot. To find all packages with multiple slots installed, use \fB\-\-duplicates\fP.
.P
\fBNote:\fP Because it takes extra processing time to determine the location, mask status and slot, you can speed up output by passing the \fB\-\-quiet\fP global option to \fBequery\fP when you don't care about the extra information.

\fBNote:\fP Additionally, when using \-\-quiet, if no matches are found, instead of printing an error, the equery list module will return with an exit value of 3.

.P
.I R "EXAMPLES" ":"
.EX
.HP
equery list '*'
.EE
.br
List all installed packages. This is equivalent to '\fBequery list\fP' in \fBGentoolkit\fP versions prior to 0.3.0.
.EX
.HP
equery list \-op mozilla\-firefox
.EE
.br
List all available versions of the package exactly matching 'mozilla\-firefox'. This is equivalent to '\fBequery list \-\-exact\-name \-o \-p mozilla\-firefox\fP' in \fBGentoolkit\fP versions prior to 0.3.0.
.EX
.HP
equery list '*zilla*'
.EE
.br
List all packages that contain (fuzzy match) 'zilla'. This is equivalent to '\fBequery list zilla\fP' in \fBGentoolkit\fP versions prior to 0.3.0.
.EX
.HP
equery list 'www\-client/*'
.EE
.br
List all packages in the category \fBwww\-client\fP. This is equivalent to '\fBequery list \-\-category=www\-client\fP' in \fBGentoolkit\fP versions prior to 0.3.0.
.EX
.HP
equery list \-\-duplicates '*'
.EE
.br
List all packages with more than one version installed. This is equivalent to '\fBequery list \-\-duplicates\fP' in \fBGentoolkit\fP versions prior to 0.3.0.
.EX
.HP
equery list \-F '$cp:$slot' '*'
.EE
.br
Get a list of slotted atoms for all installed packages.
.EX
.HP
equery list \-po \-F '[$location] [$mask] $cpv:$slot [$repo]' '*'
.EE
.br
Show all packages in the default (verbose) output format but also include their repository name.

.SS
.BI "meta (m) [OPTIONS] " "PKG"
Display metadata about \fIPKG\fP.

\fBmeta\fP reads a file called metadata.xml which must be included with all Portage tree packages. \fBmeta\fP does not read ebuilds, so it can only return version independent metadata. Since until now there had not been an easy way for users to view metadata.xml, and because package maintainers are only required to fill out a very small portion of the file, there are still many packages without detailed metadata available. For more information about metadata.xml, see:
.br
.EX
https://devmanual.gentoo.org/ebuild-writing/misc-files/metadata/index.html
.EE

.I R "LOCAL OPTIONS" ":"
.HP
.B \-d, \-\-description
.br
Show an extended package description.
.HP
.B \-k, \-\-keywords
.br
Show keywords for all matching versions. \fBkeywords\fP does not list all keywords for all versions. Instead, it filters the list to make it easier to spot versions that need bumping or are okay to remove from the tree. It filters by slot. For example:
.br
Keywords:    1.35.0\-r3:\fB0\fP:
.br
Keywords:    1.35.0\-r5:\fB0\fP: amd64 hppa ppc x86 ~alpha ~arm ~ia64 ~mips ~ppc64 ~s390 ~sh ~sparc
.br
In this output from \fBequery meta boost\fP, \-r5 is the highest available version in slot 0, so all keywords are listed. The actual keywords for \-r3 are "~amd64 ~hppa ~ppc ~x86", but since a higher version in the same slot has the same or more stable keywording, they are filtered out. Arch mask keywords (\-*) are always shown.
.HP
.B \-m, \-\-maintainer
.br
Show the package maintainer(s) email address. If the metadata is available, also show the maitainer's name and/or job description. (shown by default)
.HP
.B \-u, \-\-useflags
.br
Show per\-package USE flag descriptions. Per\-package USE flag descriptions are sometimes added to metadata.xml if the affect of the USE flag is unusual, or if the USE flag is rare enough to be undefined in the global definition file. \fBequery uses\fP now displays these same local descriptions as well, so this option is left in \fBmeta\fP for completeness only.
.HP
.B \-U, \-\-upstream
.br
Show information about the package's upstream project, including the author's email, upstream bug tracker or upstream documentation. At the time of writing, most maintainers do not provide this information. (shown by default)
.HP
.B \-x, \-\-xml
.br
Dump the plain XML file to the screen.
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery meta gnucash
.EE
.br
Show general information about maintainership, including maintainer and upstream.
.EX
.HP
equery meta \-\-description app\-misc/screen
.EE
.br
See if the package maintainer has provided an extended description.
.EX
.HP
equery \-N meta \-H gnome-base/gnome |grep \-o \-\-color=never '[^( ]*@gentoo.org'
.EE
.br
Extract the maintainers's email address to let them know they're doing a great job. Remember, bug reports should go to bugs.gentoo.org. The above example will extract one or more emails if available.

.SS
.BI "size (s) [OPTIONS] " "PKG"
Print total size of files contained in a given \fIPKG\fP.

.I R "LOCAL OPTIONS" ":"
.HP
.B \-b, \-\-bytes
.br
Report package size in bytes.
.HP
.B \-f, \-\-full\-regex
.br
The query is a regular expression.
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery \-q size 'www\-client/*'
.EE
.br
Get a one\-line summary of the number of files and total size (in bytes) of those files for each installed package in a category.

.SS
.BI "uses (u) [OPTIONS] " "PKG"
Display USE flag statuses and descriptions for a given \fRPKG\fP.

.I R "LOCAL OPTIONS" ":"
.HP
.B \-a, \-\-all
.br
Display all package versions. Without this option, \fBequery\fP will choose the best available version.
.HP
.B \-f, \-\-forced\-masked
.br
Show the forced and masked USE flags
.HP
.B \-i, \-\-ignore\-l10n
.br
Do not show the l10n USE flags
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery uses app\-misc/beagle
.EE
.br
See which USE flags are enabled for a specific package.
.EX
.HP
USE="perl"; for PKG in $(equery \-q hasuse $USE); do echo $PKG: $(equery \-q uses $PKG |grep $USE); done
.EE
.br
This Bash one\-liner uses \fBhasuse\fP to find a list of packages that have a certain USE flag, and \fBuses\fP to check whether the flag is enabled or disabled. Modify \fBUSE="perl"\fP to change the query.

.SS
.BI "which (w) [OPTIONS] " "PKG"
Display the path to the ebuild that would be used by Portage with the current configuration.

.I R "LOCAL OPTIONS" ":"
.HP
.B \-m, \-\-include\-masked
.br
Return the path to the highest version ebuild available.
.HP
.B \-e, \-\-ebuild
.br
Print the contents of the ebuild
.P
.I R "EXAMPLES" ":"
.EX
.HP
equery which \-e xorg\-server
.EE
.br
View the most recent installable ebuild.

.SH "BUGS"
Submit bug reports to https://bugs.gentoo.org.

.SH "AUTHORS"
Karl Trygve Kalleberg <karltk@gentoo.org>, 2003
.br
Katerina Barone\-Adesi <katerinab@gmail.com>, 2004
.br
Douglas Anderson <douglasjanderson@gmail.com>, 2009