cabal-rpm: RPM package creator for Haskell Cabal-based packages

[ distribution, gpl, program ] [ Propose Tags ]

This package generates RPM packages from Haskell Cabal packages.

Recent changes:

  • 0.8.5: fix repoquery when a package update exists for C lib; make cblrpm-diff quieter

  • 0.8.4: use repoquery for C deps, pkgconfig quoting, devel provides static

  • 0.8.3: only install missing dependencies, word-wrap generic descriptions

  • 0.8.2: wrap after sentences near end of line, handle pkg-ver arg, sort deps

  • 0.8.1: word wrapping of descriptions

  • 0.8.0: new simpler revised Fedora packaging; check external commands available

See https://github.com/juhp/cabal-rpm/blob/master/NEWS for more history and details.


[Skip to Readme]

Downloads

Versions [RSS] 0.2, 0.2.1, 0.2.2, 0.2.3, 0.2.4, 0.2.5, 0.3.1, 0.3.2, 0.3.3, 0.4, 0.5, 0.5.1, 0.6.0, 0.6.1, 0.6.2, 0.6.3, 0.6.4, 0.6.5, 0.6.6, 0.7.0, 0.7.1, 0.8.0, 0.8.1, 0.8.2, 0.8.3, 0.8.4, 0.8.5, 0.8.6, 0.8.7, 0.8.8, 0.8.9, 0.8.10, 0.8.11, 0.9, 0.9.1, 0.9.2, 0.9.3, 0.9.4, 0.9.5, 0.9.5.1, 0.9.6, 0.9.7, 0.9.8, 0.9.9, 0.9.10, 0.9.11, 0.10.0, 0.10.1, 0.11, 0.11.1, 0.11.2, 0.12, 0.12.1, 0.12.2, 0.12.3, 0.12.4, 0.12.5, 0.12.6, 0.13, 0.13.1, 0.13.2, 0.13.3, 1.0.1, 1.0.2, 1.0.3, 2.0.0, 2.0.1, 2.0.2, 2.0.3, 2.0.4, 2.0.5, 2.0.5.1, 2.0.6, 2.0.7, 2.0.8, 2.0.9, 2.0.10, 2.0.11, 2.0.11.1, 2.1.0, 2.1.1, 2.1.2, 2.1.3, 2.1.4, 2.1.5 (info)
Change log NEWS
Dependencies base (<5), Cabal (>1.10), directory, filepath, old-locale, process, regex-compat, time, unix [details]
License GPL-3.0-only
Copyright 2007-2008 Bryan O'Sullivan <bos@serpentine.com>, 2012-2013 Jens Petersen <petersen@fedoraproject.org>
Author Bryan O'Sullivan <bos@serpentine.com>, Jens Petersen <juhp@community.haskell.org>
Maintainer Jens Petersen <petersen@fedoraproject.org>
Category Distribution
Home page https://github.com/juhp/cabal-rpm
Bug tracker https://github.com/juhp/cabal-rpm/issues
Source repo head: git clone https://github.com/juhp/cabal-rpm
Uploaded by JensPetersen at 2013-09-29T07:04:34Z
Distributions Fedora:2.1.3, LTSHaskell:2.1.5, NixOS:2.1.5, Stackage:2.1.5
Reverse Dependencies 1 direct, 0 indirect [details]
Executables cblrpm
Downloads 60511 total (124 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Successful builds reported [all 1 reports]

Readme for cabal-rpm-0.8.5

[back to package description]

Build Status

cabal-rpm

cabal-rpm creates RPM spec files for packaging Haskell Cabal-based packages.

This version updates the older cabal-rpm-0.5.1 package by Bryan O'Sullivan (see README.orig) to work with current Cabal and also updated to current RPM packaging conventions defined until now by cabal2spec which is used by Fedora and also OpenSuSE. It is licensed under the terms of the GPL version 3 (see the COPYING file). It is designed to replace the simple cabal2spec tool shell script made by the maintainer.

You can build from source as normal by running cabal install or via Hackage with cabal install cabal-rpm.

Requirements

cabal-rpm assumes you are using ghc-rpm-macros for Haskell RPM packaging. It currently needs Cabal 1.10 or later to build (ie ghc7), but it should not be hard to patch it to build at least for ghc-6.12.

Usage

To create a .spec file for a Haskell src package in the current dir:

$ cblrpm spec

or directly on a .cabal file:

$ cblrpm spec path/to/mypkg.cabal

or tarball:

$ cblrpm spec path/to/mypkg-version.tar.gz

or on a package source dir:

$ cblrpm spec mypkg-0.1

You can also package directly from hackage:

$ cblrpm build somepkg

or

$ cblrpm build somepkg-0.1

will unpack the (latest) 'somepkg' package from hackage (if the dir does not exist, otherwise it uses the existing dir), create a spec file for it, and build it.

cblrpm always creates .spec files in the current dir and if a .spec file already exists it will append .cblrpm to the generated filename to avoid overwriting an existing file.

Development

The latest source code is available from: https://github.com/juhp/cabal-rpm

Plans

More features are planned and patches welcome, including recursive packaging. See the TODO file for more details.