module Debian.Debianize.Details
( debianDefaults
) where
import Control.Lens
import Data.Map as Map (insert)
import Data.Version (Version(Version))
import Debian.Debianize.DebianName (mapCabal, splitCabal)
import Debian.Debianize.Monad (CabalT)
import Debian.Debianize.CabalInfo as A (epochMap, debInfo)
import Debian.Debianize.DebInfo as D (execMap)
import Debian.Debianize.VersionSplits (DebBase(DebBase))
import Debian.Relation (BinPkgName(BinPkgName), Relation(Rel))
import Distribution.Package (PackageName(PackageName))
debianDefaults :: Monad m => CabalT m ()
debianDefaults =
do
A.epochMap %= Map.insert (PackageName "HaXml") 1
A.epochMap %= Map.insert (PackageName "HTTP") 1
mapM_ (\name -> (A.debInfo . D.execMap) %= Map.insert name [[Rel (BinPkgName name) Nothing Nothing]])
["ghc", "happy", "alex", "hsx2hs"]
mapCabal (PackageName "parsec") (DebBase "parsec3")
mapCabal (PackageName "QuickCheck") (DebBase "quickcheck2")
mapCabal (PackageName "gtk2hs-buildtools") (DebBase "gtk2hs-buildtools")
mapCabal (PackageName "haskell-src-exts") (DebBase "src-exts")
mapCabal (PackageName "haskell-src-meta") (DebBase "src-meta")
mapCabal (PackageName "Cabal") (DebBase "cabal")
mapCabal (PackageName "happstack-authenticate") (DebBase "happstack-authenticate")
splitCabal (PackageName "happstack-authenticate") (DebBase "happstack-authenticate-0") (Version [2] [])