非公式ユーザーリポジトリ/ArchHaskell

提供: ArchWiki
2015年2月16日 (月) 12:39時点におけるKusakata (トーク | 投稿記録)による版 (ページの作成:「Category:パッケージ開発 en:ArchHaskell ArchHaskell は Arch Linux コミュニティに Haskell パッケージを提供するグループです。目...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

ArchHaskell は Arch Linux コミュニティに Haskell パッケージを提供するグループです。目標は Hackage の全てをバイナリパッケージとして簡単にインストールできるようにすることです。

リソース

The main resources for the ArchHaskell community to interact and discuss are:

メンバーシップ

Membership is not required at all in order to contribute. Just fork the relevant repository, make some changes, and file a pull request.

There are currently two people with commit rights to the ArchHaskell repository at GitHub:

  • Magnus Therning
  • Leif Warner

利用可能なリポジトリ

[haskell-core]

The [haskell-core] repository is the base repository of packages maintained by the ArchHaskell team. [haskell-core] can be accessed by adding the following entry to /etc/pacman.conf (above [extra]):

[haskell-core]
Server = http://xsounds.org/~haskell/core/$arch

or

[haskell-core]
Server = http://www.kiwilight.com/haskell/core/$arch

The set of packages in the [haskell-core] repository is derived from the habs tree officially located here. A tool called cblrepo is used to keep the habs tree synchronized with the official Haskell packages from Hackage.

警告: Placing [haskell-core] above [extra] will cause packages from [haskell-core] to take precedence, and avoid dependency conflicts in case of duplicate packages. Overriding official repositories is however not supported.

The repositories provide both file listings (by using repo-add --files), package deltas (repo-add --delta), and both packages and the database are signed. The fingerprint of the key used for signing is:

 pub   2048D/4209170B 2012-12-26
       Key fingerprint = F310 4992 EBF2 4EB8 72B9  7B9C 32B0 B453 4209 170B
 uid                  ArchHaskell (Magnus Therning) <magnus@therning.org>
 sub   2048D/A418C0FE 2012-12-26

If you use SigLevel = Required TrustedOnly in /etc/pacman.conf for [haskell-core], then you need to do the following to add Magnus Therning's key:

 # pacman-key -r 4209170B
 # pacman-key --lsign-key 4209170B

Force a refresh of all package lists:

 # pacman -Syy

[haskell-happstack]

The [haskell-happstack] repository contains packages for web development based on the Happstack framework. It requires [haskell-core], and includes most of the Happstack packages in HackageDB, plus Gitit (package name haskell-gitit) and clckwrks, all their dependencies not in [haskell-core] and some other not web related packages. To enable the repository, add the following entry to /etc/pacman.conf:

 [haskell-happstack]
 Server = http://noaxiom.org/$repo/$arch

Add and sign the maintainer's key:

 # pacman-key -r B0544167
 # pacman-key --lsign-key B0544167

Bug reports and feature requests in GitHub.

[haskell-web]

ノート: The [haskell-web] repository is not maintained anymore. If you wish to help, please send a mail to the list or use the IRC channel.

The repository was built on [haskell-core], providing several more packages, especially those useful for web applications.

[haskell-web]
Server = http://archhaskell.mynerdside.com/$repo/$arch

ArchHaskell への貢献

コミュニティ

See the ArchHaskell community page and get in touch via the mailing list or the IRC channel.

概要

The plan is to have one user-facing repository, [haskell], which merges the packages available in various satellite repositories (like [haskell-web]), thereby distributing the maintenance load. One satellite repo is special, the [haskell-core] repository, which provides packages that are dependencies of all the other satellites.

[haskell-core] のメンテナンス

Ensure:

  • [haskell-core] is an Arch repo hosted at kiwilight and xsounds.
  • [haskell-core] is in sync with the habs cblrepo database.

他のリポジトリのメンテナンス

For example, for haskell-foo, ensure:

  • haskell-foo is a cblrepo database, possibly using packages from [haskell-core] as DistroPkgs.
  • Whenever [haskell-core] is updated, haskell-foo's database is updated to match within a reasonable time.

トラブルシューティング

ArchHaskell リポジトリに切り替える

There can be some problems switching to ArchHaskell repository when some Haskell packages are already installed from official repositories. The surest way is to remove all Haskell related packages, synchronize the pacman packages database, and reinstall all the needed packages. Also for Xmonad users, be sure to install haskell-xmonad package instead of xmonad.