public static function initializeApplication(Event $event): void
    {
        $webDir = self::getWebDir($event);

        static::purgeCacheFolder();
        static::addAppDirectory();
        static::executeCommand('contao:install-web-dir', $event);
        static::executeCommand('cache:clear --no-warmup', $event);
        static::executeCommand('cache:warmup', $event);
        static::executeCommand(sprintf('assets:install %s --symlink --relative', $webDir), $event);
        static::executeCommand(sprintf('contao:install %s', $webDir), $event);
        static::executeCommand(sprintf('contao:symlinks %s', $webDir), $event);

        $event->getIO()->write('<info>Done! Please open the Contao install tool and make sure the database is up-to-date.</info>');
    }