Je možné nastaviť globálnu npm konfiguráciu pomocou prepínača global
# krátka verzia
npm config set init-version "0.0.1" -g
# dlhá verzia
npm config set init-version "0.0.1" --global
Umiestnenie globálnej npm konfigurácie v nvm je viazané na verziu node, čo ju robí nevhodnou pre dotfiles
$ npm config get prefix
/home/peterbabic/.nvm/versions/node/v15.4.0
Skutočné umiestnenie súboru je teda
{prefix}/etc/npmrc^[https://docs.npmjs.com/cli/v6/using-npm/config#globalconfig]
/home/peterbabic/.nvm/versions/node/v15.4.0/etc/npmrc
Pri inštalácii novej verzie node pomocou nvm je potrebné konfiguračný súbor skopírovať
nvm install 15.4
cp ~/.nvm/versions/node/v14.9.0/etc/npmrc ~/.nvm/versions/node/v15.4.0/etc/npmrc
Bez globálneho nastavenia #
Tu je postup, ako ukladám npm konfiguráciu medzi dotfiles, pomocou tzv.
userconfig
namiesto globálnej konfigurácie
- Nainštalujte nvm
sudo pacman -S nvm
- Nainštalujte verziu node podľa vlastného výberu, napr. stabilnú verziu^[https://github.com/nvm-sh/nvm#usage]
nvm install stable
- Nakonfigurujte počiatočné hodnoty
npm config set init-version "0.0.1"
npm config set init-author-email "[email protected]"
npm config set init-author-name "Peter Babič"
npm config set init-license "MIT"
npm config set init-author-url "https://peterbabic.com"
Prípadne vložte hodnoty do ~/.npmrc manuálne
init-author-name=Peter Babič
init-version=0.0.1
init-author-email[email protected]
init-license=MIT
init-author-url=https://peterbabic.com
- Uložte súbor medzi dotfiles, napr. cez yadm
yadm add ~/.npmrc && yadm commit
- Inicializujte projekt s výzvou na zadanie hodnôt
npm init -y
Vygeneruje predkonfigurovaný súbor package.json rovno, šetrí čas
{
"name": "project",
"version": "0.0.1",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "Peter Babič <[email protected]> (https://peterbabic.com/)",
"license": "MIT"
}
Použité verzie pre úplnosť
$ nvm --version
0.35.2
$ npm --version
7.0.15
$ node --version
v15.4.0
$ yay -Qi yadm | grep Version
Version : 2.5.0-1