Safe Haskell | None |
---|---|
Language | Haskell2010 |
Wrappers around the debianization function to perform various tasks - output, describe, validate a debianization, run an external script to produce a debianization.
- finishDebianization :: forall m. (MonadIO m, Functor m) => StateT CabalInfo m ()
- runDebianizeScript :: [String] -> IO Bool
- writeDebianization :: (MonadIO m, Functor m) => DebianT m ()
- describeDebianization :: (MonadIO m, Functor m) => DebianT m String
- compareDebianization :: DebInfo -> DebInfo -> [String]
- validateDebianization :: DebInfo -> DebInfo -> ()
- performDebianization :: CabalT IO () -> IO ()
Documentation
finishDebianization :: forall m. (MonadIO m, Functor m) => StateT CabalInfo m () Source #
Depending on the options in atoms
, either validate, describe,
or write the generated debianization.
runDebianizeScript :: [String] -> IO Bool Source #
Run the script in debian/Debianize.hs
with the given command
line arguments. Returns True
if the script exists and succeeds.
In this case it may be assumed that a debianization was created (or
updated) in the debian subdirectory of the current directory. In
this way we can include a script in a package to produce a
customized debianization more sophisticated than the one that would
be produced by the cabal-debian executable. An example is included
in the debian subdirectory of this library.
writeDebianization :: (MonadIO m, Functor m) => DebianT m () Source #
Write the files of the debianization d
to ./debian
describeDebianization :: (MonadIO m, Functor m) => DebianT m String Source #
Return a string describing the debianization - a list of file names and their contents in a somewhat human readable format.
compareDebianization :: DebInfo -> DebInfo -> [String] Source #
Compare the old and new debianizations, returning a string describing the differences.
validateDebianization :: DebInfo -> DebInfo -> () Source #
Make sure the new debianization matches the existing debianization in several ways - specifically, version number, and the names of the source and binary packages. Some debian packages come with a skeleton debianization that needs to be filled in, this can be used to make sure the debianization we produce is usable.