Files
MacNix-config/modules/darwin/npm.nix
T

31 lines
810 B
Nix

{ lib, pkgs }:
let
npmPackages = [
"@enact/cli"
"@webos-tools/cli"
"@anthropic-ai/claude-code"
"patch-package"
];
in
lib.hm.dag.entryAfter [ "writeBoundary" ] ''
# Ensure required npm CLI tools are installed in the user prefix.
NPM_BIN="${pkgs.nodejs}/bin/npm"
export NPM_CONFIG_PREFIX="$HOME/.npm-packages"
export PATH="${pkgs.nodejs}/bin:$NPM_CONFIG_PREFIX/bin:$PATH"
if [[ ! -x "$NPM_BIN" ]]; then
echo "npm not found; skipping npm CLI installation step"
exit 0
fi
for pkg in ${lib.concatStringsSep " " (map lib.escapeShellArg npmPackages)}; do
if "$NPM_BIN" list -g --depth=0 "$pkg" >/dev/null 2>&1; then
echo "npm package already installed: $pkg"
else
echo "installing npm package: $pkg"
"$NPM_BIN" install -g "$pkg"
fi
done
''