Skip to content
Browse files

Write builtin config with ./configure script

  • Loading branch information...
1 parent bbf5dfc commit ca71fc956dd589511d5258d3906a01edcd68555c @isaacs isaacs committed
Showing with 7 additions and 13 deletions.
  1. +7 −13 configure
20 configure
@@ -1,10 +1,15 @@
-# this is a wicked hack, but whatever.
+# set configurations that will be "sticky" on this system,
+# surviving npm self-updates.
+# get the location of this file.
+unset CDPATH
+CONFFILE=$(cd $(dirname "$0"); pwd -P)/npmrc
while [ $# -gt 0 ]; do
case $conf in
@@ -23,17 +28,6 @@ while [ $# -gt 0 ]; do
-# Pull in submodules, since npm can't work without them.
-if [ -d .git ]; then
- git submodule update --init --recursive
for c in "${CONFIGS[@]}"; do
- echo '+node ./bin/npm.js config set "'"$c"'"'
- node ./bin/npm.js config set "$c"
+ echo "$c" >> "$CONFFILE"
-echo +node ./bin/npm.js config ls
-node ./bin/npm.js config ls

2 comments on commit ca71fc9


Some feedback :

  • make clean should remove npmrc
  • if configure is called twice, npmrc has repeated config (could be zeroed before the for.. loop)
npm member

make clean

Agreed. 26e4f5c

double configure

That's fine. The later settings will just override earlier ones, and npm will write standard ini output the first time it has to write the file.

Please sign in to comment.
Something went wrong with that request. Please try again.