git.iko.soy/typeable/cabal2nix
on master help sign in
Re-defined readVersion with 'simpleParse'.
59e4330Peter Simons
src/Distribution/NixOS/Derivation/Cabal.hs+1−7
@@ -85,7 +85,7 @@ parseDerivation buf
85 , noHaddock <- buf `regsubmatch` "noHaddock *= *(true|false) *;"
85 , noHaddock <- buf `regsubmatch` "noHaddock *= *(true|false) *;"
86 = Just $ MkDerivation
86 = Just $ MkDerivation
87 { pname = name
87 { pname = name
88− , version = readVersion vers
88+ , version = maybe (error $ "cannot parse version " ++ show vers) id (simpleParse vers)
89 , sha256 = sha
89 , sha256 = sha
90 , isLibrary = False
90 , isLibrary = False
91 , isExecutable = False
91 , isExecutable = False
@@ -109,9 +109,3 @@ regsubmatch :: String -> String -> [String]
109regsubmatch buf patt = let (_,_,_,x) = f in x
109regsubmatch buf patt = let (_,_,_,x) = f in x
110 where f :: (String,String,String,[String])
110 where f :: (String,String,String,[String])
111 f = match (makeRegexOpts compExtended execBlank patt) buf
111 f = match (makeRegexOpts compExtended execBlank patt) buf
112−
113−readVersion :: String -> Version
114−readVersion str =
115− case [ v | (v,[]) <- readP_to_S parseVersion str ] of
116− [ v' ] -> v'
117− _ -> error ("invalid version specifier " ++ show str)