Installation
En utilisant un script autonome
Vous pouvez installer pnpm même si vous n'avez pas installé Node.js, en utilisant les scripts suivants.
Sur Windows
En utilisant PowerShell:
iwr https://get.pnpm.io/install.ps1 -useb | iex
POSIX :
curl -fsSL https://get.pnpm.io/install.sh | sh -
Si vous n'avez pas installé curl, vous pouvez utiliser wget:
wget -qO- https://get.pnpm.io/install.sh | sh -
Sur Alpine Linux
# bash
wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.bashrc" SHELL="$(which bash)" bash -
# sh
wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.shrc" SHELL="$(which sh)" sh -
# dash
wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.dashrc" SHELL="$(which dash)" dash -
Prérequis
Si vous n'utilisez pas le script autonome pour installer pnpm, vous devez installer Node.js (au moins v14) sur votre système.
Installation d'une version spécifique
Avant d'exécuter le script d'installation, vous pouvez éventuellement définir une variable d'environnement PNPM_VERSION
pour installer une version spécifique de pnpm :
curl -fsSL https://get.pnpm.io/install.sh | env PNPM_VERSION=<version> sh -
Vous pouvez ensuite utiliser la commande pnpm env pour installer Node.js.
En utilisant Corepack
Depuis la v16.13, Node.js propose Corepack pour gérer les gestionnaires de paquets. Il s'agit d'une fonctionnalité expérimentale, vous devez donc l'activer en exécutant :
corepack enable
Si vous avez installé Node.js avec Homebrew, vous devrez installer corepack séparément :
brew install corepack
Cela installera automatiquement pnpm sur votre système. Cependant, ce ne sera probablement pas la dernière version de pnpm. Pour mettre à jour pnpm, vérifiez quelle est la dernière version de pnpm et exécutez :
corepack prepare pnpm@<version> --activate
Avec Node.js v16.17 ou plus récent, vous pouvez installer la dernière version
de pnpm en spécifiant simplement le tag :
corepack prepare pnpm@latest --activate
En utilisant npm
npm install -g pnpm
En utilisant Homebrew
Si vous avez le gestionnaire de paquets installé, vous pouvez installer pnpm en utilisant la commande suivante :
brew install pnpm
En utilisant Scoop
Si vous avez installé Scoop, vous pouvez installer pnpm à l'aide de la commande suivante :
scoop install nodejs-lts pnpm
Voulez-vous utiliser pnpm sur des serveurs de CI ? Voir : Intégration Continue (CI).
Compatibilité
Voici une liste des précédentes versions de pnpm avec les versions respectivement supportées de Node.js.
Node.js | pnpm 4 | pnpm 5 | pnpm 6 | pnpm 7 |
---|---|---|---|---|
Node.js 10 | ✔️ | ✔️ | ❌ | ❌ |
Node.js 12 | ✔️ | ✔️ | ✔️ | ❌ |
Node.js 14 | ✔️ | ✔️ | ✔️ | ✔️ |
Node.js 16 | ?️ | ?️ | ✔️ | ✔️ |
Node.js 18 | ?️ | ?️ | ✔️ | ✔️ |
Dépannage
Si pnpm est cassé et que vous ne pouvez pas le réparer en réinstallant, cela pourrait nécessiter de le supprimer manuellement du PATH.
Imaginez que vous rencontriez l'erreur suivante lorsque vous lancez pnpm install
:
C:\src>pnpm install
internal/modules/cjs/loader.js:883
throw err;
^
Error: Cannot find module 'C:\Users\Bence\AppData\Roaming\npm\pnpm-global\4\node_modules\pnpm\bin\pnpm.js'
←[90m at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)←[39m
←[90m at Function.Module._load (internal/modules/cjs/loader.js:725:27)←[39m
←[90m at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)←[39m
←[90m at internal/main/run_main_module.js:17:47←[39m {
code: ←[32m'MODULE_NOT_FOUND'←[39m,
requireStack: []
}
Premièrement, essayez de trouver l'emplacement de pnpm en lançant : which pnpm
. Si vous êtes sur Windows, exécutez la commande dans Git Bash. Vous obtiendrez l'emplacement de la commande pnpm :
$ which pnpm
/c/Program Files/nodejs/pnpm
Maintenant que vous savez où se trouve l'interface de ligne de commande pnpm, ouvrez ce répertoire et supprimez tous les fichiers liés à pnpm (pnpm.cmd
, pnpx.cmd
, pnpm
, etc). Une fois terminé, réinstallez pnpm et cela devrait fonctionner comme prévu.
Utiliser un alias plus court
pnpm
peut être difficile à taper, donc vous pouvez utiliser un alias plus court comme pn
à la place.
Ajout d'un alias permanent sur les systèmes POSIX
Mettez simplement la ligne suivante dans votre .bashrc
, .zshrc
ou config.fish
:
alias pn=pnpm
Ajout d'un alias permanent dans Powershell (Windows):
Dans une fenêtre Powershell avec les droits d'administrateur, exécutez :
notepad $profile.AllUsersAllHosts
Dans le fichier profile.ps1
qui s'ouvre, put:
set-alias -name pn -value pnpm
Enregistrez le fichier et fermez la fenêtre. Vous devrez peut-être fermer toutes les fenêtres Powershell ouvertes pour que l'alias prenne effet.
Désinstaller pnpm
Si vous devez désinstaller le CLI pnpm de votre système ainsi que tous les fichiers qu'il a écrits sur votre disque, consultez Désinstallation de pnpm.