git.iko.soy/typeable/cabal2nix
on master help sign in
Merge pull request #190 from bennofs/fix-pkg-lookup-shadowed
c9c8583Peter Simons
src/Cabal2Nix/Normalize.hs+1
@@ -26,6 +26,7 @@ normalize drv = drv
26normalizeBuildInfo :: PackageName -> BuildInfo -> BuildInfo
26normalizeBuildInfo :: PackageName -> BuildInfo -> BuildInfo
27normalizeBuildInfo (PackageName pname) bi = bi
27normalizeBuildInfo (PackageName pname) bi = bi
28 & haskell . contains (Identifier pname) .~ False
28 & haskell . contains (Identifier pname) .~ False
29+ & tool . contains (Identifier pname) .~ False
29 & tool %~ normalizeNixBuildTools . Set.filter (\(Identifier n) -> n `notElem` coreBuildTools)
30 & tool %~ normalizeNixBuildTools . Set.filter (\(Identifier n) -> n `notElem` coreBuildTools)
30
31
31 {-
32 {-
src/hackage2nix.hs+3−4
@@ -206,9 +206,8 @@ generatePackageSet config hackage nixpkgs = do
206
206
207 formatOverride :: Attribute -> Maybe Path -> Doc
207 formatOverride :: Attribute -> Maybe Path -> Doc
208 formatOverride n Nothing = space <> text n <> text " = null;" -- missing attribute
208 formatOverride n Nothing = space <> text n <> text " = null;" -- missing attribute
209− formatOverride n (Just []) -- Haskell package:
209+ formatOverride n (Just []) = (text " inherit" <+> text n) <> semi
210− | n == name = formatOverride n Nothing -- refers to a missing system library
210+ formatOverride _ (Just ["self"]) = mempty -- callPackage finds this package already
211− | otherwise = mempty -- found by callPackage
212 formatOverride n (Just p) = (text " inherit" <+> parens (text (intercalate "." p)) <+> text n) <> semi
211 formatOverride n (Just p) = (text " inherit" <+> parens (text (intercalate "." p)) <+> text n) <> semi
213
212
214 overrides :: Doc
213 overrides :: Doc
@@ -238,7 +237,7 @@ generatePackageSet config hackage nixpkgs = do
238
237
239resolveHackageThenNixpkgsAttribute :: Nixpkgs -> Hackage -> Attribute -> Maybe Path
238resolveHackageThenNixpkgsAttribute :: Nixpkgs -> Hackage -> Attribute -> Maybe Path
240resolveHackageThenNixpkgsAttribute nixpkgs hackage name
239resolveHackageThenNixpkgsAttribute nixpkgs hackage name
241− | Just _ <- Map.lookup name hackage = Just []
240+ | Just _ <- Map.lookup name hackage = Just ["self"]
242 | p@(Just _) <- resolveNixpkgsAttribute nixpkgs name = p
241 | p@(Just _) <- resolveNixpkgsAttribute nixpkgs name = p
243 | otherwise = Nothing
242 | otherwise = Nothing
244
243