let parse_pkg_req suite s =
try
if Str.string_match distro_re s 0 then
`PkgDst(
Packages.parse_name(Format822.dummy_loc,Str.matched_group 1 s),
Str.matched_group 2 s
)
else if Str.string_match version_re s 0 then
`PkgVer(
Packages.parse_name (Format822.dummy_loc,Str.matched_group 1 s),
Packages.parse_version (Format822.dummy_loc,Str.matched_group 2 s)
)
else begin match suite with
|None -> parse_pkg_only s
|Some suite -> `PkgDst(s,suite)
end
with Not_found -> fatal "Bad apt package in request '%s'" s