68f8767595f7de47df1e87bd7bf745fa8e5a4ed4
[platform/upstream/nodejs.git] / deps / npm / html / doc / misc / npm-config.html
1 <!doctype html>
2 <html>
3   <title>npm-config</title>
4   <meta http-equiv="content-type" value="text/html;utf-8">
5   <link rel="stylesheet" type="text/css" href="../../static/style.css">
6
7   <body>
8     <div id="wrapper">
9 <h1><a href="../misc/npm-config.html">npm-config</a></h1> <p>More than you probably want to know about npm configuration</p>
10
11 <h2 id="DESCRIPTION">DESCRIPTION</h2>
12
13 <p>npm gets its configuration values from 6 sources, in this priority:</p>
14
15 <h3 id="Command-Line-Flags">Command Line Flags</h3>
16
17 <p>Putting <code>--foo bar</code> on the command line sets the <code>foo</code> configuration
18 parameter to <code>&quot;bar&quot;</code>.  A <code>--</code> argument tells the cli parser to stop
19 reading flags.  A <code>--flag</code> parameter that is at the <em>end</em> of the
20 command will be given the value of <code>true</code>.</p>
21
22 <h3 id="Environment-Variables">Environment Variables</h3>
23
24 <p>Any environment variables that start with <code>npm_config_</code> will be
25 interpreted as a configuration parameter.  For example, putting
26 <code>npm_config_foo=bar</code> in your environment will set the <code>foo</code>
27 configuration parameter to <code>bar</code>.  Any environment configurations that
28 are not given a value will be given the value of <code>true</code>.  Config
29 values are case-insensitive, so <code>NPM_CONFIG_FOO=bar</code> will work the
30 same.</p>
31
32 <h3 id="npmrc-Files">npmrc Files</h3>
33
34 <p>The three relevant files are:</p>
35
36 <ul><li>per-user config file (~/.npmrc)</li><li>global config file ($PREFIX/npmrc)</li><li>npm builtin config file (/path/to/npm/npmrc)</li></ul>
37
38 <p>See <a href="../files/npmrc.html">npmrc(5)</a> for more details.</p>
39
40 <h3 id="Default-Configs">Default Configs</h3>
41
42 <p>A set of configuration parameters that are internal to npm, and are
43 defaults if nothing else is specified.</p>
44
45 <h2 id="Shorthands-and-Other-CLI-Niceties">Shorthands and Other CLI Niceties</h2>
46
47 <p>The following shorthands are parsed on the command-line:</p>
48
49 <ul><li><code>-v</code>: <code>--version</code></li><li><code>-h</code>, <code>-?</code>, <code>--help</code>, <code>-H</code>: <code>--usage</code></li><li><code>-s</code>, <code>--silent</code>: <code>--loglevel silent</code></li><li><code>-q</code>, <code>--quiet</code>: <code>--loglevel warn</code></li><li><code>-d</code>: <code>--loglevel info</code></li><li><code>-dd</code>, <code>--verbose</code>: <code>--loglevel verbose</code></li><li><code>-ddd</code>: <code>--loglevel silly</code></li><li><code>-g</code>: <code>--global</code></li><li><code>-l</code>: <code>--long</code></li><li><code>-m</code>: <code>--message</code></li><li><code>-p</code>, <code>--porcelain</code>: <code>--parseable</code></li><li><code>-reg</code>: <code>--registry</code></li><li><code>-v</code>: <code>--version</code></li><li><code>-f</code>: <code>--force</code></li><li><code>-desc</code>: <code>--description</code></li><li><code>-S</code>: <code>--save</code></li><li><code>-D</code>: <code>--save-dev</code></li><li><code>-O</code>: <code>--save-optional</code></li><li><code>-B</code>: <code>--save-bundle</code></li><li><code>-y</code>: <code>--yes</code></li><li><code>-n</code>: <code>--yes false</code></li><li><code>ll</code> and <code>la</code> commands: <code>ls --long</code></li></ul>
50
51 <p>If the specified configuration param resolves unambiguously to a known
52 configuration parameter, then it is expanded to that configuration
53 parameter.  For example:</p>
54
55 <pre><code>npm ls --par
56 # same as:
57 npm ls --parseable</code></pre>
58
59 <p>If multiple single-character shorthands are strung together, and the
60 resulting combination is unambiguously not some other configuration
61 param, then it is expanded to its various component pieces.  For
62 example:</p>
63
64 <pre><code>npm ls -gpld
65 # same as:
66 npm ls --global --parseable --long --loglevel info</code></pre>
67
68 <h2 id="Per-Package-Config-Settings">Per-Package Config Settings</h2>
69
70 <p>When running scripts (see <code><a href="../misc/npm-scripts.html">npm-scripts(7)</a></code>) the package.json &quot;config&quot;
71 keys are overwritten in the environment if there is a config param of
72 <code>&lt;name&gt;[@&lt;version&gt;]:&lt;key&gt;</code>.  For example, if the package.json has
73 this:</p>
74
75 <pre><code>{ &quot;name&quot; : &quot;foo&quot;
76 , &quot;config&quot; : { &quot;port&quot; : &quot;8080&quot; }
77 , &quot;scripts&quot; : { &quot;start&quot; : &quot;node server.js&quot; } }</code></pre>
78
79 <p>and the server.js is this:</p>
80
81 <pre><code>http.createServer(...).listen(process.env.npm_package_config_port)</code></pre>
82
83 <p>then the user could change the behavior by doing:</p>
84
85 <pre><code>npm config set foo:port 80</code></pre>
86
87 <p>See <a href="../files/package.json.html">package.json(5)</a> for more information.</p>
88
89 <h2 id="Config-Settings">Config Settings</h2>
90
91 <h3 id="always-auth">always-auth</h3>
92
93 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
94
95 <p>Force npm to always require authentication when accessing the registry,
96 even for <code>GET</code> requests.</p>
97
98 <h3 id="bin-links">bin-links</h3>
99
100 <ul><li>Default: <code>true</code></li><li>Type: Boolean</li></ul>
101
102 <p>Tells npm to create symlinks (or <code>.cmd</code> shims on Windows) for package
103 executables.</p>
104
105 <p>Set to false to have it not do this.  This can be used to work around
106 the fact that some file systems don&#39;t support symlinks, even on
107 ostensibly Unix systems.</p>
108
109 <h3 id="browser">browser</h3>
110
111 <ul><li>Default: OS X: <code>&quot;open&quot;</code>, Windows: <code>&quot;start&quot;</code>, Others: <code>&quot;xdg-open&quot;</code></li><li>Type: String</li></ul>
112
113 <p>The browser that is called by the <code>npm docs</code> command to open websites.</p>
114
115 <h3 id="ca">ca</h3>
116
117 <ul><li>Default: The npm CA certificate</li><li>Type: String or null</li></ul>
118
119 <p>The Certificate Authority signing certificate that is trusted for SSL
120 connections to the registry.</p>
121
122 <p>Set to <code>null</code> to only allow &quot;known&quot; registrars, or to a specific CA cert
123 to trust only that specific signing authority.</p>
124
125 <p>See also the <code>strict-ssl</code> config.</p>
126
127 <h3 id="cache">cache</h3>
128
129 <ul><li>Default: Windows: <code>%AppData%\npm-cache</code>, Posix: <code>~/.npm</code></li><li>Type: path</li></ul>
130
131 <p>The location of npm&#39;s cache directory.  See <code><a href="../cli/npm-cache.html">npm-cache(1)</a></code></p>
132
133 <h3 id="cache-lock-stale">cache-lock-stale</h3>
134
135 <ul><li>Default: 60000 (1 minute)</li><li>Type: Number</li></ul>
136
137 <p>The number of ms before cache folder lockfiles are considered stale.</p>
138
139 <h3 id="cache-lock-retries">cache-lock-retries</h3>
140
141 <ul><li>Default: 10</li><li>Type: Number</li></ul>
142
143 <p>Number of times to retry to acquire a lock on cache folder lockfiles.</p>
144
145 <h3 id="cache-lock-wait">cache-lock-wait</h3>
146
147 <ul><li>Default: 10000 (10 seconds)</li><li>Type: Number</li></ul>
148
149 <p>Number of ms to wait for cache lock files to expire.</p>
150
151 <h3 id="cache-max">cache-max</h3>
152
153 <ul><li>Default: Infinity</li><li>Type: Number</li></ul>
154
155 <p>The maximum time (in seconds) to keep items in the registry cache before
156 re-checking against the registry.</p>
157
158 <p>Note that no purging is done unless the <code>npm cache clean</code> command is
159 explicitly used, and that only GET requests use the cache.</p>
160
161 <h3 id="cache-min">cache-min</h3>
162
163 <ul><li>Default: 10</li><li>Type: Number</li></ul>
164
165 <p>The minimum time (in seconds) to keep items in the registry cache before
166 re-checking against the registry.</p>
167
168 <p>Note that no purging is done unless the <code>npm cache clean</code> command is
169 explicitly used, and that only GET requests use the cache.</p>
170
171 <h3 id="color">color</h3>
172
173 <ul><li>Default: true on Posix, false on Windows</li><li>Type: Boolean or <code>&quot;always&quot;</code></li></ul>
174
175 <p>If false, never shows colors.  If <code>&quot;always&quot;</code> then always shows colors.
176 If true, then only prints color codes for tty file descriptors.</p>
177
178 <h3 id="coverage">coverage</h3>
179
180 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
181
182 <p>A flag to tell test-harness to run with their coverage options enabled,
183 if they respond to the <code>npm_config_coverage</code> environment variable.</p>
184
185 <h3 id="depth">depth</h3>
186
187 <ul><li>Default: Infinity</li><li>Type: Number</li></ul>
188
189 <p>The depth to go when recursing directories for <code>npm ls</code> and
190 <code>npm cache ls</code>.</p>
191
192 <h3 id="description">description</h3>
193
194 <ul><li>Default: true</li><li>Type: Boolean</li></ul>
195
196 <p>Show the description in <code>npm search</code></p>
197
198 <h3 id="dev">dev</h3>
199
200 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
201
202 <p>Install <code>dev-dependencies</code> along with packages.</p>
203
204 <p>Note that <code>dev-dependencies</code> are also installed if the <code>npat</code> flag is
205 set.</p>
206
207 <h3 id="editor">editor</h3>
208
209 <ul><li>Default: <code>EDITOR</code> environment variable if set, or <code>&quot;vi&quot;</code> on Posix,
210 or <code>&quot;notepad&quot;</code> on Windows.</li><li>Type: path</li></ul>
211
212 <p>The command to run for <code>npm edit</code> or <code>npm config edit</code>.</p>
213
214 <h3 id="engine-strict">engine-strict</h3>
215
216 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
217
218 <p>If set to true, then npm will stubbornly refuse to install (or even
219 consider installing) any package that claims to not be compatible with
220 the current Node.js version.</p>
221
222 <h3 id="force">force</h3>
223
224 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
225
226 <p>Makes various commands more forceful.</p>
227
228 <ul><li>lifecycle script failure does not block progress.</li><li>publishing clobbers previously published versions.</li><li>skips cache when requesting from the registry.</li><li>prevents checks against clobbering non-npm files.</li></ul>
229
230 <h3 id="fetch-retries">fetch-retries</h3>
231
232 <ul><li>Default: 2</li><li>Type: Number</li></ul>
233
234 <p>The &quot;retries&quot; config for the <code>retry</code> module to use when fetching
235 packages from the registry.</p>
236
237 <h3 id="fetch-retry-factor">fetch-retry-factor</h3>
238
239 <ul><li>Default: 10</li><li>Type: Number</li></ul>
240
241 <p>The &quot;factor&quot; config for the <code>retry</code> module to use when fetching
242 packages.</p>
243
244 <h3 id="fetch-retry-mintimeout">fetch-retry-mintimeout</h3>
245
246 <ul><li>Default: 10000 (10 seconds)</li><li>Type: Number</li></ul>
247
248 <p>The &quot;minTimeout&quot; config for the <code>retry</code> module to use when fetching
249 packages.</p>
250
251 <h3 id="fetch-retry-maxtimeout">fetch-retry-maxtimeout</h3>
252
253 <ul><li>Default: 60000 (1 minute)</li><li>Type: Number</li></ul>
254
255 <p>The &quot;maxTimeout&quot; config for the <code>retry</code> module to use when fetching
256 packages.</p>
257
258 <h3 id="git">git</h3>
259
260 <ul><li>Default: <code>&quot;git&quot;</code></li><li>Type: String</li></ul>
261
262 <p>The command to use for git commands.  If git is installed on the
263 computer, but is not in the <code>PATH</code>, then set this to the full path to
264 the git binary.</p>
265
266 <h3 id="global">global</h3>
267
268 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
269
270 <p>Operates in &quot;global&quot; mode, so that packages are installed into the
271 <code>prefix</code> folder instead of the current working directory.  See
272 <code><a href="../files/npm-folders.html">npm-folders(5)</a></code> for more on the differences in behavior.</p>
273
274 <ul><li>packages are installed into the <code>{prefix}/lib/node_modules</code> folder, instead of the
275 current working directory.</li><li>bin files are linked to <code>{prefix}/bin</code></li><li>man pages are linked to <code>{prefix}/share/man</code></li></ul>
276
277 <h3 id="globalconfig">globalconfig</h3>
278
279 <ul><li>Default: {prefix}/etc/npmrc</li><li>Type: path</li></ul>
280
281 <p>The config file to read for global config options.</p>
282
283 <h3 id="globalignorefile">globalignorefile</h3>
284
285 <ul><li>Default: {prefix}/etc/npmignore</li><li>Type: path</li></ul>
286
287 <p>The config file to read for global ignore patterns to apply to all users
288 and all projects.</p>
289
290 <p>If not found, but there is a &quot;gitignore&quot; file in the
291 same directory, then that will be used instead.</p>
292
293 <h3 id="group">group</h3>
294
295 <ul><li>Default: GID of the current process</li><li>Type: String or Number</li></ul>
296
297 <p>The group to use when running package scripts in global mode as the root
298 user.</p>
299
300 <h3 id="https-proxy">https-proxy</h3>
301
302 <ul><li>Default: the <code>HTTPS_PROXY</code> or <code>https_proxy</code> or <code>HTTP_PROXY</code> or
303 <code>http_proxy</code> environment variables.</li><li>Type: url</li></ul>
304
305 <p>A proxy to use for outgoing https requests.</p>
306
307 <h3 id="user-agent">user-agent</h3>
308
309 <ul><li>Default: node/{process.version} {process.platform} {process.arch}</li><li>Type: String</li></ul>
310
311 <p>Sets a User-Agent to the request header</p>
312
313 <h3 id="ignore">ignore</h3>
314
315 <ul><li>Default: &quot;&quot;</li><li>Type: string</li></ul>
316
317 <p>A white-space separated list of glob patterns of files to always exclude
318 from packages when building tarballs.</p>
319
320 <h3 id="init-module">init-module</h3>
321
322 <ul><li>Default: ~/.npm-init.js</li><li>Type: path</li></ul>
323
324 <p>A module that will be loaded by the <code>npm init</code> command.  See the
325 documentation for the
326 <a href="https://github.com/isaacs/init-package-json">init-package-json</a> module
327 for more information, or <a href="../cli/npm-init.html">npm-init(1)</a>.</p>
328
329 <h3 id="init-version">init.version</h3>
330
331 <ul><li>Default: &quot;0.0.0&quot;</li><li>Type: semver</li></ul>
332
333 <p>The value <code>npm init</code> should use by default for the package version.</p>
334
335 <h3 id="init-author-name">init.author.name</h3>
336
337 <ul><li>Default: &quot;&quot;</li><li>Type: String</li></ul>
338
339 <p>The value <code>npm init</code> should use by default for the package author&#39;s name.</p>
340
341 <h3 id="init-author-email">init.author.email</h3>
342
343 <ul><li>Default: &quot;&quot;</li><li>Type: String</li></ul>
344
345 <p>The value <code>npm init</code> should use by default for the package author&#39;s email.</p>
346
347 <h3 id="init-author-url">init.author.url</h3>
348
349 <ul><li>Default: &quot;&quot;</li><li>Type: String</li></ul>
350
351 <p>The value <code>npm init</code> should use by default for the package author&#39;s homepage.</p>
352
353 <h3 id="json">json</h3>
354
355 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
356
357 <p>Whether or not to output JSON data, rather than the normal output.</p>
358
359 <p>This feature is currently experimental, and the output data structures
360 for many commands is either not implemented in JSON yet, or subject to
361 change.  Only the output from <code>npm ls --json</code> is currently valid.</p>
362
363 <h3 id="link">link</h3>
364
365 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
366
367 <p>If true, then local installs will link if there is a suitable globally
368 installed package.</p>
369
370 <p>Note that this means that local installs can cause things to be
371 installed into the global space at the same time.  The link is only done
372 if one of the two conditions are met:</p>
373
374 <ul><li>The package is not already installed globally, or</li><li>the globally installed version is identical to the version that is
375 being installed locally.</li></ul>
376
377 <h3 id="loglevel">loglevel</h3>
378
379 <ul><li>Default: &quot;http&quot;</li><li>Type: String</li><li>Values: &quot;silent&quot;, &quot;win&quot;, &quot;error&quot;, &quot;warn&quot;, &quot;http&quot;, &quot;info&quot;, &quot;verbose&quot;, &quot;silly&quot;</li></ul>
380
381 <p>What level of logs to report.  On failure, <em>all</em> logs are written to
382 <code>npm-debug.log</code> in the current working directory.</p>
383
384 <p>Any logs of a higher level than the setting are shown.
385 The default is &quot;http&quot;, which shows http, warn, and error output.</p>
386
387 <h3 id="logstream">logstream</h3>
388
389 <ul><li>Default: process.stderr</li><li>Type: Stream</li></ul>
390
391 <p>This is the stream that is passed to the
392 <a href="https://github.com/isaacs/npmlog">npmlog</a> module at run time.</p>
393
394 <p>It cannot be set from the command line, but if you are using npm
395 programmatically, you may wish to send logs to somewhere other than
396 stderr.</p>
397
398 <p>If the <code>color</code> config is set to true, then this stream will receive
399 colored output if it is a TTY.</p>
400
401 <h3 id="long">long</h3>
402
403 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
404
405 <p>Show extended information in <code>npm ls</code></p>
406
407 <h3 id="message">message</h3>
408
409 <ul><li>Default: &quot;%s&quot;</li><li>Type: String</li></ul>
410
411 <p>Commit message which is used by <code>npm version</code> when creating version commit.</p>
412
413 <p>Any &quot;%s&quot; in the message will be replaced with the version number.</p>
414
415 <h3 id="node-version">node-version</h3>
416
417 <ul><li>Default: process.version</li><li>Type: semver or false</li></ul>
418
419 <p>The node version to use when checking package&#39;s &quot;engines&quot; hash.</p>
420
421 <h3 id="npat">npat</h3>
422
423 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
424
425 <p>Run tests on installation and report results to the
426 <code>npaturl</code>.</p>
427
428 <h3 id="npaturl">npaturl</h3>
429
430 <ul><li>Default: Not yet implemented</li><li>Type: url</li></ul>
431
432 <p>The url to report npat test results.</p>
433
434 <h3 id="onload-script">onload-script</h3>
435
436 <ul><li>Default: false</li><li>Type: path</li></ul>
437
438 <p>A node module to <code>require()</code> when npm loads.  Useful for programmatic
439 usage.</p>
440
441 <h3 id="optional">optional</h3>
442
443 <ul><li>Default: true</li><li>Type: Boolean</li></ul>
444
445 <p>Attempt to install packages in the <code>optionalDependencies</code> hash.  Note
446 that if these packages fail to install, the overall installation
447 process is not aborted.</p>
448
449 <h3 id="parseable">parseable</h3>
450
451 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
452
453 <p>Output parseable results from commands that write to
454 standard output.</p>
455
456 <h3 id="prefix">prefix</h3>
457
458 <ul><li>Default: see <a href="../files/npm-folders.html">npm-folders(5)</a></li><li>Type: path</li></ul>
459
460 <p>The location to install global items.  If set on the command line, then
461 it forces non-global commands to run in the specified folder.</p>
462
463 <h3 id="production">production</h3>
464
465 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
466
467 <p>Set to true to run in &quot;production&quot; mode.</p>
468
469 <ol><li>devDependencies are not installed at the topmost level when running
470 local <code>npm install</code> without any arguments.</li><li>Set the NODE_ENV=&quot;production&quot; for lifecycle scripts.</li></ol>
471
472 <h3 id="proprietary-attribs">proprietary-attribs</h3>
473
474 <ul><li>Default: true</li><li>Type: Boolean</li></ul>
475
476 <p>Whether or not to include proprietary extended attributes in the
477 tarballs created by npm.</p>
478
479 <p>Unless you are expecting to unpack package tarballs with something other
480 than npm -- particularly a very outdated tar implementation -- leave
481 this as true.</p>
482
483 <h3 id="proxy">proxy</h3>
484
485 <ul><li>Default: <code>HTTP_PROXY</code> or <code>http_proxy</code> environment variable, or null</li><li>Type: url</li></ul>
486
487 <p>A proxy to use for outgoing http requests.</p>
488
489 <h3 id="rebuild-bundle">rebuild-bundle</h3>
490
491 <ul><li>Default: true</li><li>Type: Boolean</li></ul>
492
493 <p>Rebuild bundled dependencies after installation.</p>
494
495 <h3 id="registry">registry</h3>
496
497 <ul><li>Default: https://registry.npmjs.org/</li><li>Type: url</li></ul>
498
499 <p>The base URL of the npm package registry.</p>
500
501 <h3 id="rollback">rollback</h3>
502
503 <ul><li>Default: true</li><li>Type: Boolean</li></ul>
504
505 <p>Remove failed installs.</p>
506
507 <h3 id="save">save</h3>
508
509 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
510
511 <p>Save installed packages to a package.json file as dependencies.</p>
512
513 <p>When used with the <code>npm rm</code> command, it removes it from the dependencies
514 hash.</p>
515
516 <p>Only works if there is already a package.json file present.</p>
517
518 <h3 id="save-bundle">save-bundle</h3>
519
520 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
521
522 <p>If a package would be saved at install time by the use of <code>--save</code>,
523 <code>--save-dev</code>, or <code>--save-optional</code>, then also put it in the
524 <code>bundleDependencies</code> list.</p>
525
526 <p>When used with the <code>npm rm</code> command, it removes it from the
527 bundledDependencies list.</p>
528
529 <h3 id="save-dev">save-dev</h3>
530
531 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
532
533 <p>Save installed packages to a package.json file as devDependencies.</p>
534
535 <p>When used with the <code>npm rm</code> command, it removes it from the devDependencies
536 hash.</p>
537
538 <p>Only works if there is already a package.json file present.</p>
539
540 <h3 id="save-optional">save-optional</h3>
541
542 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
543
544 <p>Save installed packages to a package.json file as optionalDependencies.</p>
545
546 <p>When used with the <code>npm rm</code> command, it removes it from the devDependencies
547 hash.</p>
548
549 <p>Only works if there is already a package.json file present.</p>
550
551 <h3 id="searchopts">searchopts</h3>
552
553 <ul><li>Default: &quot;&quot;</li><li>Type: String</li></ul>
554
555 <p>Space-separated options that are always passed to search.</p>
556
557 <h3 id="searchexclude">searchexclude</h3>
558
559 <ul><li>Default: &quot;&quot;</li><li>Type: String</li></ul>
560
561 <p>Space-separated options that limit the results from search.</p>
562
563 <h3 id="searchsort">searchsort</h3>
564
565 <ul><li>Default: &quot;name&quot;</li><li>Type: String</li><li>Values: &quot;name&quot;, &quot;-name&quot;, &quot;date&quot;, &quot;-date&quot;, &quot;description&quot;,
566 &quot;-description&quot;, &quot;keywords&quot;, &quot;-keywords&quot;</li></ul>
567
568 <p>Indication of which field to sort search results by.  Prefix with a <code>-</code>
569 character to indicate reverse sort.</p>
570
571 <h3 id="shell">shell</h3>
572
573 <ul><li>Default: SHELL environment variable, or &quot;bash&quot; on Posix, or &quot;cmd&quot; on
574 Windows</li><li>Type: path</li></ul>
575
576 <p>The shell to run for the <code>npm explore</code> command.</p>
577
578 <h3 id="shrinkwrap">shrinkwrap</h3>
579
580 <ul><li>Default: true</li><li>Type: Boolean</li></ul>
581
582 <p>If set to false, then ignore <code>npm-shrinkwrap.json</code> files when
583 installing.</p>
584
585 <h3 id="sign-git-tag">sign-git-tag</h3>
586
587 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
588
589 <p>If set to true, then the <code>npm version</code> command will tag the version
590 using <code>-s</code> to add a signature.</p>
591
592 <p>Note that git requires you to have set up GPG keys in your git configs
593 for this to work properly.</p>
594
595 <h3 id="strict-ssl">strict-ssl</h3>
596
597 <ul><li>Default: true</li><li>Type: Boolean</li></ul>
598
599 <p>Whether or not to do SSL key validation when making requests to the
600 registry via https.</p>
601
602 <p>See also the <code>ca</code> config.</p>
603
604 <h3 id="tag">tag</h3>
605
606 <ul><li>Default: latest</li><li>Type: String</li></ul>
607
608 <p>If you ask npm to install a package and don&#39;t tell it a specific version, then
609 it will install the specified tag.</p>
610
611 <p>Also the tag that is added to the package@version specified by the <code>npm
612 tag</code> command, if no explicit tag is given.</p>
613
614 <h3 id="tmp">tmp</h3>
615
616 <ul><li>Default: TMPDIR environment variable, or &quot;/tmp&quot;</li><li>Type: path</li></ul>
617
618 <p>Where to store temporary files and folders.  All temp files are deleted
619 on success, but left behind on failure for forensic purposes.</p>
620
621 <h3 id="unicode">unicode</h3>
622
623 <ul><li>Default: true</li><li>Type: Boolean</li></ul>
624
625 <p>When set to true, npm uses unicode characters in the tree output.  When
626 false, it uses ascii characters to draw trees.</p>
627
628 <h3 id="unsafe-perm">unsafe-perm</h3>
629
630 <ul><li>Default: false if running as root, true otherwise</li><li>Type: Boolean</li></ul>
631
632 <p>Set to true to suppress the UID/GID switching when running package
633 scripts.  If set explicitly to false, then installing as a non-root user
634 will fail.</p>
635
636 <h3 id="usage">usage</h3>
637
638 <ul><li>Default: false</li><li>Type: Boolean</li></ul>
639
640 <p>Set to show short usage output (like the -H output)
641 instead of complete help when doing <code><a href="../cli/npm-help.html">npm-help(1)</a></code>.</p>
642
643 <h3 id="user">user</h3>
644
645 <ul><li>Default: &quot;nobody&quot;</li><li>Type: String or Number</li></ul>
646
647 <p>The UID to set to when running package scripts as root.</p>
648
649 <h3 id="username">username</h3>
650
651 <ul><li>Default: null</li><li>Type: String</li></ul>
652
653 <p>The username on the npm registry.  Set with <code>npm adduser</code></p>
654
655 <h3 id="userconfig">userconfig</h3>
656
657 <ul><li>Default: ~/.npmrc</li><li>Type: path</li></ul>
658
659 <p>The location of user-level configuration settings.</p>
660
661 <h3 id="userignorefile">userignorefile</h3>
662
663 <ul><li>Default: ~/.npmignore</li><li>Type: path</li></ul>
664
665 <p>The location of a user-level ignore file to apply to all packages.</p>
666
667 <p>If not found, but there is a .gitignore file in the same directory, then
668 that will be used instead.</p>
669
670 <h3 id="umask">umask</h3>
671
672 <ul><li>Default: 022</li><li>Type: Octal numeric string</li></ul>
673
674 <p>The &quot;umask&quot; value to use when setting the file creation mode on files
675 and folders.</p>
676
677 <p>Folders and executables are given a mode which is <code>0777</code> masked against
678 this value.  Other files are given a mode which is <code>0666</code> masked against
679 this value.  Thus, the defaults are <code>0755</code> and <code>0644</code> respectively.</p>
680
681 <h3 id="version">version</h3>
682
683 <ul><li>Default: false</li><li>Type: boolean</li></ul>
684
685 <p>If true, output the npm version and exit successfully.</p>
686
687 <p>Only relevant when specified explicitly on the command line.</p>
688
689 <h3 id="versions">versions</h3>
690
691 <ul><li>Default: false</li><li>Type: boolean</li></ul>
692
693 <p>If true, output the npm version as well as node&#39;s <code>process.versions</code>
694 hash, and exit successfully.</p>
695
696 <p>Only relevant when specified explicitly on the command line.</p>
697
698 <h3 id="viewer">viewer</h3>
699
700 <ul><li>Default: &quot;man&quot; on Posix, &quot;browser&quot; on Windows</li><li>Type: path</li></ul>
701
702 <p>The program to use to view help content.</p>
703
704 <p>Set to <code>&quot;browser&quot;</code> to view html help content in the default web browser.</p>
705
706 <h3 id="yes">yes</h3>
707
708 <ul><li>Default: null</li><li>Type: Boolean or null</li></ul>
709
710 <p>If set to <code>null</code>, then prompt the user for responses in some
711 circumstances.</p>
712
713 <p>If set to <code>true</code>, then answer &quot;yes&quot; to any prompt.  If set to <code>false</code>
714 then answer &quot;no&quot; to any prompt.</p>
715
716 <h2 id="SEE-ALSO">SEE ALSO</h2>
717
718 <ul><li><a href="../cli/npm-config.html">npm-config(1)</a></li><li><a href="../misc/npm-config.html">npm-config(7)</a></li><li><a href="../files/npmrc.html">npmrc(5)</a></li><li><a href="../misc/npm-scripts.html">npm-scripts(7)</a></li><li><a href="../files/npm-folders.html">npm-folders(5)</a></li><li><a href="../cli/npm.html">npm(1)</a></li></ul>
719 </div>
720 <p id="footer">npm-config &mdash; npm@1.3.15</p>
721 <script>
722 ;(function () {
723 var wrapper = document.getElementById("wrapper")
724 var els = Array.prototype.slice.call(wrapper.getElementsByTagName("*"), 0)
725   .filter(function (el) {
726     return el.parentNode === wrapper
727         && el.tagName.match(/H[1-6]/)
728         && el.id
729   })
730 var l = 2
731   , toc = document.createElement("ul")
732 toc.innerHTML = els.map(function (el) {
733   var i = el.tagName.charAt(1)
734     , out = ""
735   while (i > l) {
736     out += "<ul>"
737     l ++
738   }
739   while (i < l) {
740     out += "</ul>"
741     l --
742   }
743   out += "<li><a href='#" + el.id + "'>" +
744     ( el.innerText || el.text || el.innerHTML)
745     + "</a>"
746   return out
747 }).join("\n")
748 toc.id = "toc"
749 document.body.appendChild(toc)
750 })()
751 </script>