cabal-rpm alternatives and similar packages
Based on the "cabal" category.
Alternatively, view cabal-rpm alternatives based on common mentions on social networks and blogs.
cabal-dev9.4 0.0 cabal-rpm VS cabal-devA wrapper program around cabal and cabal-install that maintains sandboxed build environments.
cabal-helper8.9 0.0 cabal-rpm VS cabal-helperGive Haskell development tools access to Cabal project environment.
cabal-bounds8.5 0.0 cabal-rpm VS cabal-boundsSet the version bounds of dependencies in a cabal file
cabal-meta8.4 0.0 cabal-rpm VS cabal-metaavoid cabal dependency hell by installing all your cabal dependencies at the same time
cabal-doctest8.4 0.0 cabal-rpm VS cabal-doctestA Setup.hs helper for doctest running
cabal-macosx8.1 0.0 cabal-rpm VS cabal-macosxHaskell Cabal services for Mac OS X
cabal-src8.0 0.0 cabal-rpm VS cabal-srcHaskell cabal installation tool
cabal-dependency-licensesCompose a list of a project's transitive dependencies with their licenses
cabal-uninstall7.1 0.0 cabal-rpm VS cabal-uninstallVery simple Haskell script to uninstall cabal packages
cabal-cargs6.5 0.0 cabal-rpm VS cabal-cargsExtract the compiler arguments from a cabal file.
cabal-file-th6.0 0.0 cabal-rpm VS cabal-file-thTemplate haskell function to bring cabal file fields into your source.
cabal-constraints5.5 0.0 cabal-rpm VS cabal-constraintsRepeatable builds for cabalized Haskell projects
cabal-ghc-dynflags4.6 0.0 cabal-rpm VS cabal-ghc-dynflagsConveniently configure GHC's dynamic flags for use with Cabal projects
cabal-nirvana4.2 0.0 cabal-rpm VS cabal-nirvanaAvoid Cabal dependency hell by constraining to known good versions.
cabal-lenses4.2 0.0 cabal-rpm VS cabal-lensesLenses and traversals for the Cabal library.
cabal-ghci4.0 0.0 cabal-rpm VS cabal-ghcicabal-ghci
cabal-info3.8 0.0 cabal-rpm VS cabal-infoRead information from cabal files
Clean code begins in your IDE with SonarLint
Do you think we are missing an alternative of cabal-rpm or a related project?
cabal-rpm is a tool for RPM packaging of Haskell Cabal-based packages. Firstly it creates RPM spec files from the .cabal files of Haskell packages. It can also install build dependencies using dnf/yum, it prefers package versions from Stackage, and can build and install packages and their dependencies recursively as rpm packages. It can also update packages and refresh spec files.
Cabal-rpm was originally created by Bryan O'Sullivan (see README.orig) to create spec files, and was later updated by Jens Petersen to work with current Cabal and Fedora Packaging Guidelines replacing cabal2spec, and extended with many new features. It is used by Fedora and earlier by OpenSuSE. It is licensed under the terms of the GPL version 3 (see the COPYING file).
cabal-rpm assumes you are using ghc-rpm-macros for Haskell RPM packaging. It currently needs Cabal 1.10 or later to build (ie ghc 7 or later).
The package is on Hackage. If you have cabal-install (part of Haskell Platform) you can install simply with
$ cabal install cabal-rpm
You can also install it with
stack install cabal-rpm.
You can also build and install it from source as normal by running
To create a
.spec file for a package:
$ cabal-rpm spec somepkg
By default it will use the package version in Stackage LTS or else the latest version from Hackage.
You can also specify a version if you wish
$ cabal-rpm spec somepkg-0.1
which will create a spec file for it.
cabal-rpm also works in an rpm package source directory or inside the source of a Haskell package:
$ cabal-rpm spec
.spec files in the current dir
and if a
.spec file already exists it will append
to the generated filename to avoid overwriting an existing file.
$ cabal-rpm install [pkg][-ver]
will yum/dnf install any available missing dependencies and build rpms of the package. Additionally it will recursively package and install missing Haskell dependencies.
$ cabal-rpm diff
diffs the current spec file with a freshly generated spec file.
$ cabal-rpm update
updates the package to the latest Hackage version
$ cabal-rpm refresh
updates the spec file to the current cabal-rpm packaging.
There are more commands: prep, builddep, depends, requires, missingdeps. See the manpage or help output for more details.
The latest source code is available from: https://github.com/juhp/cabal-rpm
More features are planned and patches welcome. See the [TODO](TODO) file for more details.
*Note that all licence references and agreements mentioned in the cabal-rpm README section above are relevant to that project's source code only.