Npm: отключить postinstall script для пакета

Есть ли какой-либо параметр npm для отключения postinstall script при установке пакета? Или для перезаписи любого поля из package.json?

Ответ 1

Невозможно отключить только скрипты postinstall. Однако вы можете отключить все сценарии, используя:

$ npm install --ignore-scripts

Как упоминается в комментариях delbertooo, это также отключает скрипты зависимостей.

Ответ 2

Чтобы сделать это для вашей собственной библиотеки, я рекомендую что-то простое:

#!/usr/bin/env bash

## this is your postinstall.sh script:

set -e;

if [ "$your_pkg_skip_postinstall" == "yes" ]; then
  echo "skipping your package postinstall routine.";
  exit 0;
fi

затем выполните установку npm с помощью:

your_pkg_skip_postinstall="yes" npm install