manifest can modify, we should not rely on it.
The only reliable source about package type is the package itself