Run apt-cache policy with LANG=C.
This commit is contained in:
parent
1906500030
commit
c9d09afafa
|
@ -21,6 +21,7 @@ propellor (1.1.0) UNRELEASED; urgency=medium
|
|||
This is more robust.
|
||||
* propellor.debug can be set in the git config to enable more persistent
|
||||
debugging output.
|
||||
* Run apt-cache policy with LANG=C.
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Sat, 22 Nov 2014 00:12:35 -0400
|
||||
|
||||
|
|
|
@ -193,13 +193,15 @@ isInstalled p = (== [True]) <$> isInstalled' [p]
|
|||
-- even vary. If apt does not know about a package at all, it will not
|
||||
-- be included in the result list.
|
||||
isInstalled' :: [Package] -> IO [Bool]
|
||||
isInstalled' ps = catMaybes . map parse . lines
|
||||
<$> readProcess "apt-cache" ("policy":ps)
|
||||
isInstalled' ps = catMaybes . map parse . lines <$> policy
|
||||
where
|
||||
parse l
|
||||
| "Installed: (none)" `isInfixOf` l = Just False
|
||||
| "Installed: " `isInfixOf` l = Just True
|
||||
| otherwise = Nothing
|
||||
policy = do
|
||||
environ <- addEntry "LANG" "C" <$> getEnvironment
|
||||
readProcessEnv "apt-cache" ("policy":ps) (Just environ)
|
||||
|
||||
autoRemove :: Property
|
||||
autoRemove = runApt ["-y", "autoremove"]
|
||||
|
|
Loading…
Reference in New Issue