「Node.js パッケージガイドライン」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎Source: 翻訳)
(→‎npm を使う: 情報を更新)
19行目: 19行目:
 
== npm を使う ==
 
== npm を使う ==
   
{{Pkg|npm}} を使てインストールする場合、''npm'' をビルドの依存パッケージに追加してください:
+
[[npm]] を使用してインストールする場合、ビルドの依存関係として追加します。
   
 
makedepends=('npm')
 
makedepends=('npm')
   
  +
通常、tarball を抽出する必要は、ありません。
以下は最小の {{ic|package}} 関数です:
 
   
  +
noextract=("${_pkgname}-${pkgver}.tgz")
{{bc|
 
  +
  +
これは最小限の [[パッケージの作成#関数 package()|package]] 関数です。
  +
  +
{{bc|<nowiki>
 
package() {
 
package() {
cd $srcdir/$pkgname-$pkgver
+
npm install -g --prefix "${pkgdir}/usr" "${srcdir}/${_pkgname}-${pkgver}.tgz"
  +
npm install -g --user root --prefix "$pkgdir"/usr
 
  +
# npm gives ownership of ALL FILES to build user
  +
# https://bugs.archlinux.org/task/63396
  +
chown -R root:root "${pkgdir}"
 
}
 
}
  +
</nowiki>}}
}}
 
   
 
=== 一時キャッシュの設定 ===
 
=== 一時キャッシュの設定 ===

2023年6月26日 (月) 21:30時点における版

このドキュメントは Node.js パッケージの PKGBUILD を書くときの決まり事とガイドラインを載せています。

パッケージの命名規則

ヒント: A custom _pkgname variable can be used instead of pkgname. This variable can generically be defined as follows: _pkgname=${pkgname#nodejs-}

パッケージの名前には最初に nodejs- を付ける必要があります。

ソース

npm は、ダウンロード URL の安定した命名スキームを提供します。PKGBUILD#ソース source=() 配列では、次の URL テンプレートを使用できます。

https://registry.npmjs.org/$_pkgname/-/$_pkgname-$pkgver.tgz

npm を使う

npm を使用してインストールする場合は、ビルドの依存関係として追加します。

makedepends=('npm')

通常、tarball を抽出する必要は、ありません。

noextract=("${_pkgname}-${pkgver}.tgz")

これは最小限の package 関数です。

package() {
    npm install -g --prefix "${pkgdir}/usr" "${srcdir}/${_pkgname}-${pkgver}.tgz"

    # npm gives ownership of ALL FILES to build user
    # https://bugs.archlinux.org/task/63396
    chown -R root:root "${pkgdir}"
}

一時キャッシュの設定

npm は package.json を処理するときにパッケージをビルドするのに必要なパッケージをデフォルトのキャッシュフォルダ $HOME/.npm にダウンロードします。ユーザーのホームフォルダに手を加えないようにするために、--cache フラグでキャッシュフォルダを一時的に設定すると良いでしょう。

依存パッケージを ${srcdir}/npm-cache にダウンロードするには:

npm install --cache "${srcdir}/npm-cache" 

それから通常通りにパッケージ化してください:

npm run packager