# Manual installer to vtlib mapping

| Legacy installer responsibility | Canonical package implementation |
|---|---|
| Create vtiger_marvelpbx and vtiger_marvelpbxcf | manifest.xml table declarations |
| Register entity module | Standard vtlib import; no extension type is declared |
| Place module under Tools | Manifest parent plus idempotent postinstall, postupdate, and enabled normalization |
| Create vtiger_marvelpbx_view | Idempotent lifecycle view recreation |
| Copy runtime module/layout/language files | VTiger-relative src/ payload |
| Clear runtime cache | Left to standard VTiger package import/administration |
| Grant module access to profiles | Deliberately omitted; administrators grant least-privilege access |
| Remove reporting view | module.preuninstall drops only the view |

The legacy installer is evidence, not executable package content. Lifecycle operations use parameterized queries for metadata. Uninstall does not delete PBXManager, crmentity, or the MarvelPBX entity tables.
