1
mirror of https://github.com/jakejarvis/dotfiles.git synced 2025-04-26 03:45:21 -04:00
dotfiles/npm/npm-globals.sh
2021-03-17 10:57:41 -04:00

25 lines
690 B
Bash
Executable File

#!/usr/bin/env bash
### Install global npm packages listed in npm-globals.txt
# https://github.com/br3ndonland/dotfiles/blob/main/script/npm-globals.sh
set -euo pipefail
package_dir="$(npm config get prefix)/lib"
packages=$(npm ls -g --parseable --depth=0)
packages=${packages//$package_dir\/node_modules\//}
echo "* Installing global npm packages..."
while read -r p; do
installed=$(echo "$packages" | grep -ce "^$p\$")
if [ "$installed" == "0" ]; then
echo "Installing $p..."
npm install -g "$p" || echo "!! Error: package $p not found in npm."
else
echo "$p is already installed."
fi
done <~/.dotfiles/npm/npm-globals.txt
echo "* Done installing npm packages."