haskell-updater 1.1.2.0 → 1.1.3.0
raw patch · 2 files changed
+24/−9 lines, 2 files
Files
Distribution/Gentoo/PkgManager.hs view
@@ -36,6 +36,8 @@ data PkgManager = Portage | PkgCore | Paludis+ | Cave -- alternate package manager that comes with+ -- paludis; will eventually replace paludis | InvalidPM String | CustomPM String deriving (Eq, Ord, Show, Read)@@ -71,6 +73,7 @@ pmNameMap = M.fromList [ ("portage", Portage) , ("pkgcore", PkgCore) , ("paludis", Paludis)+ , ("cave", Cave) ] pmNameMap' :: Map PkgManager String@@ -95,21 +98,27 @@ pmCommand Portage = "emerge" pmCommand PkgCore = "pmerge" pmCommand Paludis = "paludis"+pmCommand Cave = "cave" pmCommand (CustomPM cmd) = cmd pmCommand (InvalidPM _) = undefined -defaultPMFlags :: PkgManager -> [String]-defaultPMFlags Portage = ["--oneshot", "--keep-going"]-defaultPMFlags PkgCore = ["--deep", "--oneshot", "--ignore-failures"]-defaultPMFlags Paludis = [ "--install", "--preserve-world"- , "--continue-on-failure if-independent"]-defaultPMFlags CustomPM{} = []-defaultPMFlags (InvalidPM _) = undefined+defaultPMFlags :: PkgManager -> [String]+defaultPMFlags Portage = ["--oneshot", "--keep-going"]+defaultPMFlags PkgCore = ["--deep", "--oneshot", "--ignore-failures"]+defaultPMFlags Paludis = [ "--install", "--preserve-world"+ , "--continue-on-failure if-independent"]+ -- Here, --execute will be overridden by+ -- --no-execute when the --pretend option+ -- is set.+defaultPMFlags Cave = [ "resolve", "--execute", "--preserve-world"+ , "--continue-on-failure if-independent"]+defaultPMFlags CustomPM{} = []+defaultPMFlags (InvalidPM _) = undefined buildCmd :: PkgManager -> [PMFlag] -> [Package] -> String buildCmd pm fs ps = unwords $ pmCommand pm : fs' ++ ps' where- fs' = mapMaybe (flagRep pm) fs ++ defaultPMFlags pm+ fs' = defaultPMFlags pm ++ mapMaybe (flagRep pm) fs ps' = map printPkg ps -- -----------------------------------------------------------------------------@@ -124,6 +133,7 @@ flagRep Portage = portagePMFlag flagRep PkgCore = pkgcorePMFlag flagRep Paludis = paludisPMFlag+flagRep Cave = cavePMFlag flagRep CustomPM{} = const Nothing -- Can't tell how flags would work. flagRep (InvalidPM _) = undefined @@ -140,3 +150,8 @@ paludisPMFlag PretendBuild = Just "--pretend" paludisPMFlag UpdateDeep = Just "--dl-upgrade always" paludisPMFlag UpdateAsNeeded = Just "--dl-upgrade as-needed --dl-new-slots as-needed"++cavePMFlag :: PMFlag -> Maybe String+cavePMFlag PretendBuild = Just "--no-execute"+cavePMFlag UpdateDeep = Just "--complete"+cavePMFlag UpdateAsNeeded = Just "--lazy"
haskell-updater.cabal view
@@ -1,6 +1,6 @@ Name: haskell-updater Homepage: http://haskell.org/haskellwiki/Gentoo#haskell-updater-Version: 1.1.2.0+Version: 1.1.3.0 Synopsis: Rebuild Haskell dependencies in Gentoo Description: haskell-updater rebuilds Haskell packages on Gentoo after a GHC upgrade or a dependency upgrade.