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

提供: ArchWiki
ナビゲーションに移動 検索に移動
(ソースを翻訳して追加)
(リビルドの順番を翻訳して追加)
21行目: 21行目:
   
 
_hkgname=stm-delay
 
_hkgname=stm-delay
  +
  +
== リビルドの順番 ==
  +
  +
Haskell ライブラリがビルドフラグを変更したり更新された場合、依存するパッケージはすべてリビルドする必要があります。[https://github.com/felixonmars/archlinux-futils/blob/master/genrebuild genrebuild] ツールは、何がどのようにリビルドされる必要があるかを調べるために使用できます。使用例です。
  +
  +
$ ./genrebuild -H haskell-basement
   
 
== cblrepo ==
 
== cblrepo ==

2022年2月21日 (月) 13:14時点における版

このドキュメントでは Arch で良質な Haskell パッケージを作成するための決まり事とガイドラインを説明しています。

パッケージの命名

Haskell ライブラリには haskell-libraryname を使用し、通常は hackage と同じ名前を使用します。

ノート: パッケージ名はすべて小文字にする必要があります

ソース

Haskell のプログラムやライブラリのソースは、hackage が好ましいです。PKGBUILD#source にあります。source=() 配列は、以下の URL テンプレートを使用してください。

https://hackage.haskell.org/packages/archive/$_hkgname/$pkgver/$_hkgname-$pkgver.tar.gz

Haskell のパッケージは一般的に haskell- という接頭辞が付くため、hkgname の代わりにカスタム変数 _hkgname が使用されることに注意してください。この変数は一般的に以下のように定義することができます。

_hkgname=stm-delay

リビルドの順番

Haskell ライブラリがビルドフラグを変更したり更新された場合、依存するパッケージはすべてリビルドする必要があります。genrebuild ツールは、何がどのようにリビルドされる必要があるかを調べるために使用できます。使用例です。

$ ./genrebuild -H haskell-basement

cblrepo

cblrepo を使うことで cabal ビルドファイルから Arch パッケージを自動的に作成することができます。基本的に、一つのパッケージ (PKGBUILD) に一つの .cabal ファイルが存在するようにしてください。PKGBUILD は以下のように生成できます:

$ cblrepo pkgbuild yesod