نصب بسته در npm بدون sudo
یه مشکلی که من باهاش در اولین برخوردم با npm داشتم نصب پکیج های گلوبال بود که حتما باید از دستور sudo استفاده می کردم که راه معقولی نبود و با کمی تحقیق فهمیدم که میشه این مشکل رو خیلی راحت و با چند تا دستور ساده حل کرد.
اول از همه یه دایرکتوری میسازیم که npm اون رو به دیفالت خودش تغییر بعد باید اون رو به npm معرفی کنیم و همچنین لازمه که دایرکتوری bin که داخل .npm که ساختیم رو به PATH اضافه کنیم توی دایرکتوری bin فایل های اجرایی پکیج هایی که نصب میکنیم قرار داره. پس دستوری های زیر رو خط به خط توی ترمینال خودتون اجرا کنید:
کاری که باید بکنیم اینکه یه دایرکتوری بسازیم به اسم .npm-global یا هر اسم دیگه ای که دوست دارید و بعدش به npm بگیم از این به بعد بسته هایی که نصب می کنی رو اینجا نصب کن، به همین سادگی و برای سادگی بیشتر کار کافیه که کد هایی که گذاشتم رو داخل ترمینال کپی/پیست کنید.
توجه کنید بجای .bashrc اگه از zsh استفاده می کنید .zshrc بزارید و اگه از fish استفاده می کیند مسیر کانفیگ fish خودتون رو بنویسید.
mkdir ~/.npm
npm config set prefix ~/.npm
echo export PATH="$PATH:$HOME/.npm/bin" >> .bashrc
source ~/.bashrc
اینطوری میشه که نصب بسته در npm بدون sudo امکان پذیر میشه.