|Description||Support Haskell programming language ecosystem on Gentoo systems.|
|Parent Project||Gentoo Programming Language Support Project|
The Haskell project maintains the packages for Haskell implementations, libraries, and development tools. We support GHC, Hugs, and Helium though GHC is the best supported. The library packages work only with GHC.
There is an overlay where we work on Haskell ebuilds before getting them into the main Portage CVS tree. You can get the overlay using layman.
All development discussion takes place on the #gentoo-haskell IRC channel. This channel is the appropriate place to report bugs in packages that are in the overlay. They should not be reported in Bugzilla, that's the place to report bugs about packages in the main portage CVS tree.
Further instructions and tips can be found in the Haskell article.
All developers can be reached by e-mail using email@example.com.
The Haskell project maintains the following herds:
|haskell||gienah, qnikst, slyfox, cynede, vikraman||Compilers, libraries and apps related to the programming language Haskell|
While adding new packages to the tree overlay we follow next rules: we keep in tree end user applications and their depends plus haskell-platform. We are keeping all development libs in overlay. In overlay we to now have 'stable-' 'testing' partitioning, and all packages are marked as testing.
- Support for the haskell-ecosystem in the Gentoo.
- Stabilizing Haskell Platform in Gentoo tree: bug tracker.
- Fixing USE flags metadata entries in overlay.
- Fix packages test in overlay.
- Ebuilds contribution. For more information see overlay documentation
- Contribute to project programs (hackport, haskell-updater, etc.)
- [easy-to-hard] Add packages requested by people to the overlay. HackPort is a nice tool to do it fast.
- [easy-to-moderate] Keep up-to-date upstream versions in overlay, fix depends broken by package updates and upstream fixes. HackPort can help in tracking: hackport status --from-hackage.
- Improve HackPort tool.
- [easy] Some packages are patched on top of upstream. Ideally they should not :]. Your goal is to push nice patches upstream. Haskell world is very eager in getting feedback, so it's a source of pleasure to work with upstream!
- Some code snippets on scanning the tree for such patched packages:
- [moderate] Some packages have their testuites, but ebuilds don't utilize it or have tests blocked. Blocked tests are easy to find with git grep RESTRICT.
- Here is some notes to say: upstream tests are sometimes unportable hacks, so your aim is to rework ill written testsuites by using Cabal recently introduced testing interface and/or using libraries helping in testing (HUnit, QuickCheck, test-framework-*). See tests in darcs as an advanced example.
- [moderate] Get ghc bugs fixed upstream, send patches
- [easy-to-moderate] Help fix & improve cabal. Improve cabal-install.
- [easy] Write a program to check for build errors of package in overlay.
- [easy] run repoman full on the overlay and provide fixes for found QA notices.