Merge pull request #991 from AladW/search-stdin-table
[aurutils.git] / man1 / aur-query.1
blobe0859432247e14588b2b8776f572b1d880cd1419
1 .TH AUR-QUERY 1 2022-02-25 AURUTILS
2 .SH NAME
3 aur\-query \- send requests to the aurweb RPC interface
5 .SH SYNOPSIS
6 .SY "aur query"
7 .OP \-t type
8 .OP \-b by
9 .IR pkgname " [" pkgname... ]
10 .YS
12 .SH DESCRIPTION
13 .B aur\-query
14 retrieves package information from an AUR endpoint by sending HTTP GET
15 or POST requests to the
16 .UR https://\:aur.archlinux.org/\:rpc.php
17 RPC interface
18 .UE
19 with
20 .BR curl(1).
21 .PP
22 Arguments are taken from the command-line. If the first argument is
23 .B \-
25 .BR /dev/stdin ,
26 arguments are taken from standard input. JSON responses are delimited by
27 newlines (JSON Lines).
28 .PP
29 For
30 .B search
31 type requests, the intersection of results is taken by default.
33 .SH OPTIONS
34 The request type and arguments must be compatible to the chosen RPC version (see the
35 .B AUR_QUERY_RPC_VERSION
36 environment variable). The options below assume
37 .BR "RPC v5" .
39 .TP
40 .BR \-b ", " \-\-by=\fR<KIND>
41 Arguments for package search
42 .RB ( \-\-type=search ).
43 Can be one of
44 .BR name ,
45 .BR name\-desc ,
46 .BR maintainer ,
47 .BR depends ,
48 .BR makedepends ,
49 .BR optdepends ,
51 .BR checkdepends .
53 .TP
54 .BR \-t ", " \-\-type=\fR<NAME>
55 Type of request. Can be one of
56 .B search
58 .BR info .
60 .TP
61 .BR \-a ", " \-\-any
62 Return the set union of results instead of the intersection. Applies to
63 .B search
64 requests. The result is a single JSON structure, delimited by a newline.
66 .TP
67 .BR \-e ", " \-\-exit\-if\-empty
68 If no results are found, exit with status 1 instead of 0.
70 .TP
71 .BR \-r ", " \-\-raw
72 Do not process results. Implied by
73 .BR \-\-type=info .
75 .SH EXIT STATUS
76 .B aur\-query
77 returns 0 if no errors occured, 1 if no results were found
78 .I and
79 the
80 .B \-\-exit\-if\-empty
81 option is specified,
82 and 2 if a request resulted in an error
83 .RB ( type=error ).
85 .SH ENVIRONMENT
86 .TP
87 .B AUR_LOCATION
88 The URI of the AUR endpoint. Defaults to
89 .IR https://\:aur.archlinux.org .
91 .TP
92 .B AUR_QUERY_PARALLEL
93 If set to a positive value, transfers are done with
94 .BR "curl \-\-parallel" .
95 This requires
96 .BR curl (1)
97 version >=7.77.0.
99 .TP
100 .B AUR_QUERY_PARALLEL_MAX
101 The amount of maximal parallel transfers (defaults to 15). Translates to
102 .BR "curl \-\-parallel\-max" .
105 .B AUR_QUERY_RPC
106 The URI of the RPC interface. Defaults to
107 .IR "$AUR_LOCATION/rpc/?v=5" .
110 .B AUR_QUERY_RPC_POST
111 If set to a positive value, use HTTP POST for requests.
112 Defaults to
113 .IR 1 .
116 For info-type requests, more packages can be queried in a single
117 request with HTTP POST than with HTTP GET, and this approach is
118 preferable especially when querying large numbers of packages.
122 .B AUR_QUERY_RPC_SPLITNO
123 The amount of packages listed per URI when using HTTP GET for info-type
124 requests. This is used to avoid HTTP 414 errors with larger sets (>200)
125 of packages
126 .RI ( FS#49089 ).
127 Defaults to
128 .IR 150 .
131 .B AUR_QUERY_RPC_SPLITNO_POST
132 The amount of packages in the message body when using HTTP POST for
133 info-type requests. Defaults to
134 .IR 2000 .
135 This value should not be set higher than 5000 (the maximum amount of
136 package results in an
137 .B info
138 request).
141 .B AUR_QUERY_RPC_VERSION
142 The version for the RPC endpoint. Defaults to
143 .IR 5 .
145 .SH NOTES
146 The default set of options for
147 .BR curl (1)
149 .BR "\-A aurutils \-fgLsSq" .
151 .SH SEE ALSO
152 .ad l
154 .BR aur\-depends (1),
155 .BR aur\-search (1),
156 .BR aur\-vercmp (1),
157 .BR curl (1),
158 .BR jq (1)
160 .SH AUTHORS
161 .MT https://github.com/AladW
162 Alad Wenter
165 .\" vim: set textwidth=72: