Я намагаюся якомога більше використовувати домашню капусту. Який запропонований спосіб встановити наступне на OS X?
і, сподіваємось, підтримує розвиток для:
Я намагаюся якомога більше використовувати домашню капусту. Який запропонований спосіб встановити наступне на OS X?
і, сподіваємось, підтримує розвиток для:
Відповіді:
Використання homebrew
встановлення nvm
:
brew update
brew install nvm
source $(brew --prefix nvm)/nvm.sh
Додайте останню команду до .profile
, .bashrc
або.zshrc
файл не запускати його знову на кожному запуску терміналу. Так, наприклад, додати його до .profile
запуску:
echo "source $(brew --prefix nvm)/nvm.sh" >> ~/.profile
Якщо у вас виникли проблеми з установкою nvm
використанняbrew
ви можете встановити його вручну (див тут )
Використовуючи nvm
встановити node
або iojs
(ви можете встановити будь-яку бажану версію):
nvm install 0.10
# or
nvm install iojs-1.2.0
npm
доставляється з node
(або iojs
), тому він буде доступний після встановлення node
(або iojs
). Ви можете оновити його до останньої версії:
$ npm install -g npm@latest
UPD Попередня версія була . Дякуємо @Metallica за вказівку на правильний шлях (дивіться коментар нижче).npm update -g npm
Використання npm
встановлення ionic
:
npm install -g ionic
Як щодо ngCordova
: ви можете встановити його за допомогою npm
або bower
. Я не знаю, який варіант вам більше підходить, це залежить від менеджера пакунків, який ви хочете використовувати для клієнта. Тому я опишу їх обох:
Використанняnpm
: Перейдіть до папки свого проекту та встановіть ng-cordova
у ній:
npm install --save ng-cordova
Використання bower
: Встановіть ящик:
npm install -g bower
А потім перейдіть до папки свого проекту та встановіть ngCordova
у ній:
bower install --save ngCordova
PS
npm install some_module
єnpm i some_module
npm install -g npm@latest
(від brew info node
і тут )
У більшості відповідей рекомендованим способом встановлення nvm є використання Homebrew
Не роби цього
На сторінці Github для nvm чітко викликано:
Встановлення домашнього перекладу не підтримується. Якщо у вас виникли проблеми з nvm, встановленим homebrew, будь-ласка, заваріть видалення та встановіть його, використовуючи наведені нижче інструкції, перш ніж подавати проблему.
Замість цього використовуйте наступний метод
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
Сценарій клонує сховище nvm до ~ / .nvm і додає вихідний рядок до вашого профілю (~ / .bash_profile, ~ / .zshrc, ~ / .profile або ~ / .bashrc).
А потім використовуйте nvm для встановлення вузла. Наприклад, щоб встановити останню версію LTS:
nvm install v8.11.1
Чисті та клопоти безкоштовно. Це також позначить це як вашу версію вузла за замовчуванням, тому вам слід налаштувати все
nvm install --lts
могли отримати останній LTS
Я використовую n (керування версіями вузла)
Встановити його можна двома способами
brew install n
або
npm install -g n
Ви можете перемикатися між різними версіями вузла та io. Ось приклад з мого поточного оточення, коли я телефоную n без парам:
$ n
io/3.3.1
node/0.12.7
node/4.0.0
node/5.0.0
ο node/5.10.1
Я дуже спізнився з цим, але мені не сподобалися інші відповіді
Для заварювання бігайте
"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Ви НЕ ПОВИННІ використовувати brew
для установки вузла і НПМ .
Я бачив у кількох місцях, що пропонують використовувати Homebrew для встановлення вузла (як відповідь alexpods та в цьому блозі Team Treehouse blog ), але встановивши таким чином, ви більш схильні до виникнення проблем, як npm
і brew
обидва менеджери пакунків, і вам слід мати менеджер пакунків керувати іншим менеджером пакунків, це призводить до проблем, наприклад, ця помилка офіційних проблем npm Помилка: Відмова від видалення: / usr / local / bin / npm або не вдається видалити модуль npm на OSX
Більше про цю тему можна прочитати у публікації DanHerbert Fixing npm on Mac OS X for Homebrew Users , де він продовжує говорити
Крім того, використання Homebrew установки npm вимагатиме використання sudo під час встановлення глобальних пакетів. Оскільки однією з основних ідей Homebrew є те, що програми можна встановлювати, не надаючи їм кореневого доступу, це погана ідея.
Я б використовував npm; але ви дійсно повинні просто слідувати інструкції по встановленню для кожного модуля, дотримуючись вказівок на веб-сайті, оскільки вони будуть більш обізнані про будь-яку проблему чи помилку, ніж будь-хто інший
Якщо ви раніше встановили вузол за допомогою варіння, то у вас з'явиться купа додаткових файлів, які слід очистити перед установкою вузла "правильним способом". Крім того, мені довелося додати кілька налаштувань до мого сценарію запуску, щоб зробити роботу безперебійною.
Я написав сценарій, щоб зробити це легко.
# filename: install-nvm-npm-node
# author: Lex Sheehan
# purpose: To cleanly install NVM, NODE and NPM
# dependencies: brew
NOW=$(date +%x\ %H:%M:%S)
CR=$'\n'
REV=$(tput rev)
OFF=$(tput sgr0)
BACKUP_DIR=$HOME/backups/nvm-npm-bower-caches/$NOW
MY_NAME=$(basename $0)
NODE_VER_TO_INSTALL=$1
if [ "$NODE_VER_TO_INSTALL" == "" ]; then
NODE_VER_TO_INSTALL=v0.12.2
fi
if [ "`echo "$NODE_VER_TO_INSTALL" | cut -c1-1`" != "v" ]; then
echo """$CR""Usage: $ $MY_NAME <NODE_VERSION_TO_INSALL>"
echo "Example: $ $MY_NAME v0.12.1"
echo "Example: $ $MY_NAME $CR"
exit 1
fi
echo """$CR""First, run: $ brew update"
echo "Likely, you'll need to do what it suggests."
echo "Likely, you'll need to run: $ brew update$CR"
echo "To install latest node version, run the following command to get the latest version: $ nvm ls-remote"
echo "... and pass the version number you want as the only param to $MY_NAME. $CR"
echo "Are you ready to install the latest version of nvm and npm and node version $NODE_VER_TO_INSTALL ?$CR"
echo "Press CTL+C to exit --or-- Enter to continue..."
read x
echo """$REV""Uninstalling nvm...$CR$OFF"
# Making backups, but in all likelyhood you'll just reinstall them (and won't need these backups)
if [ ! -d "$BACKUP_DIR" ]; then
echo "Creating directory to store $HOME/.nvm .npm and .bower cache backups: $BACKUP_DIR"
mkdir -p $BACKUP_DIR
fi
set -x
mv $HOME/.nvm $BACKUP_DIR 2>/dev/null
mv $HOME/.npm $BACKUP_DIR 2>/dev/null
mv $HOME/.bower $BACKUP_DIR 2>/dev/null
{ set +x; } &>/dev/null
echo "$REV""$CR""Uninstalling node...$CR$OFF"
echo "Enter your password to remove user some node-related /usr/local directories"
set -x
sudo rm -rf /usr/local/lib/node_modules
rm -rf /usr/local/lib/node
rm -rf /usr/local/include/node
rm -rf /usr/local/include/node_modules
rm /usr/local/bin/npm
rm /usr/local/lib/dtrace/node.d
rm -rf $HOME/.node
rm -rf $HOME/.node-gyp
rm /opt/local/bin/node
rm /opt/local/include/node
rm -rf /opt/local/lib/node_modules
rm -rf /usr/local/Cellar/nvm
brew uninstall node 2>/dev/null
{ set +x; } &>/dev/null
echo "$REV""$CR""Installing nvm...$CR$OFF"
echo "++brew install nvm"
brew install nvm
echo '$(brew --prefix nvm)/nvm.sh'
source $(brew --prefix nvm)/nvm.sh
echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc):$CR$OFF"
echo "export NVM_DIR=\"\$(brew --prefix nvm)\"; [ -s \"\$NVM_DIR/nvm.sh\" ] && . \"\$NVM_DIR/nvm.sh\"$CR"
NVM_DIR="$(brew --prefix nvm)"
echo """$CR""Using nvm install node...$CR"
echo "++ nvm install $NODE_VER_TO_INSTALL"
nvm install $NODE_VER_TO_INSTALL
NODE_BINARY_PATH="`find /usr/local/Cellar/nvm -name node -type d|head -n 1`/$NODE_VER_TO_INSTALL/bin"
echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc) and then restart your shell:$CR$OFF"
echo "export PATH=\$PATH:$NODE_BINARY_PATH:$HOME/.node/bin"
echo """$CR""Upgrading npm...$CR"
echo '++ install -g npm@latest'
npm install -g npm@latest
{ set +x; } &>/dev/null
echo "$REV""$CR""Insert following line in your $HOME/.npmrc file:$OFF"
echo """$CR""prefix=$HOME/.node$CR"
echo "Now, all is likley well if you can run the following without errors: npm install -g grunt-cli$CR"
echo "Other recommended global installs: bower, gulp, yo, node-inspector$CR"
Я написав коротку статтю тут , що деталі , чому це «правильний шлях».
Якщо вам потрібно встановити iojs, зробіть це за допомогою nvm так:
nvm install iojs-v1.7.1
Щоб встановити варити, просто перегляньте його домашню сторінку .
Дивіться відповіді алексоподів.
Вам слід встановити node.js за допомогою nvm, оскільки таким чином вам не потрібно надавати привілеї суперпользователя при встановленні глобальних пакетів (ви можете просто виконати "npm install -g ім'я пакета", не попереджуючи "sudo").
Однак Brew є фантастичним для інших речей. Я схильний бути упередженим по відношенню до Bower, коли я маю можливість встановити щось із Bower.
Я погоджуюся з noa - якщо вам потрібно мати кілька версій node
, io.js
то варити не є відповідним рішенням.
Ви можете допомогти підтримці бета-тесту io.js
в nvm: https://github.com/creationix/nvm/pull/616
Якщо ви просто хочете io.js
і не перемикаєте версії, то ви можете встановити бінарний розподіл io.js
з https://iojs.org/dist/v1.0.2/iojs-v1.0.2-darwin-x64.tar.gz ; що включає npm
і вам не знадобиться, nvm
якщо ви не перемикаєте версії.
Не забудьте оновити npm
після встановлення:sudo npm install -g npm@latest
Ось що я роблю:
curl https://raw.githubusercontent.com/creationix/nvm/v0.20.0/install.sh | bash
cd / && . ~/.nvm/nvm.sh && nvm install 0.10.35
. ~/.nvm/nvm.sh && nvm alias default 0.10.35
Для цього немає домашнього мовлення.
nvm
незабаром підтримає io.js, але не під час публікації: https://github.com/creationix/nvm/isissue/590
Потім інсталюйте все інше, за проектом, з package.json
та npm install
.
Для встановлення з zsh та Homebrew:
brew install nvm
Потім додайте до ~ / .zshrc або потрібний файл конфігурації оболонки:
export NVM_DIR="$HOME/.nvm"
. "/usr/local/opt/nvm/nvm.sh"
Потім встановіть версію вузла і використовуйте її.
nvm install 7.10.1
nvm use 7.10.1