1OPAM ADMIN-INDEX(1) Opam admin Manual OPAM ADMIN-INDEX(1)
2
3
4
6 opam admin-index - Generate an inclusive index file for serving over
7 HTTP.
8
10 opam admin index [OPTION]...
11
13 An opam repository can be served over HTTP or HTTPS using any web
14 server. To that purpose, an inclusive index needs to be generated
15 first: this command generates the files the opam client will expect
16 when fetching from an HTTP remote, and should be run after any changes
17 are done to the contents of the repository.
18
20 --full-urls-txt
21 Generate an inclusive 'urls.txt', for a repository that will be
22 used by opam versions earlier than 2.0.
23
24 --minimal-urls-txt
25 Generate a minimal 'urls.txt' file, that only includes the 'repo'
26 file. This allows opam versions earlier than 2.0 to read that file,
27 and be properly redirected to a repository dedicated to their
28 version, assuming a suitable 'redirect:' field is defined, instead
29 of failing. This is the default.
30
31 --no-urls-txt
32 Don't generate a 'urls.txt' file. That index file is no longer
33 needed from opam 2.0 on, but is still used by older versions.
34
36 These options are common to all commands.
37
38 --best-effort
39 Don't fail if all requested packages can't be installed: try to
40 install as many as possible. Note that not all external solvers may
41 support this option (recent versions of aspcud or mccs should).
42 This is equivalent to setting $OPAMBESTEFFORT environment variable.
43
44 --color=WHEN
45 Colorize the output. WHEN must be one of `always', `never' or
46 `auto'.
47
48 --criteria=CRITERIA
49 Specify user preferences for dependency solving for this run.
50 Overrides both $OPAMCRITERIA and $OPAMUPGRADECRITERIA. For details
51 on the supported language, and the external solvers available, see
52 http://opam.ocaml.org/doc/External_solvers.html. A general guide to
53 using solver preferences can be found at
54 http://www.dicosmo.org/Articles/usercriteria.pdf.
55
56 --cudf=FILENAME
57 Debug option: Save the CUDF requests sent to the solver to
58 FILENAME-<n>.cudf.
59
60 --debug
61 Print debug message to stderr. This is equivalent to setting
62 $OPAMDEBUG to "true".
63
64 --debug-level=LEVEL
65 Like --debug, but allows specifying the debug level (--debug sets
66 it to 1). Equivalent to setting $OPAMDEBUG to a positive integer.
67
68 --git-version
69 Print the git version of opam, if set (i.e. you are using a
70 development version), and exit.
71
72 --help[=FMT] (default=auto)
73 Show this help in format FMT. The value FMT must be one of `auto',
74 `pager', `groff' or `plain'. With `auto', the format is `pager` or
75 `plain' whenever the TERM env var is `dumb' or undefined.
76
77 --ignore-pin-depends
78 Ignore extra pins required by packages that get pinned, either
79 manually through opam pin or through opam install DIR. This is
80 equivalent to setting IGNOREPINDEPENDS=true.
81
82 --json=FILENAME
83 Save the results of the opam run in a computer-readable file. If
84 the filename contains the character `%', it will be replaced by an
85 index that doesn't overwrite an existing file. Similar to setting
86 the $OPAMJSON variable.
87
88 --no-aspcud
89 Deprecated.
90
91 --no-auto-upgrade
92 When configuring or updating a repository that is written for an
93 earlier opam version (1.2), opam internally converts it to the
94 current format. This disables this behaviour. Note that
95 repositories should define their format version in a 'repo' file at
96 their root, or they will be assumed to be in the older format. It
97 is, in any case, preferable to upgrade the repositories manually
98 using opam admin upgrade [--mirror URL] when possible.
99
100 -q, --quiet
101 Disables --verbose.
102
103 --root=ROOT
104 Use ROOT as the current root path. This is equivalent to setting
105 $OPAMROOT to ROOT.
106
107 --safe, --readonly
108 Make sure nothing will be automatically updated or rewritten.
109 Useful for calling from completion scripts, for example. Will fail
110 whenever such an operation is needed ; also avoids waiting for
111 locks, skips interactive questions and overrides the $OPAMDEBUG
112 variable. This is equivalent to set environment variable $OPAMSAFE.
113
114 --solver=CMD
115 Specify the CUDF solver to use for resolving package installation
116 problems. This is either a predefined solver (this version of opam
117 supports builtin-mccs+lp(), builtin-mccs+glpk, aspcud, mccs,
118 aspcud-old, packup), or a custom command that should contain the
119 variables %{input}%, %{output}%, %{criteria}%, and optionally
120 %{timeout}%. This is equivalent to setting $OPAMEXTERNALSOLVER.
121
122 --strict
123 Fail whenever an error is found in a package definition or a
124 configuration file. The default is to continue silently if
125 possible.
126
127 --switch=SWITCH
128 Use SWITCH as the current compiler switch. This is equivalent to
129 setting $OPAMSWITCH to SWITCH.
130
131 --use-internal-solver
132 Disable any external solver, and use the built-in one (this
133 requires that opam has been compiled with a built-in solver). This
134 is equivalent to setting $OPAMNOASPCUD or $OPAMUSEINTERNALSOLVER.
135
136 -v, --verbose
137 Be more verbose. One -v shows all package commands, repeat to also
138 display commands called internally (e.g. tar, curl, patch etc.)
139 Repeating n times is equivalent to setting $OPAMVERBOSE to "n".
140
141 --version
142 Show version information.
143
144 -w, --working-dir
145 Whenever updating packages that are bound to a local,
146 version-controlled directory, update to the current working state
147 of their source instead of the last committed state, or the ref
148 they are pointing to. This only affects packages explicitly listed
149 on the command-line.It can also be set with $OPAMWORKINGDIR.
150
151 -y, --yes
152 Answer yes to all yes/no questions without prompting. This is
153 equivalent to setting $OPAMYES to "true".
154
156 Opam makes use of the environment variables listed here. Boolean
157 variables should be set to "0", "no", "false" or the empty string to
158 disable, "1", "yes" or "true" to enable.
159
160 OPAMALLPARENS surround all filters with parenthesis
161
162 OPAMAUTOREMOVE see remove option `--auto-remove`
163
164 OPAMBESTEFFORT see option `--best-effort`
165
166 OPAMBESTEFFORTPREFIXCRITERIA sets the string that must be prepended to
167 the criteria when the `--best-effort` option is set, and is expected to
168 maximise the `opam-query` property in the solution
169
170 OPAMCOLOR, when set to always or never, sets a default value for the
171 --color option.
172
173 OPAMCRITERIA specifies user preferences for dependency solving. The
174 default value depends on the solver version, use `config report` to
175 know the current setting. See also option --criteria
176
177 OPAMCUDFFILE file save the cudf graph to file-actions-explicit.dot
178
179 OPAMCURL can be used to select a given 'curl' program. See OPAMFETCH
180 for more options.
181
182 OPAMDEBUG see options `--debug' and `--debug-level'.
183
184 OPAMDOWNLOADJOBS sets the maximum number of simultaneous downloads.
185
186 OPAMDRYRUN see option `--dry-run`
187
188 OPAMEDITOR sets the editor to use for opam file editing, overrides
189 $EDITOR and $VISUAL
190
191 OPAMERRLOGLEN sets the number of log lines printed when a sub-process
192 fails. 0 to print all.
193
194 OPAMEXTERNALSOLVER see option `--solver'.
195
196 OPAMFAKE see option `--fake`
197
198 OPAMFETCH specifies how to download files: either `wget', `curl' or a
199 custom command where variables %{url}%, %{out}%, %{retry}%,
200 %{compress}% and %{checksum}% will be replaced. Overrides the
201 'download-command' value from the main config file.
202
203 OPAMFIXUPCRITERIA same as OPAMUPGRADECRITERIA, but specific to fixup
204
205 OPAMIGNORECONSTRAINTS see install option `--ignore-constraints-on`
206
207 OPAMIGNOREPINDEPENDS see option `--ignore-pin-depends`
208
209 OPAMJOBS sets the maximum number of parallel workers to run.
210
211 OPAMJSON log json output to the given file (use character `%' to index
212 the files)
213
214 OPAMLOCKED see install option `--locked`
215
216 OPAMLOGS logdir sets log directory, default is a temporary directory in
217 /tmp
218
219 OPAMMAKECMD set the system make command to use
220
221 OPAMNOAUTOUPGRADE disables automatic internal upgrade of repositories
222 in an earlier format to the current one, on 'update' or 'init'.
223
224 OPAMKEEPLOGS tells opam to not remove some temporary command logs and
225 some backups. This skips some finalisers and may also help to get more
226 reliable backtraces
227
228 OPAMLOCKRETRIES sets the number of tries after which opam gives up
229 acquiring its lock and fails. <= 0 means infinite wait.
230
231 OPAMMERGEOUT merge process outputs, stderr on stdout
232
233 OPAMNO answer no to any question asked.
234
235 OPAMNOASPCUD Deprecated.
236
237 OPAMNOCHECKSUMS enables option --no-checksums when available.
238
239 OPAMNOSELFUPGRADE see option `--no-self-upgrade'.
240
241 OPAMPINKINDAUTO sets whether version control systems should be detected
242 when pinning to a local path. Enabled by default since 1.3.0.
243
244 OPAMPRECISETRACKING fine grain tracking of directories
245
246 OPAMREQUIRECHECKSUMS Enables option `--require-checksums' when
247 available (e.g. for `opam install`).
248
249 OPAMRETRES sets the number of tries before failing downloads.
250
251 OPAMROOT see option `--root'. This is automatically set by `opam env
252 --root=DIR --set-root'.
253
254 OPAMROOTISOK don't complain when running as root.
255
256 OPAMSAFE see option `--safe'
257
258 OPAMSHOW see option `--show`
259
260 OPAMSKIPUPDATE see option `--skip-updates`
261
262 OPAMSKIPVERSIONCHECKS bypasses some version checks. Unsafe, for
263 compatibility testing only.
264
265 OPAMSOLVERTIMEOUT change the time allowance of the solver. Default is
266 60.0, set to 0 for unlimited. Note that all solvers may not support
267 this option.
268
269 OPAMSTATUSLINE display a dynamic status line showing what's currently
270 going on on the terminal. (one of one of `always', `never' or `auto')
271
272 OPAMSTATS display stats at the end of command
273
274 OPAMSTRICT fail on inconsistencies (file reading, switch import, etc.)
275
276 OPAMSWITCH see option `--switch'. Automatically set by `opam env
277 --switch=SWITCH --set-switch'.
278
279 OPAMUNLOCKBASE see install option `--unlock-base`
280
281 OPAMUPGRADECRITERIA specifies user preferences for dependency solving
282 when performing an upgrade. Overrides OPAMCRITERIA in upgrades if both
283 are set. See also option --criteria
284
285 OPAMUSEINTERNALSOLVER see option `--use-internal-solver'.
286
287 OPAMUSEOPENSSL force openssl use for hash computing
288
289 OPAMUTF8 use UTF8 characters in output (one of one of `always', `never'
290 or `auto'). By default `auto', which is determined from the locale).
291
292 OPAMUTF8MSGS use extended UTF8 characters (camels) in opam messages.
293 Implies OPAMUTF8. This is set by default on OSX only.
294
295 OPAMVALIDATIONHOOK hook if set, uses the `%{hook%}` command to validate
296 an opam repository update
297
298 OPAMVAR_var overrides the contents of the variable var when
299 substituting `%{var}%` strings in `opam` files.
300
301 OPAMVAR_package_var overrides the contents of the variable package:var
302 when substituting `%{package:var}%` strings in `opam` files.
303
304 OPAMVERBOSE see option `--verbose'.
305
306 OPAMWORKINGDIR see option `--working-dir`
307
308 OPAMYES see option `--yes'.
309
311 As an exception to the following, the `exec' command returns 127 if the
312 command was not found or couldn't be executed, and the command's exit
313 value otherwise.
314
315 0 Success, or true for boolean queries.
316
317 1 False. Returned when a boolean return value is expected, e.g. when
318 running with --check, or for queries like opam lint.
319
320 2 Bad command-line arguments, or command-line arguments pointing to
321 an invalid context (e.g. file not following the expected format).
322
323 5 Not found. You requested something (package, version, repository,
324 etc.) that couldn't be found.
325
326 10 Aborted. The operation required confirmation, which wasn't given.
327
328 15 Could not acquire the locks required for the operation.
329
330 20 There is no solution to the user request. This can be caused by
331 asking to install two incompatible packages, for example.
332
333 30 Error in package definition, or other metadata files. Using
334 --strict raises this error more often.
335
336 31 Package script error. Some package operations were unsuccessful.
337 This may be an error in the packages or an incompatibility with
338 your system. This can be a partial error.
339
340 40 Sync error. Could not fetch some remotes from the network. This can
341 be a partial error.
342
343 50 Configuration error. Opam or system configuration doesn't allow
344 operation, and needs fixing.
345
346 60 Solver failure. The solver failed to return a sound answer. It can
347 be due to a broken external solver, or an error in solver
348 configuration.
349
350 99 Internal error. Something went wrong, likely due to a bug in opam
351 itself.
352
353 130 User interrupt. SIGINT was received, generally due to the user
354 pressing Ctrl-C.
355
357 See https://opam.ocaml.org/doc.
358
360 Vincent Bernardoff <vb@luminar.eu.org>
361 Raja Boujbel <raja.boujbel@ocamlpro.com>
362 Roberto Di Cosmo <roberto@dicosmo.org>
363 Thomas Gazagnaire <thomas@gazagnaire.org>
364 Louis Gesbert <louis.gesbert@ocamlpro.com>
365 Fabrice Le Fessant <Fabrice.Le_fessant@inria.fr>
366 Anil Madhavapeddy <anil@recoil.org>
367 Guillem Rieu <guillem.rieu@ocamlpro.com>
368 Ralf Treinen <ralf.treinen@pps.jussieu.fr>
369 Frederic Tuong <tuong@users.gforge.inria.fr>
370
372 Check bug reports at https://github.com/ocaml/opam/issues.
373
374
375
376Opam admin 2.0.6 OPAM ADMIN-INDEX(1)