Safe Haskell | None |
---|
- cabalDependencies :: Atoms -> [Dependency]
- selfDependency :: PackageIdentifier -> Dependency_ -> Bool
- allBuildDepends :: Atoms -> [Dependency] -> [Dependency] -> [Dependency] -> [String] -> [Dependency_]
- debDeps :: DebType -> Atoms -> Control' String -> Relations
- putBuildDeps :: Atoms -> Atoms
- dependencies :: Atoms -> PackageType -> PackageName -> VersionRange -> Relations
- debianName :: PkgName name => Atoms -> PackageType -> PackageIdentifier -> name
- debianName' :: PkgName name => Maybe VersionSplits -> PackageType -> PackageIdentifier -> name
- debNameFromType :: Control' String -> DebType -> Maybe BinPkgName
- getRulesHead :: Atoms -> Text
- filterMissing :: Atoms -> [[Relation]] -> [[Relation]]
- binaryPackageDeps :: BinPkgName -> Atoms -> [[Relation]]
- binaryPackageConflicts :: BinPkgName -> Atoms -> [[Relation]]
- binaryPackageProvides :: BinPkgName -> Atoms -> [[Relation]]
- binaryPackageReplaces :: BinPkgName -> Atoms -> [[Relation]]
Documentation
cabalDependencies :: Atoms -> [Dependency]Source
selfDependency :: PackageIdentifier -> Dependency_ -> BoolSource
In cabal a self dependency probably means the library is needed while building the executables. In debian it would mean that the package needs an earlier version of itself to build, so we use this to filter such dependencies out.
allBuildDepends :: Atoms -> [Dependency] -> [Dependency] -> [Dependency] -> [String] -> [Dependency_]Source
Debian packages don't have per binary package build dependencies, so we just gather them all up here.
putBuildDeps :: Atoms -> AtomsSource
dependencies :: Atoms -> PackageType -> PackageName -> VersionRange -> RelationsSource
Turn a cabal dependency into debian dependencies. The result needs to correspond to a single debian package to be installed, so we will return just an OrRelation.
debianName :: PkgName name => Atoms -> PackageType -> PackageIdentifier -> nameSource
debianName' :: PkgName name => Maybe VersionSplits -> PackageType -> PackageIdentifier -> nameSource
Function that applies the mapping from cabal names to debian names based on version numbers. If a version split happens at v, this will return the ltName if < v, and the geName if the relation is >= v.
debNameFromType :: Control' String -> DebType -> Maybe BinPkgNameSource
Given a control file and a DebType, look for the binary deb with the corresponding suffix and return its name.
getRulesHead :: Atoms -> TextSource
filterMissing :: Atoms -> [[Relation]] -> [[Relation]]Source
binaryPackageDeps :: BinPkgName -> Atoms -> [[Relation]]Source
binaryPackageConflicts :: BinPkgName -> Atoms -> [[Relation]]Source
binaryPackageProvides :: BinPkgName -> Atoms -> [[Relation]]Source
binaryPackageReplaces :: BinPkgName -> Atoms -> [[Relation]]Source